Jak dodać użytkownika do pliku Sudoers w systemie Mac OS X
Spisu treści:
Zaawansowani użytkownicy mogą potrzebować dodać konto użytkownika do pliku sudoers, co umożliwi temu użytkownikowi uruchamianie niektórych poleceń z uprawnieniami administratora.
Aby znacznie uprościć to, co to oznacza, te nowo uprzywilejowane konta użytkowników będą mogły wykonywać polecenia bez otrzymywania błędów odmowy uprawnień lub konieczności poprzedzania polecenia terminala sudo. Może to być pomocne (lub konieczne) w niektórych złożonych sytuacjach, ale stwarza zagrożenie bezpieczeństwa dla innych, dlatego nie jest to coś, co powinno być przypadkowo zmienione.
Ogólnie rzecz biorąc, większości użytkowników lepiej jest korzystać z konta administratora, używać sudo na podstawie poleceń lub włączać użytkownika root. Niemniej jednak bezpośrednia modyfikacja sudoers ma wiele zastosowań dla zaawansowanych osób z dogłębną znajomością wiersza poleceń i właśnie w tych bardziej złożonych sytuacjach skupimy się na dostosowaniu pliku sudoers w sposób opisany tutaj.
Plik sudoers znajduje się w /etc/sudoers, ale w przeciwieństwie do /etc/hosts i wielu innych plików konfiguracyjnych systemu nie chcesz wskazywać pliku w ogólnym edytorze tekstu, aby go zmodyfikować. Zamiast tego będziesz chciał użyć specjalnego polecenia o nazwie „visudo”, które potwierdza poprawność składni przed zapisaniem dokumentu.
Ważne: Dostosowywanie sudoers nie jest przeznaczone dla większości użytkowników Mac OS X. Tylko zaawansowani użytkownicy, którzy mają ku temu ważny powód, powinni kiedykolwiek modyfikować plik sudoers. Jeśli nie wiesz, co robisz i dlaczego to robisz, nie edytuj pliku sudoers i nie dodawaj żadnych użytkowników do pliku sudoers.Może to stanowić zagrożenie dla bezpieczeństwa lub możesz coś zepsuć.
Dodaj użytkownika do Sudoers w Mac OS X
Dodawanie użytkowników do sudoers wymaga użycia vi, co może być dość mylące, jeśli nie jesteś do tego przyzwyczajony. Dla nieobeznanych omówimy dokładne sekwencje poleceń klawiszy do edytowania, wstawiania i zapisywania pliku w vi, postępuj zgodnie z instrukcjami.
- Uruchom Terminal i wpisz następujące polecenie:
- Za pomocą klawiszy strzałek przejdź do sekcji „Specyfikacja uprawnień użytkownika”, która powinna wyglądać tak:
- Umieść kursor w następnym pustym wierszu poniżej wpisu %admin, a następnie naciśnij klawisz „A”, aby wstawić tekst, a następnie wpisz następujący tekst w nowym wierszu, zastępując „nazwa użytkownika” skrótem użytkownika nazwa konta, któremu chcesz nadać uprawnienia (naciśnij zakładkę pomiędzy nazwą użytkownika a ALL):
- Teraz naciśnij klawisz „ESC”, aby zatrzymać edycję pliku
- Naciśnij klawisz : (dwukropek), a następnie wpisz „wq”, a następnie klawisz Return, aby zapisać zmiany i wyjść z vi
sudo visudo
Specyfikacja uprawnień użytkownika root ALL=(ALL) ALL %admin ALL=(ALL) ALL
nazwa użytkownika ALL=(ALL) ALL
Tak to mniej więcej powinno wyglądać, przykładowy zrzut ekranu pokazuje dodaną nazwę użytkownika „osxdaily”:
Powinieneś być gotowy, możesz pobrać plik sudoers, aby upewnić się, że plik został zmodyfikowany:
cat /etc/sudoers
Użyj cat z grep, aby szybko znaleźć nazwę użytkownika, jeśli nie chcesz przeglądać całego pliku:
cat /etc/sudoers | grep nazwa użytkownika
Teraz, gdy „nazwa użytkownika” została dodana do pliku sudoers, powinieneś zacząć.
Rozwiązywanie problemu z błędem „/etc/sudoers zajęty, spróbuj ponownie później”
Jeśli próbujesz zmodyfikować sudoers i pojawia się błąd „visudo: /etc/sudoers zajęty, spróbuj ponownie później”, zwykle oznacza to, że plik jest już otwarty przez innego użytkownika lub przez wypadku lub nieprawidłowego zamknięcia visudo. Jeśli korzystasz z komputera z wieloma użytkownikami, przed podjęciem dalszych działań skonsultuj się z innymi użytkownikami, ale generalnie nie powinno to zdarzać się często na komputerze z jednym użytkownikiem. Ważne jest, aby je rozróżnić, ponieważ jeśli schrzanisz plik sudoers, możesz znaleźć się w świecie frustracji, problemów i ostatecznego przywrócenia systemu operacyjnego (lub pliku sudoers) z kopii zapasowych, których rozwiązanie wykracza poza zakres tego artykułu .
Na komputerach Mac z jednym użytkownikiem ten błąd „sudoers busy” może wystąpić po wyjściu z aplikacji Terminal bez zamykania vi, w przypadku awarii terminala lub systemu Mac OS X lub gdy plik jest aktualnie otwarty w innym sesja. Rozwiązanie dla opisanych ostatnio przypadków maszyn jednorazowego użytku jest dość proste, a błąd można rozwiązać, usuwając plik tymczasowy sudoers, który służy jako blokada:
sudo rm /etc/sudoers.tmp
Zrób to tylko wtedy, gdy masz pewność, że inny użytkownik (lub Ty) nie modyfikuje aktywnie pliku, lokalnie ani zdalnie. Ponieważ dostosowywanie sudoers jest ogólnie dość zaawansowane, zakładamy, że wiesz, co tutaj robisz, ale jeśli nie możesz wyśledzić, co i dlaczego sudoers jest otwarte, możesz spróbować użyć dtrace lub opensnoop do monitorowania użycia pliku.