Mam skrypt powłoki, który potrzebuje konta użytkownika innego niż root, aby uruchomić określone polecenia, a następnie zmienić użytkownika na root, aby uruchomić resztę skryptu. Używam SUSE11. Użyłem oczekiwać, aby zautomatyzować monit o hasło. Ale kiedy użyję spawn su - , a polecenie zostanie wykonane, monit powróci z rootem, a reszta skryptu nie zostanie wykonana.Zmiana na użytkownika root wewnątrz skryptu powłoki
Np.
< non-root commands>
spawn su -
<root commands>
Ale po su - monit zwraca z powrotem z użytkownikiem jako root. Jak wykonać pozostałe skrypty.
Opcja sudo-S nie pomaga, ponieważ nie uruchamia polecenia sudo -S ifconfig, które jest potrzebne do znalezienia adresu IP urządzenia.
już przeszły te linki, ale nie mógł znaleźć rozwiązanie: Change script directory to user's homedir in a shell script
Changing unix user in a shell script
z góry dzięki
Co jeśli zamiast rootu możemy nazwać to $ USERNAME2? Z góry dzięki. – raja777m