5 alternative di Windows al comando sudo di Linux

Se hai mai usato Linux o conosci qualcuno che usa Linux , probabilmente hai sentito parlare del comando sudo. Il comando è un componente fondamentale per quasi tutte le distribuzioni Linux e ciò che fa è consentire di eseguire un comando come un utente diverso, in particolare l'utente root. Su alcune distribuzioni Linux , puoi accedere come utente root usando il comando su , ma questo è considerato altamente rischioso e nessuno lo fa mai.

In realtà, è così pericoloso che è disabilitato per impostazione predefinita su distribuzioni Linux come Ubuntu . Invece, devi usare il comando sudo se vuoi eseguire un comando come utente root. Allora che dire di Windows ? Bene(Well) , sfortunatamente, la maggior parte delle persone ha effettuato l'accesso a Windows come amministratori(Administrators) , che è lo stesso dell'utente root in Linux . Tuttavia, Microsoft ha cercato di ridurre gli effetti pericolosi dell'accesso come amministratore abilitando Controllo account utente(User Account Control)  o UAC .

In questo modo, anche se l'utente dispone dei privilegi di amministratore, le applicazioni eseguite con quell'account non erediteranno tali privilegi a meno che non siano autorizzate manualmente dall'utente. Questo aiuta a prevenire che malware e spyware infettino un utente Windows che ha effettuato l'accesso come amministratore(Administrator) .

Quindi, mentre gli utenti Linux hanno il comando sudo, cosa hanno gli utenti Windows ? Esistono(Are) alternative che gli utenti di Windows possono utilizzare per eseguire comandi con privilegi elevati? Esiste un comando sudo per Windows ? In questo articolo parlerò di cinque alternative al comando sudo per gli utenti Windows .

Nota: alcuni di questi strumenti ora sono piuttosto vecchi, quindi potrebbero funzionare o meno con le ultime versioni di Windows. (Note: Some of these tools are quite old now, so they may or may not work with the latest versions of Windows. )

Comando Runas di Windows

Windows ha il comando runas , che è la controparte diretta di sudo su Linux . Utilizzando il comando runas, puoi eseguire uno script, un programma o un comando come utente diverso o come amministratore. La sintassi completa per il comando runas è:

runas [{/profile|/noprofile}] [/env] [/netonly] [/smartcard] [/showtrustlevels] [/trustlevel] /user:UserAccountName program

Se si desidera aprire un prompt dei comandi amministrativo, è possibile digitare quanto segue:

runas /noprofile /user:Administrator cmd

comando runas

/noprofile non caricherà il profilo utente corrente. Puoi rimuoverlo se hai bisogno di accedere alle variabili di ambiente dell'utente. Se si desidera aprire un file di testo utilizzando Blocco note(Notepad) con privilegi di amministratore, è possibile utilizzare questo comando:

runas /user:Administrator "notepad my_file.txt"

Puoi controllare la pagina Technet(Technet page) su runas per ulteriori informazioni su come usarlo.

Si noti che quando si utilizza il comando runas, se si installa un programma o si apportano modifiche alle impostazioni, ecc., le modifiche verranno apportate all'account utente su cui si esegue il comando. Ad esempio, supponiamo che tu abbia l'utente X che è un utente normale e l'utente Y, che è un amministratore. Se accedi a X e quindi esegui un runas utilizzando le credenziali dell'amministratore(Administrator) , verranno apportate modifiche alle impostazioni dell'amministratore , non all'utente X.(Administrator)

Quindi, se installi un'applicazione facendo clic con il pulsante destro del mouse sul file EXE e scegliendo Esegui(Run) come amministratore(Administrator) , verrà installata nel profilo utente amministratore(Administrator) integrato , non in quello a cui hai effettuato l'accesso. Se desideri veri privilegi elevati come sudo senza problemi di profilo, controlla la prossima alternativa di seguito.

Sudo per Windows – Sourceforge

Sudo per Windows(Sudo for Windows) è un programma gratuito che puoi installare che ti darà la stessa esperienza del comando sudo su Linux per Windows . L'unica differenza è che Sudo per Windows "conserva il profilo dell'utente e la proprietà degli oggetti creati"(“preserves the user’s profile and ownership of created objects”) , come affermato dallo sviluppatore. Questo è davvero utile se ti piace utilizzare autorizzazioni elevate per l'installazione di app o apportare modifiche alle posizioni degli utenti come I miei documenti(My Documents) , ecc.

Ti darà i privilegi di amministratore, ma manterrà tutte le modifiche nel profilo corrente invece dell'account con cui stai utilizzando per eseguire il comando. Il programma richiede .NET versione 2.0, che non puoi scaricare singolarmente. Per ottenere 2.0, devi installare .NET Framework 3.5 , che include 2.0.

Una volta installato Sudo per Windows , è necessario aggiungere gli account utente a cui consentire di avere privilegi elevati a un gruppo specifico creato dal programma chiamato Sudoers(udoers) . Fare clic con il pulsante destro del mouse su Risorse del computer(My Computer) o Questo PC e fare clic su Gestisci(Manage) . Quindi espandere Utenti e gruppi(Users and Groups) e fare clic su Gruppi(Groups) . Dovresti vederne uno chiamato Sudoers .

