Edytowałem /etc/sudoers
plik i zapisałem go, ale zawiera błąd składniowy. Teraz nie mogę, sudo vim /etc/sudoers
ponieważ sudo uważa, że plik sudoers jest nieprawidłowy.
Jak mogę to naprawić?
Edytowałem /etc/sudoers
plik i zapisałem go, ale zawiera błąd składniowy. Teraz nie mogę, sudo vim /etc/sudoers
ponieważ sudo uważa, że plik sudoers jest nieprawidłowy.
Jak mogę to naprawić?
Odpowiedzi:
Uruchom system w trybie pojedynczym, a następnie edytuj.
Nigdy nie należy edytować pliku sudoers bezpośrednio. Użyj visudo
- ochroni cię przed tymi błędami składniowymi w przyszłości.
Aby wyjść z tej sytuacji, uruchom komputer w trybie pojedynczego użytkownika i edytuj plik lub uruchom plik live i uruchom to samo.
Jak zauważono w tym podobnym pytaniu na askubuntu , może to działać dobrze bez konieczności ponownego uruchamiania w trybie pojedynczego użytkownika:
pkexec visudo
Nawiasem mówiąc, jeśli masz hasło roota, po prostu zaloguj się i ustaw je z powrotem tak, jak było.
chmod 0440 / etc / sudoers
Pozwoli to uniknąć uruchamiania systemu w trybie pojedynczego użytkownika lub, co najgorsze, uruchamiania z obrazu na żywo.
W moim przypadku nie było mnie stać na wyłączenie serwera.
Jeśli masz zainstalowany Docker, a użytkownik jest członkiem docker
grupy, możesz łatwo wydostać się z tej marynaty (i niektórych innych) bez konieczności ponownego uruchamiania komputera lub tego, co masz:
$ docker run -it --rm -v '/etc/:/root/host.etc/' debian bash
apt-get update && apt-get install [vim|nano|whatever]
cd ~/host.etc/
exit
pkexec
z jakiegoś powodu jest również niedostępny, zapewnia to alternatywną metodę, bez ponownego uruchamiania, która jest prawie tak szybka i prosta.