Witajcie ludzie z debian-user-polish! Piszę sobie skrypcik w perlu i chcialbym zmienic haslo za pomoca tego skryptu dla danego usera. I tu mam problem.
Ze strony http://www.tldp.org/LDP/abs/html/system.html wyczytalem, ze w bashu wykona to taki oto skrypcik: ---- cytuje start ---- passwd Sets or changes a user's password. The passwd can be used in a script, but should not be. #!/bin/bash # set-new-password.sh: Not a good idea. # This script must be run as root, #+ or better yet, not run at all. ROOT_UID=0 # Root has $UID 0. E_WRONG_USER=65 # Not root? if [ "$UID" -ne "$ROOT_UID" ] then echo; echo "Only root can run this script."; echo exit $E_WRONG_USER else echo; echo "You should know better than to run this script, root." fi username=bozo NEWPASSWORD=security_violation echo "$NEWPASSWORD" | passwd --stdin "$username" # The '--stdin' option to 'passwd' permits #+ getting new password from stdin (or a pipe). echo; echo "User $username's password changed!" # Using the 'passwd' command in a script is dangerous. exit 0 ---- cytuje end ---- W tym sek, ze nie dziala to u mnie i nie wiem dlaczego ://// (oczywiscie w tym skrypcie zmieniam zmiena username na konto z mojego systemu oraz NEWPASSWORD na cos co potrzebuje). Efetem wykonania skryptu w moim systemie jest co takiego (loguje sie na konto uzytkownika za pomoca putty a potem su -): ---- You should know better than to run this script, root. passwd: błędna opcja -- - usage: passwd [ -f | -s ] [ name ] passwd [ -x max ] [ -n min ] [ -w warn ] [ -i inact ] name passwd { -l | -u | -d | -S | -e } name User xxxx's password changed! ---- I nie dziala :/ (chyba, ze musze uzyc skryptu z czystego konta root? ale z linii polecen moge zminiac haslo wiec nie powinno byc roznicy). Interesuje mnie ta linia: echo "$NEWPASSWORD" | passwd --stdin "$username" jesli to zadziala to wstawie do skryptu perlowego: system('echo "$newpass" | passwd --stdin "$username"'); Macie moze jakies sugestie? Z gory thx za pomoc. Pozdrawiam, -- Piotr najduk(at)dami(dot)pl Linux Registered User # 217130 GG UIN # 1176825