Co to jest Sudo w Linuksie i jak z niego korzystać?

Rozważ powyższy komiks z doskonałego komiksu internetowego XKCD . Leniwy facet na krześle chce, żeby przyjaciel zrobił mu kanapkę, ale brakuje mu władzy, by to zrobić. To znaczy, dopóki nie przywoła potężnego polecenia sudo. Następnie kanapka zostanie zrobiona w taki czy inny sposób. 

Chociaż próbowanie sudo na osobie w prawdziwym życiu prawdopodobnie nie będzie tak skuteczne, jest to magiczne polecenie, które omija każdą przeszkodę w świecie Linuksa(Linux) . Czym jest sudo? Dlaczego w ogóle istnieje? Odpowiedź leży w tym, jak Linux obsługuje uprawnienia.

Zrozumienie uprawnień użytkownika systemu Linux(Linux User Permissions)

Linux jest uważany za bezpieczny system operacyjny ze względu na sposób, w jaki obsługuje uprawnienia. Podczas gdy systemy operacyjne, takie jak macOS (który miał wspólnego przodka z Linuksem(Linux) ) i Windows , są teraz bardziej podobne do Linuksa(Linux) pod tym względem, system operacyjny Open Source jest nadal dość wyjątkowy.(Open Source)

Zrozumienie, w jaki sposób Linux obsługuje uprawnienia, znacznie ułatwia zrozumienie polecenia sudo. Wszystkie nowoczesne systemy operacyjne mają poziom uprawnień administratora lub administratora. Jeśli masz konto administratora lub roota, możesz zmienić dowolne ustawienia, usunąć dowolne dane i ogólnie robić z komputerem, co chcesz. 

Obejmuje to rzeczy, których prawdopodobnie nie powinieneś robić, a które mogą prowadzić do utraty danych lub konieczności całkowitego wyczyszczenia i ponownej instalacji.

Linux nie ustawia uprawnień na poziomie użytkownika root jako domyślnych. Zamiast tego Twoje konto nie może dostać się do naprawdę wrażliwych części systemu bez podniesienia poziomu uprawnień. Oznacza to, że system poprosi o podanie hasła administratora, gdy będziesz chciał zrobić coś niezwykłego przy użyciu interfejsu graficznego. 

Jeśli jednak chcesz użyć wiersza poleceń Terminala(Terminal) , aby załatwić sprawy, sudo jest najbezpieczniejszym i najskuteczniejszym sposobem na to.

Sudo i terminal

Istnieją dwa sposoby na nadanie sobie podwyższonych uprawnień w Linuksie(Linux) . Jednym z nich jest zalogowanie się jako użytkownik root na stałe. Problem polega na tym, że każdy, kto ma dostęp do komputera, może siać spustoszenie, a nawet Ty możesz to zrobić przez przypadek. Sudo podnosi twoje uprawnienia tylko na krótki czas, aby wykonać określone polecenia, które po nim następują.

Składnia sudo

Składnia Sudo (format polecenia) jest prosta. Po prostu(Simply) wpisz „sudo”, a następnie polecenie, które chcesz wykonać.

Na przykład „sudo apt-get update” zaktualizuje wszystkie repozytoria aplikacji wymienione w odpowiednim pliku. Jeśli spróbujesz uruchomić go bez sudo, otrzymasz komunikat o błędzie z informacją, że nie masz uprawnień. Nawiasem mówiąc, jest to zazwyczaj pierwsze polecenie sudo, które będziesz chciał uruchomić po nowej instalacji ulubionej dystrybucji Linuksa(Linux)

„Su” w Sudo

„su” w sudo jest skrótem od „superużytkownika” i jest samodzielnym poleceniem. Polecenie „su” pozwala zmienić uprawnienia użytkownika, do których sudo podnosi cię. 

Chociaż sudo tymczasowo przenosi Cię do poziomu roota, su zmienia Cię na innego użytkownika z odpowiednimi uprawnieniami. To może wydawać się nieistotnym rozróżnieniem, ale istnieją dobre powody, aby zmienić konto, do którego sudo podnosi użytkownika. 

