skrypt do su z hasłem w skrypcie bez roota

8

Skryptowałem proces polegający na aktualizacji dowiązań symbolicznych w plikach znajdujących się na 3 różnych komputerach. Na tych komputerach istnieje 4 użytkowników, z których każdy musi aktualizować te linki.

Używając su, czy istnieje sposób na przekazanie argumentu hasła do polecenia w jednym wierszu, bez wywoływania sudo, ponieważ użytkownicy nie będą mieli uprawnień administratora?

Moim jedynym alternatywnym rozwiązaniem w tym momencie jest ssh dookoła, jednak chciałbym móc to zrobić bez twardego kodowania na kilku hostach / ips.

Triplell89
źródło

Odpowiedzi:

3

Możesz przesłać hasło do su w następujący sposób:

echo pa$$w0rd | su -c whoami user_1
gogatorzy
źródło
1
Otrzymanie błędu „Standard w musi być tty”
Triplell89
Czy używasz ssh? Wypróbuj opcję -t do ssh.
gogatorzy
@KevinVW, nie widzę -t jako opcji w su.
maestromani
-T jest dla ssh, nie su. Jeśli wymusza pseudo-tty, aby su mógł odczytać hasło ze standardowego wejścia.
gogatorzy