Come posso eseguire uno script come amministratore all'interno di un contenitore Windows


14

Sto cercando di installare Windows Enterprise WDK su un'immagine Docker basata su windowsservercore . L'applicazione si installa decomprimendo e l'ho già fatto e ho affidato l'immagine a Docker. Ora devo eseguire uno script che imposta le variabili di ambiente. Secondo le istruzioni di installazione di Enterprise WDK, devo eseguire questo script come amministratore. L'ho fatto direttamente sul mio computer desktop e funziona file. All'interno del Docker Container, l'utente di accesso predefinito è

PS C:\> whoami
user manager\containeradministrator

Ho provato ad abilitare l'account amministratore.

PS C:\> net user administrator /active:yes
The command completed successfully.
PS C:\> net user administrator Pa$$w0rd
The command completed successfully.

Provo ad avviare una shell come amministratore, ma l'utente non cambia.

PS C:\> runas /user:administrator powershell
Enter the password for administrator:
Attempting to start powershell as user "C597C386289A\administrator" ...
PS C:\> whoami
user manager\containeradministrator

E se eseguo il mio script non riesce a impostare nessuno dei valori di ambiente specificati nello script.

Suggerimenti?


2
Sei riuscito a risolvere questo?
fons

1
Potresti avere un problema con UAC , potresti disabilitarlo temporaneamente? Runas come hai scritto non consente l'apertura di un prompt dei comandi con privilegi elevati, vedi qui .
Proverei

1
Come ti connetti al contenitore? RDP? PowerShell remoto?
harrymc,

1
@harrymc Esecuzione del contenitore in modalità interattiva.
Daniel,

1
Poiché l'account amministratore locale è un account molto speciale, potrebbe essere necessario un accesso. Perché non puoi usare un altro account amministratore "normale"?
harrymc,

Risposte:


6

Il tuo problema non è affatto diritti insufficienti. Vedere questo articolo .

Controllo dell'account utente non è disponibile in Server Core, poiché è solo un'interfaccia a riga di comando , non dispone di IE o supporto per le applicazioni utente. Inoltre, per utilizzare UAC con il prompt dei comandi è necessario disporre di Explorer Shell in modo da poter fare clic su Start, fare clic con il pulsante destro del mouse su Prompt dei comandi e selezionare Esegui come amministratore, che ovviamente non è possibile su Server Core.

Stai già eseguendo i comandi come amministratore, altrimenti comandi come

net user administrator Pa$$w0rd

fallirebbe inevitabilmente.

Il tuo problema è qualcos'altro.

Vedi qui . Windows Server Core non è supportato per l'installazione di WDK. Informazioni sull'impostazione delle variabili di ambiente su Server Core vedi questa risposta .

Dovresti dare un'occhiata a quello script e cosa fa effettivamente, se usa i comandi SET o SETX o qualcos'altro e lì puoi trovare un indizio sul perché le variabili non sono state impostate correttamente. È possibile che siano impostati in modo permanente ma non nella finestra corrente.


2
Avevo sostituito i setcomandi con il setxtentativo di eseguire il debug di altri problemi. Questo è ciò che mi ha portato sulla strada del tentativo di ottenere un vero privilegio di amministratore.
Daniel,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.