Questo tutorial spiega come ripristinare i privilegi sudo a un utente dalla modalità di ripristino su Ubuntu Linux e suoi derivati come Linux Mint, sistemi operativi Pop OS. Ho testato questa guida sul sistema Ubuntu 18.04 LTS. Tuttavia, dovrebbe funzionare anche su altre distribuzioni Linux.
Introduzione
L'altro giorno stavo testando come aggiungere un utente normale al gruppo sudo e rimuovere i privilegi dati per renderlo nuovamente un utente normale su Ubuntu.
Durante il test, ho rimosso il mio utente amministrativo da 'sudo'
gruppo. Come già sai, un utente dovrebbe essere nel gruppo sudo per svolgere qualsiasi attività amministrativa. Ma avevo solo un super utente e ho già tolto i suoi privilegi sudo.
Ogni volta che eseguo un comando con il prefisso sudo, ho riscontrato un errore:"sk non è nel file sudoers. Questo incidente verrà segnalato ".
Non posso svolgere attività amministrative. Non sono riuscito a passare all'utente root usando il comando 'sudo su'. Come già sai, l'utente root è disabilitato per impostazione predefinita in Ubuntu, quindi non posso nemmeno accedere come utente root.
Ti è mai capitato di trovarti in una situazione del genere? Nessun problema! Oggi ti mostrerò come correggere i privilegi sudo interrotti a un utente su un sistema Ubuntu Linux.
Ripristina i privilegi di sudo
Passaggio 1: Avvia il tuo sistema Linux in modalità di ripristino.
Per farlo, riavvia il sistema e tieni premuto il MAIUSC chiave durante l'avvio. Vedrai il menu di avvio di grub. Scegli "Opzioni avanzate per Ubuntu" dall'elenco del menu di avvio.
Nella schermata successiva, scegli "modalità di ripristino" opzione e premi INVIO:
Quindi, scegli "Rilascia nel prompt della shell di root" opzione e premi il tasto INVIO:
Ora sei in modalità di ripristino come utente root.
Passaggio 2: Monta il file system di root in modalità di lettura/scrittura. Per farlo, digita il seguente comando per montare root (/
) file system in modalità lettura/scrittura.
mount -o remount,rw /
Passaggio 3: Ora aggiungi l'utente che hai rimosso da sudo
gruppo.
Nel mio caso, sto aggiungendo l'utente chiamato 'sk'
al sudo
gruppo utilizzando il seguente comando:
adduser sk sudo
Passaggio 4: Quindi, digita exit per tornare al menu di ripristino. Seleziona Riprendi per avviare il tuo sistema Ubuntu.
Premere INVIO per continuare ad accedere in modalità normale:
Passaggio 5: Ora controlla se i privilegi sudo sono stati ripristinati.
Per farlo, digita il seguente comando dal Terminale.
$ sudo -l -U sk
Risultato di esempio:
[sudo] password for sk: Matching Defaults entries for sk on ubuntuserver: env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin User sk may run the following commands on ubuntuserver: (ALL : ALL) ALL
Come vedi nel messaggio sopra, l'utente sk ora può eseguire tutti i comandi con il prefisso sudo. Congratulazioni! Hai ripristinato con successo i privilegi sudo per l'utente.
Ci sono anche altre possibilità per causare sudo interrotto
Tieni presente che in realtà l'ho fatto apposta per mostrarti come ripristinare i privilegi sudo interrotti a un utente. Mi sono rimosso da sudo
group e risolti i privilegi sudo interrotti come descritto sopra.
Non farlo se hai un solo utente sudo. Inoltre, questo metodo funzionerà solo su sistemi con accesso fisico . Se è un server remoto o vps, è molto difficile risolverlo. Potresti aver bisogno dell'aiuto del tuo provider di hosting.
Inoltre, ci sono altre due possibilità per causare sudo interrotto.
- Il
/etc/sudoers
il file potrebbe essere stato modificato. - Tu o qualcuno potreste aver modificato il permesso di
/etc/sudoers
file.
Risolto il problema con sudo rotto in Ubuntu
Se hai fatto una o tutte le cose sopra menzionate e ti sei ritrovato con sudo non funzionante, prova le seguenti soluzioni.
Soluzione 1:
Se hai alterato il contenuto di /etc/sudoers
file, vai alla modalità di ripristino come descritto in precedenza.
Eseguire il backup del /etc/sudoers
esistente file prima di apportare modifiche.
cp /etc/sudoers /etc/sudoers.bak
Quindi, apri /etc/sudoers
file:
visudo
Apporta le modifiche nel file in modo che assomiglino a questa:
# # This file MUST be edited with the 'visudo' command as root. # # Please consider adding local content in /etc/sudoers.d/ instead of # directly modifying this file. # # See the man page for details on how to write a sudoers file. # Defaults env_reset Defaults mail_badpass Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin" # Host alias specification # User alias specification # Cmnd alias specification # User privilege specification root ALL=(ALL:ALL) ALL # Members of the admin group may gain root privileges %admin ALL=(ALL) ALL # Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL # See sudoers(5) for more information on "#include" directives: #includedir /etc/sudoers.d
Dopo aver modificato i contenuti per riflettere in questo modo, premi CTRL+X
e y
per salvare e chiudere il file.
Infine, digita exit
e seleziona Riprendi per avviare il tuo sistema Ubuntu per uscire dalla modalità di ripristino e continuare l'avvio come utente normale.
Ora, prova a utilizzare esegui qualsiasi comando con il prefisso sudo per verificare se i privilegi sudo sono stati ripristinati.
Soluzione 2:
Se hai cambiato il permesso di /etc/sudoers
file, questo metodo risolverà il problema di sudo rotto.
Dalla modalità di ripristino, esegui il comando seguente per impostare l'autorizzazione corretta su /etc/sudoers
file:
chmod 0440 /etc/sudoers
Dopo aver impostato l'autorizzazione corretta per il file, digita exit
e seleziona Riprendi per avviare il tuo sistema Ubuntu in modalità normale. Infine, verifica se riesci a eseguire qualsiasi comando sudo.
Conclusione
In questa guida, abbiamo esaminato le cause di sudo non funzionante e come ripristinare i privilegi sudo a un utente dalla modalità di ripristino in Ubuntu e nei suoi derivati.
Lettura consigliata:
- Come modificare il file di registro di Sudo predefinito in Linux
- Come trovare tutti gli utenti Sudo nel tuo sistema Linux
- Come eseguire comandi particolari senza password Sudo in Linux