Od użytkownika root, w jaki sposób mogę zezwolić innemu użytkownikowi na wykonanie pliku /root/script.sh?
Chodzi o to, aby uruchomić skrypt jak sudo -u user1 /root/script.sh
root
privileges
bulkmoustache
źródło
źródło
sudo
napisanym poleceniem?su(1)
Odpowiedzi:
Muszę powiedzieć, że nigdy mi się nie podobało
sudo
(szczególnie jego konfiguracje). Zwykły starysu
:Wykonany z roota, nie poprosi o podanie hasła.
źródło
Użytkownik musi mieć
wykonać uprawnienie dla całej ścieżki katalogu (
/root
tylko tutaj )wykonać uprawnienie do pliku
uprawnienia do odczytu pliku
Dobrym pomysłem może być pozostawienie
/root
nietkniętego i utworzenie (lub użycie) innego katalogu do tego celu (np/usr/local/bin
.). Możesz uczynićuser1
jedynego użytkownika, który może wykonać skrypt, czyniąc go właścicielem pliku lub pozostawićroot
jako właściciela i grupę, ustawić proste uprawnienia dostępu (chmod
)770
i dodać zauser1
pomocą ACLs (setfacl
).źródło
Jeśli twój skrypt znajduje się w katalogu głównym, to
user1
może być tylko rootem.Twój
/etc/sudoers
wpis będzie wyglądałZwykle edytujesz plik przy pomocy
visudo
Nie musisz też poddawać
-u root
sięsudo
dowodzeniu.%
Oznacza grupę użytkownika. Po pominięciu tej opcji tylko użytkownik może wykonać polecenie. Jeśli chcesz, aby grupa użytkowników go wykonała, pozostaw to tak, jak jest.źródło