Nowe posty

Autor Wątek: przekierowanie potoków + sudo  (Przeczytany 3503 razy)

  • Gość
przekierowanie potoków + sudo
« dnia: 2008-05-18, 21:39:17 »
Witajcie. Mam pewien problem.

Chciałbym wysłać polecenie, pobierając hasło z pliku. Jak na razie udało mi sie tylko w taki sposób:

sudo -u root -S  cp control/tmp /control/plik < /home/leclerck/passfile

Niestety nie może to tak być.
Chcialem zrobić coś bardziej w stylu


sudo -u root -S  echo tekst >> /control/plik < /home/leclerck/passfile

ale wtedy powłoka wypluwa "permission denied" - czyli nie widzi hasła.

Jak to można rozwiązać? czy jakieś pomysły ktoś ma?

jk33

  • Gość
przekierowanie potoków + sudo
« Odpowiedź #1 dnia: 2008-05-18, 22:12:23 »
myślę, że raczej chciałeś napisać coś w stylu:
sudo -u root -S  sh -c "echo tekst >> /control/plik" < /home/leclerck/passfile
Zauważ, że w swoim skrypcie przekierowujesz wyjście polecenia sudo, a nie echo.
Echo jest wykonane jako root, ale powłoka, z której wywołujesz sudo oczywiście nie jest, a to ona przekierowuje wejście/wyjście. Więc skoro powłoka jest uruchomiona na prawach normalnego użytkownika.. to permission denied dostajesz właśnie przy próbie przekierowania wyjścia do pliku, do kórego nie masz dostępu. Hasło jest odczytane jak najbardziej dobrze.

Nie rozumiem tylko jednego.. dlaczego wczytujesz hasło z pliku?
Czy nie lepiej byłoby tak skonfigurować sudo, żeby w ogóle nie pytał o hasło?