Изменение оболочки по умолчанию в Linux

Как можно изменить оболочку по умолчанию? Команда env настоящее время говорит:

SHELL=/bin/tcsh

и я хочу изменить это на Bash.

Ответ 1

Попробуйте команду Linux chsh.

Подробная команда: chsh -s/bin/bash. Вам будет предложено ввести пароль. Ваша стандартная оболочка для входа сейчас /bin/bash. Вы должны выйти и снова войти в систему, чтобы увидеть это изменение.

Следующее цитируется со страницы руководства:

Команда chsh изменяет оболочку входа пользователя. Это определяет имя команды начального входа пользователя. Обычный пользователь может изменить оболочку входа только для своей учетной записи, суперпользователь может изменить оболочку входа для любой учетной записи.

Эта команда навсегда изменит оболочку входа в систему по умолчанию.

Примечание. Если ваша учетная запись удалена, например при аутентификации Kerberos (например, Enterprise RHEL), вы не сможете использовать chsh.

Ответ 2

Вы можете изменить файл passwd непосредственно для конкретного пользователя или использовать следующую команду

chsh -s /usr/local/bin/bash username

Затем выйдите из системы и войдите в систему

Ответ 3

У вас должен быть "скелет" где-то в /etc, возможно, /etc/skeleton или проверить настройки по умолчанию, возможно, /etc/default или что-то еще. Это скрипты, которые определяют стандартные переменные среды, которые устанавливаются во время входа в систему.

Если это только для вашей собственной учетной записи: проверьте (скрытый) файл ~/.profile и ~/.login. Или сгенерируйте их, если они не существуют. Они также оцениваются процессом входа в систему.