У меня есть пара вопросов. Вот первый
Мы пытаемся автоматизировать создание пользователя в solaris 8. Мы предоставляем пароль по умолчанию, а затем заставляем пользователя изменить пароль при первом входе в систему с помощью команды
passwd -f $user
но проблема в том, что мы должны ввести пароль два раза, чтобы подтвердить его. Я попытался автоматизировать его, используя следующую команду
echo $password | password -f $user
С этой командой ничего не происходит. Пожалуйста, есть ли другой способ сделать то же самое?
Я не думаю, что вы легко сможете делать то, что хотите, на таком древнем1 система.
Я не думаю, что это сработает, но вы можете попробовать
echo "password\npassword" | passwd user
Вы можете попробовать использовать ожидать утилита. Это сделает то, что вы хотите, и есть множество примеров сценариев, как изменить пароль с его помощью. Проблема в том, что он может не входить в состав Solaris 8.
Другой вариант - сгенерировать хэши паролей с помощью программы, которая вычисляет склеп(ньюпасс, соль)2 а затем измените поле пароля в соответствующем файле.
1Ваша большая проблема здесь и с другими вашими вопросами заключается в том, что Solaris 8 настолько древний, что даже Интернет забывает о нем. Примерно в 2003 году он был заменен на Solaris 9, а в 2012 году Oracle предоставила ему расширенную поддержку. Фактически, если у вас нет расширенной поддержки, вы не поддерживаются и не должны использовать его в бизнес-среде.
Если вам действительно нужен Solaris, потому что у вас есть старые прикладные программы, вам следует обновить его до Solaris 10. Я предполагаю, что оборудование, на котором вы запускаете эту установку Solaris 8, - это SPARC. Хорошей новостью является то, что системы SPARC двоично совместимы, поэтому вы должны иметь возможность запускать двоичные файлы Solaris 8 на новом оборудовании SPARC и поддерживаемой ОС.
2 Нет, я не знаю программы для этого на Solaris 8. Если у вас есть perl, тогда
perl -e 'print crypt("YourPasswd", "salt"),"\n"'
может работать.