Przede(First) wszystkim zmiana konta oznacza, że ​​zwykli użytkownicy nie znają hasła roota. Po drugie, istnieje dziennik wszystkich poleceń sudo, co oznacza, że ​​administrator systemu (root) może sprawdzić, kto wydał polecenia su.

Składnia su jest zasadniczo taka sama jak sudo:

Nie NAZWA UŻYTKOWNIKA -c POLECENIE(Su USERNAME -c COMMAND)

Zastąp USERNAME(Replace USERNAME) żądanym użytkownikiem, aby uruchomić polecenie, a COMMAND poleceniem systemu Linux , które chcesz wykonać.

Jeśli chcesz uruchomić wiele poleceń jako inny użytkownik, po prostu użyj:

Nie UŻYTKOWNIK(Su USER)

Zastąp USER(Replace USER) odpowiednią tożsamością konta użytkownika.

Jeśli używasz samego su, Linux przełączy się na inne konto użytkownika, dopóki nie użyjesz polecenia „exit”. Należy pamiętać, że ten lub następny użytkownik, który uzyska dostęp do terminala w tej sesji, nadal będzie miał podwyższone uprawnienia. Dlatego generalnie lepiej jest używać sudo niż su.

Limit czasu Sudo

Przy pierwszym użyciu polecenia sudo będziesz musiał wprowadzić hasło. Następnie to hasło będzie ważne przez 15 minut. Możesz zmienić to ustawienie domyślne, uruchamiając polecenie sudo visudo i zmieniając „timestamp_timeout =” na dłuższą lub krótszą wartość. Nie zalecamy jednak tego robić, chyba że masz dobry powód, aby wydłużyć lub skrócić czas ważności hasła sudo.

Przełączniki opcji Sudo

Chociaż składnia sudo jest prosta, warto wiedzieć o kilku przełącznikach. Te polecenia otwierają dodatkowe informacje lub pomagają kontrolować sesję sudo:

  • -h pokazuje składnię i informacje o poleceniu sudo.
  • -V wyświetla aktualną wersję sudo na twoim komputerze.
  • -v odświeża limit czasu sudo, restartując zegar.
  • -l wyświetla uprawnienia użytkownika.
  • -k natychmiast zabija bieżącą sesję sudo, usuwając podwyższone uprawnienia.

Istnieje wiele innych opcji wbudowanych w sudo i możesz je wszystkie zobaczyć za pomocą pierwszego przełącznika -h wymienionego powyżej.

Powyższy zrzut ekranu jest wynikiem korzystania z opcji pomocy.

Przydatne polecenia Sudo

Więc jakie polecenia wspierane przez sudo powinien znać każdy użytkownik Linuksa(Linux) ? Omówiliśmy już aktualizację sudo apt-get, ale zwróć też uwagę na te:

  • Aktualizacja Sudo apt-get(Sudo apt-get upgrade) zaktualizuje wszystkie zainstalowane pakiety.
  • Sudo apt-get install <package-name> instaluje wybrane oprogramowanie; po prostu zmień nazwę pakietu na tę, którą chcesz zainstalować.
  • Jeśli nie znasz nazwy pakietu, użyj dpkg –list .
  • Jeśli chcesz usunąć zainstalowany pakiet z terminala, użyj sudo apt-get remove <package-name (ponownie zastępując konkretną nazwę pakietu w pytaniu).

Są to prawdopodobnie pierwsze polecenia sudo, których będziesz musiał użyć, ale jak nauczyłeś się powyżej, każde polecenie może podążać za sudo, ale powinieneś używać tylko tych, które wymagają z nim wyższych uprawnień.



About the author

Jestem web developerem i inżynierem dźwięku z ponad 10-letnim doświadczeniem. Specjalizuję się w tworzeniu aplikacji Chrome/Web Audio, a także aplikacji Discord. Moje umiejętności w obu dziedzinach pozwalają mi tworzyć produkty wysokiej jakości, które są łatwe w obsłudze i utrzymaniu. Ponadto jestem doświadczonym użytkownikiem Discorda i pracuję nad aplikacją od ponad dwóch lat.



Related posts