sudore

Fare doppio clic su Sudoer(Sudoers) e fare clic sul pulsante Aggiungi(Add) .

Aggiungi membro

Nella finestra di dialogo successiva, fai clic sul pulsante Avanzate(Advanced) e quindi su Trova ora(Find Now) . Questo elencherà tutti gli utenti e i gruppi sul sistema. Fare doppio clic(Double-click) sull'utente che si desidera aggiungere.

aggiungi utente al gruppo

Ripeti questo passaggio per tutti gli utenti che desideri aggiungere. Quindi fare clic su OK e dovresti vedere i membri elencati nella casella di riepilogo Membri(Members) mostrata sopra. Fai clic su OK(Click OK) e ora dovresti essere in grado di utilizzare la GUI e il comando sudo. Se fai clic con il pulsante destro del mouse su un programma, vedrai l' opzione Sudo .

sudo clic destro

Puoi anche aprire un prompt dei comandi e digitare sudo per eseguire il comando con autorizzazioni elevate.

prompt dei comandi sudo

Nel complesso, è piuttosto elegante e funziona molto bene. Tuttavia, tieni presente che questo particolare programma è davvero utile per avviare(launching) programmi o processi tramite il clic con il pulsante destro del mouse o tramite il prompt dei comandi, ma non è pensato per l'esecuzione di app da riga di comando. Ad esempio, se si desidera eseguire sudo mkdir "c:Program Files ew", questo non funzionerà utilizzando Sudo per Windows . Per quella funzionalità, c'è un altro programma chiamato la stessa cosa, ma da uno sviluppatore diverso. Leggi(Read) sotto.

Sudo per Windows – Luke Sampson

C'è un altro sviluppatore che ha scritto un altro Sudo per Windows(Sudo for Windows) che ti consente di eseguire anche app da riga di comando. Quindi torniamo all'esempio sulla creazione di una nuova cartella in C:Programmi. Non puoi davvero farlo per impostazione predefinita.

powershell mkdir

Sopra sto usando PowerShell , ma riceverai lo stesso errore anche usando il prompt dei comandi. Tuttavia, una volta installato Sudo per Windows , basta aggiungere la parola sudo all'inizio del comando e funziona perfettamente senza errori!

Per installarlo, è necessario aprire PowerShell e quindi digitare i seguenti comandi in ordine:

iex (new-object net.webclient).downloadstring('https://get.scoop.sh')

set-executionpolicy unrestricted -s cu -f

scoop install sudo

Se tutto funziona correttamente, dovresti vedere il seguente output in PowerShell dopo ogni comando:

installa scoop sudo

Questo è tutto! Ora puoi iniziare a digitare i comandi e aggiungere sudo davanti. L'unica cosa fastidiosa di questo programma è che la finestra UAC si apre ancora e devi fare clic su (Yes) per farlo funzionare. Anche con quel leggero fastidio, ne vale la pena.

Elevare

Elevate è un programma che funziona con UAC e non funziona esattamente come sudo. Con Elevate , cambierà l'utente in esecuzione in Administrator come fa il comando runas. Tuttavia, è utile per lavorare nella riga di comando o con file batch.

elevare

Lo scopo principale di elevate non è aggirare l' UAC , ma avviare un processo in uno stato elevato da una shell non elevata e quindi continuare normalmente anche dopo il completamento del comando. Elevate è utile per lo scripting perché non devi preoccuparti di provare a eseguire lo script per intero facendo clic con il pulsante destro del mouse ed eseguendo un prompt dei comandi come processo di amministratore(Administrator) .

Elevation PowerToys per Windows

Per quelli di voi che lavorano molto sulla riga di comando o lavorano con script e file batch, la pagina Elevation PowerToys per Windows(Elevation PowerToys for Windows) ha alcuni strumenti e script utili.

giocattoli elettrici di elevazione

I power toys per l'elevazione dello script(script elevation power toys) sono stati creati per superare gli aspetti frustranti dell'UAC(UAC) quando si tenta di elevare un programma dalla riga di comando o di eseguire script come amministratori.

Si spera(Hopefully) che siano sufficienti strumenti e programmi per farti sentire come se stessi effettivamente utilizzando sudo su Windows . Non esiste un sostituto perfetto per questo, ma ci sono alcune opzioni che si avvicinano. Se usi qualcos'altro per elevare programmi, comandi o script in Windows , faccelo sapere nei commenti. Divertiti!



About the author

Sono un ingegnere informatico con oltre 10 anni di esperienza nel settore del software. Sono specializzato nella creazione e manutenzione di applicazioni software individuali e aziendali, nonché nello sviluppo di strumenti di sviluppo per piccole imprese e grandi organizzazioni. Le mie capacità risiedono nello sviluppo di una solida base di codice, negli strumenti di debug e test e nel lavorare a stretto contatto con gli utenti finali per garantire che le loro applicazioni funzionino perfettamente.



Related posts