Что такое оболочка по умолчанию для пользователей в /etc/passwd для Solaris 11?
Для проверки конфигурации сервера Solaris 11, которую я делаю, в файле /etc/passwd есть следующие строки:
root:x:0:0:Super-User:/root:/usr/bin/bash
daemon:x:1:1::/:
bin:x:2:2::/usr/bin:
sys:x:3:3::/:
adm:x:4:4:Admin:/var/adm:
lp:x:71:8:Line Printer Admin:/:
uucp:x:5:5:uucp Admin:/usr/lib/uucp:
nuucp:x:9:9:uucp Admin:/var/spool/uucppublic:/usr/lib/uucp/uucico
.....
Последнее слово каждой строки означает оболочку, в которую они входят. Если ничего не указано, по умолчанию это /usr/bin/bash? Исходя из вышесказанного, могу ли я подтвердить, что демон учетных записей, bin, sys, adm, lp, uucp могут войти в систему или нет?
Обратите внимание, что я получил это как вывод для одного из сценариев, которые выполняла моя команда, и, следовательно, я не смогу найти любую запрашиваемую вами информацию, которая находится за пределами сценария. Но ваша помощь очень ценится.
Спасибо
3 ответа
Я считаю, что ответы, которые вы получили до сих пор, немного неточны или, по крайней мере, неполны.
Вы специально упоминаете, что вопрос относится к Solaris 11, и это важно для ответа.
Если никакая оболочка явно не упоминается в /etc/passwd
тогда это правильно, поскольку страница руководства говорит, что /usr/bin/sh
будет использоваться, но это логическая ссылка на Korn 93 Shell. Другими словами: для тех учетных записей, где оболочка не упоминается в /etc/passwd
оболочкой является Korn 93, а не Bourne Shell, как вы могли подумать. Солярис имел обыкновение иметь сходство с оболочкой Корна (давным-давно), так вот почему /usr/bin/sh
указывает на оболочку Корн.
Вот ссылка на Oracle с дополнительной информацией: Новая оболочка в Oracle Solaris 11.
Дополнительная информация: Значит ли это, что оболочка Korn является "оболочкой по умолчанию" в Solaris 11? Нет! При создании учетной записи в Solaris 11 с помощью useradd
команда, и вы не указываете явно оболочку, то Bash shell (/usr/bin/bash
) будет использоваться. Следовательно, я бы сказал, что Bash является оболочкой по умолчанию в Solaris.
Надеюсь это поможет.
# man -s 4 passwd
[...]
login-shell is the user's initial shell program. If this
field is empty, the default shell is
/usr/bin/sh.
[...]
# man -s 4 shadow
[...]
password An encrypted password for the user generated by
crypt(3C), a lock string to indicate that the
login is not accessible, or no string, which
shows that there is no password for the login.
The lock string is defined as *LK* in the first
four characters of the password field.
[...]
Нет, из вышесказанного нельзя сказать, могут ли указанные учетные записи войти в систему или нет. Для этого вам нужно будет проверить запись для каждой учетной записи в файле /etc/ shadow. В частности, вы должны посмотреть на поле пароля и, возможно, поле истечения срока действия.
Что касается оболочки по умолчанию, это будет легко проверить. Просто создайте учетную запись пользователя и проверьте, что вы можете войти в систему. Отредактируйте файл /etc/ passwd, чтобы удалить оболочку для тестовой учетной записи, затем снова войдите в систему и посмотрите, какая это оболочка.
Итак, я развернул Solaris 11 Vm, и он оказывается sh
,