Пара openssl
и chpasswd -e
не работала в моем случае в RHEL6. Комбинация команд openssl passwd
и usermod -p
сделала свое дело.
Сгенерируйте хеш-значение пароля вместе с солт-значением:
$ openssl passwd -1 -salt 5RPVAd clear-text-passwd43
$1$5RPVAd$vgsoSANybLDepv2ETcUH7.
Затем скопируйте зашифрованную строку в usermod. Не забудьте заключить его в одинарные кавычки.
$ usermod -p '$1$5RPVAd$vgsoSANybLDepv2ETcUH7.' root
Проверьте это в теневом файле.
$ grep root /etc/shadow
root:$1$5RPVAd$vgsoSANybLDepv2ETcUH7.:17774:0:99999:7:::
Вы должны изменить строку:
filefinalpath=$filename + $filepath
быть
filefinalpath="${filename}${filepath}"
Несколько вопросов:
1)cd
означает «изменить каталог» и позволяет перемещаться только в каталог, но не для файла.
ОК:
cd /path/to/directory
ОШИБКА:
cd /path/to/directory/file.list
2 )Объединение строк
stringA=foo
stringB=bar
newstring="$oldstring""$newstring"
3 )Линии счета
Я настоятельно рекомендую использовать wc
для этого:
wc -l file
вернет количество строк.