Odpowiedzi:
visudosprawdza składnię pliku przed nadpisaniem sudoerspliku.
Jeśli używasz prostego edytora, zepsuj składnię i zapisz ... sudo(prawdopodobnie) przestanie działać, a ponieważ /etc/sudoersjest to modyfikowalne tylko root, utkniesz (chyba że masz inny sposób na uzyskanie roota).
Dodatkowo zapewnia, że zmiany będą jedną operacją atomową. To blokowanie jest ważne, jeśli musisz upewnić się, że nikt inny nie zepsuje twoich starannie przemyślanych zmian w konfiguracji. Do edycji innych plików jako root oprócz tego /etc/sudoersistnieje sudoeditpolecenie, które chroni również przed takimi konfliktami edycji.
sudoa OS X ma narzędzia GNU. Ponieważ sudo zostało po raz pierwszy stworzone jako aplikacja typu open source, prawdopodobnie nie ma powodu, by było ich wiele. sudoi sudoeditto samo polecenie, sudozachowuje się tak, sudo -egdy nazywa się sudoedit. Sądzę, że OS X zapomniał dodać sudoedit -> sudolink, ale nadal powinieneś być w stanie używać sudo -elub dzwonić sudoz ustawionym argumentem argv [0], sudoeditaby uzyskać takie samo zachowanie.
visudodomyślnie używa nano.
sudo vim /etc/sudoersi spartaczę składnię, to nie będę mógł sudo vim /etc/sudoersponownie tego naprawić. W efekcie wszystkie możliwości podniesienia uprawnień za pośrednictwem sudo zostaną utracone, ponieważ system nie będzie mógł przeanalizować pliku.
Ze strony podręcznika visudo:
visudo blokuje plik sudoers przed wieloma jednoczesnymi edycjami, zapewnia podstawowe testy poprawności i sprawdza błędy analizy. Jeśli plik sudoers jest obecnie edytowany, otrzymasz wiadomość, aby spróbować ponownie później.
Sprawdź również tę odpowiedź z błędu serwera .