Witam,
Mam jedno zadanie do wykonania, jednak w pewnym momencie się zaciąłem i nie wiem jak z tym ruszyć. Otóż potrzebuję skryptu, który będzie czytał nazwy użytkowników i ich hasła z pliku tekstowego, a następnie będzie tworzył ich konta, przypisując ich do stworzonej wcześniej grupy "studenci".
Udało mi się napisać kod. Użytkownicy zostają utworzeni, jednak gdy potem próbuje zalogować się z terminala na tych użytkowników (su nazwa / potem haslo, ktore jest zapisane w pliku) to wyskakuje mi błąd "Authentication failure". Czy ktoś wie może dlaczego?
#!/bin/bash
NEW_USERS="users"
HOME_BASE="/home/Uczelnia"
cat ${NEW_USERS} |
while IFS=" " read USER PASSWORD; do
useradd -G students -p ${PASSWORD} -m -d ${HOME_BASE}${USER} ${USER}
done < ${NEW_USERS}
Program useradd wymaga podania hasła w postaci zaszyfrowanej, uzyskasz je na przykład za pomocą polecenia:
openssl passwd -crypt ja1
W skrypcie możesz podać tak:
"$(openssl passwd -crypt "${PASSWORD}")"
#!/bin/bash
NEW_USERS="users"
HOME_BASE="/home/Uczelnia"
cat ${NEW_USERS} |
while IFS=" " read USER PASSWORD; do
useradd -G students -p "$(openssl passwd -crypt "${PASSWORD}")" -m -d ${HOME_BASE}${USER} ${USER}
done < ${NEW_USERS}
czyli miałoby to tak wygladac?