Добавить пользователя
adduser
Файл по умолчанию является /etc/adduser.conf
. Оболочка по умолчанию, определяемая DSHELL
переменной, /bin/bash
по умолчанию.
useradd
Скорее всего, вам это не нужно, потому что useradd - это утилита очень низкого уровня, и она почти никогда не используется напрямую.
Если вы используете useradd, отредактируйте /etc/default/useradd
файл скелета (хотя не забудьте сделать резервную копию).
Установите SHELL
переменную /bin/bash
вместо /bin/sh
.
Теперь каждый раз, когда вы используете useradd
для добавления нового пользователя bash
, автоматически устанавливается его оболочка по умолчанию.
Уже существующие пользователи
Если вы хотите изменить оболочку уже существующих пользователей, вам нужно отредактировать /etc/passwd
файл (пожалуйста, убедитесь, что у него есть резервная копия).
Вот описание столбцов
- логин
- необязательный зашифрованный пароль
- числовой идентификатор пользователя
- числовой идентификатор группы
- имя пользователя или поле комментария
- домашний каталог пользователя
- необязательный пользовательский интерпретатор команд
В этом порядке разделены двоеточиями (:) вот так.
root:x:0:0:root:/root:/bin/bash
Для получения дополнительной информации об этом файле обратитесь к странице руководства man 5 passwd
.
sudo -u $USER chsh -s $SHELL
.Как указал Октавиан, способ изменения значений по умолчанию зависит от того, как вы создаете пользователя. Я только что попытался создать нового пользователя в настройках Gnome, и, похоже, это следует
/etc/default/useradd
, так что это может быть вашим лучшим выбором. Для существующих пользователей самый безопасный способ изменить чужую оболочку входа - это usermod :Если вы не root, вам понадобится sudo . Альтернативой является sudo для пользователя, которого вы хотите изменить, и просто запустите chsh , например так:
Лучше избегать редактирования
/etc/passwd
вручную, потому что ошибка там может сломать все виды вещей.источник
Если вы действительно хотите, чтобы все пользователи на сервере имели bash (именно этот вопрос и задавался), вы можете запустить команду:
И затем выберите НЕ тире. Как объясняется в этом ответе,
Как сделать так, чтобы / bin / sh указывал на / bin / bash?
Это не только устанавливает bash в качестве оболочки по умолчанию, но и правильно отображает sh и man-страницы.
Надеюсь это поможет.
источник