Questo errore si verifica ogni volta che provo a lavorare con sudo
. Ho cambiato i permessi di /var/
cartella in 777
e penso che questo causi l'errore. Per favore aiutami a recuperare un sudo
funzionante e /var
.
Migliore risposta
Hai un grosso problema, ma non proprio per i motivi qui esposti.
Modifica dei permessi su tutto /var
renderà probabile che non li riavrai tutti correttamente, perché non saprai quali autorizzazioni ogni dovrebbe avere . Potresti avere problemi in seguito. A seconda delle circostanze, i tuoi problemi potrebbero essere legati alla sicurezza.
Pertanto, potresti prendere in considerazione la possibilità di reinstallare Ubuntu. In alternativa, puoi provare a ottenere le autorizzazioni dai file in un altro sistema simile e ininterrotto. I permessi sono generalmente gli stessi. Di solito. Un problema più serio è che è probabile che il tuo sistema abbia dei file in /var
che non sono presenti sull'altro, quindi probabilmente non tutti i permessi saranno corretti.
Esecuzione di attività amministrative su un sistema desktop senza un sudo
funzionante di solito è banalmente facile, però.
Modificare le autorizzazioni quando sai come dovrebbero essere è facile e raramente richiede l'avvio in modalità di ripristino o da un CD live. Questo perché, sebbene non sia ampiamente noto, le versioni desktop di Ubuntu (e la maggior parte degli altri sistemi operativi GNU/Linux in questi giorni) ne hanno due modalità predisposte per svolgere compiti amministrativi:
sudo
, che non funzionerà perché richiede le autorizzazioni in/var
per essere corretto.- PolicyKit, che tende a tollerare maggiormente autorizzazioni errate e di solito funziona ancora.
Mentre tendiamo a pensare a sudo
come il modo in cui esegui le azioni come root
su Ubuntu, in realtà PolicyKit è il modo in cui la maggior parte, anche se non tutte, le utility grafiche diventano root
. (È così da alcuni anni ormai.)
In realtà, l'esecuzione manuale di un programma grafico con PolicyKit a volte è un'impresa significativa poiché le applicazioni grafiche devono disporre di file di configurazione speciali affinché PolicyKit sia disposto a eseguirli. Ma applicazioni terminali non farlo — è facile eseguire un comando basato su testo con PolicyKit come con sudo
.
Per farlo, digita pkexec
dove altrimenti digiteresti sudo
. (Non accettano tutte le stesse opzioni della riga di comando, ma la sintassi più comune per sudo
è sudo command
e pkexec
funziona perfettamente al suo posto.)
Quindi, perché sudo
è rotto, non puoi eseguire:
sudo chmod 0755 /mnt/var/lib/sudo
sudo chmod 0700 /mnt/var/lib/sudo/<username>
Ma tu puoi corri:
pkexec chmod 0755 /mnt/var/lib/sudo
pkexec chmod 0700 /mnt/var/lib/sudo/<username>
È un buon inizio e probabilmente farà sudo
lavorare di nuovo. (Non risolverà tutti gli altri file in /var
, però.)
Situazioni correlate (ma, nella maggior parte dei casi, non identiche) in cui pkexec
è utile:
‣ Come modificare un file /etc/sudoers non valido? Genera un errore e non mi consente di modificare di nuovo per risolverlo
‣ ha bloccato accidentalmente l'accesso a sudoers.d durante il tentativo di modificare la configurazione di ushare
‣ 'sudo' non funziona dopo aver modificato i permessi di '/ directory usr'
‣ Come correggere sudo dopo "chmod -R 777 /usr/bin"?, errore sudo, è la modalità 0777, dovrebbe essere 0440,
Come riparare "sudo:/etc/sudoers è modalità 0640, dovrebbe essere 0440?"
‣ L'installazione di ZFS ha modificato il mio file sudoers
‣ La password non funziona per sudo ("Autenticazione non riuscita")
‣ Perché non funziona nulla dopo aver modificato casualmente alcuni permessi di file?
‣ modificato il permesso di /etc in oneiric (ubuntu11.10) usando "sudo chmod 665 /etc" non posso usare sudo ora
‣ Come si eseguono specifici comandi sudo senza password? (solo se qualcosa va storto)
‣ Non riesco a scrivere /etc/sudoers dal live CD di Ubuntu (solo se qualcosa va storto)