Mój komputer ma użytkownika 1 i użytkownika 2, obaj administratorzy.
Podczas gdy jestem zalogowany jako użytkownik1, próbuję:
- „su - user2” -> monituje mnie o hasło users2, a następnie mogę wpisywać polecenia
- „sudo --user = użytkownik2 [polecenie]” -> monituje mnie o hasło. Po wpisaniu hasła użytkownika2 pojawia się komunikat „Przepraszamy, spróbuj ponownie”. komunikat o błędzie, jakby hasło było niepoprawne. Jeśli wpiszesz hasło użytkownika 1, działa ono poprawnie.
Czy polecenie sudo nie powinno wymagać hasła użytkownika, które zdefiniuję w parametrze „--user”?
Odpowiedzi:
Jest to oczekiwane zachowanie.
Su ma na celu zmianę użytkownika. Nazywa się to zastępczym narzędziem tożsamości użytkownika. su bierze hasło drugiego użytkownika, ponieważ przełączasz się na tego użytkownika.
Źródło: strona podręcznika man
Celem sudo jest wykonanie polecenia jako inny użytkownik. Opcja
-u
lub--user
dla sudo określa tego użytkownika. Nie logujesz się jako ten użytkownik, wystarczy uruchomić polecenie. sudo bierze twoje hasło, aby zweryfikować twoją tożsamość do wykonania takiego zadania.źródło