У меня машина Solaris, по умолчанию оболочкой является tcsh
Как изменить оболочку по умолчанию на bash, например, после выхода из системы и повторного входа у меня будет bash вместо tcsh!
Я имею в виду, что после выхода из системы и входа в систему с помощью команды ps я увижу bash, а не tcsh,
my_solaris:/ ROOT > ps
PID TTY TIME CMD
13950 pts/4 0:00 ps
9951 pts/4 0:00 tcsh
решение1
Вы можете изменить оболочку входа, установленную для вашей учетной записи, с помощью команды usermod.
usermod -s /usr/bin/bash diana
Дважды проверьте путь к оболочке bash на вашем компьютере с помощью which bash
.
Обратите внимание, что для команды usermod требуются права root.
решение2
Вы можете использовать exec
команду для выполнения программы вместо текущей оболочки, которая завершается. Чтобы изменить оболочку на bash, вы можете использовать
exec bash
переключит вашу оболочку на bash
exec tcsh
включу его снова
РЕДАКТИРОВАТЬ:
Теперь, когда вы изменили свой вопрос и придали ему другой смысл, ответы будут другими.
Для этого вам понадобится root-доступ, но любой из следующих вариантов должен сработать
passwd -e diana
Old Shell: /usr/bin/tcsh
New Shell: /usr/bin/bash
passwd: password information changed for diana
или
usermod -s /usr/bin/bash diana
решение3
Для Solaris 11 (и Solaris 10) под учетной записью root вы можете выполнить следующие действия:
[root@server ~]# passwd -e other_user
Old shell: /usr/bin/bash
New shell: /usr/bin/ksh
passwd: password information changed for other_user
[root@server ~]#
решение4
В дополнение к тому, что было отмечено ранее: usermod -s /usr/bin/bash USERNAME
....
Вы также можете изменитьпо умолчаниюоболочка дляновые аккаунтыс помощью useradd -D
useradd -D -s /usr/bin/bash
ССЫЛКА:http://docs.oracle.com/cd/E19963-01/html/821-1462/useradd-1m.html