Как сделать Bash моей оболочки по умолчанию на Ubuntu?

у меня есть .bash_profile в моем домашнем каталоге, но он не запускается при входе в систему. Если я сделаю следующее, то все будет так, как я ожидал:

ssh myhost
bash
source ~/.bash_profile

но обычно это происходит при входе в систему. Мысли?

5
задан James A. Rosen
источник

6 ответов

использование:

chsh

введите пароль и укажите путь к оболочке, которую вы хотите использовать.

для Bash это было бы /bin/bash. Для Zsh это было бы /usr/bin/zsh.

142
отвечен akira 2015-01-06 12:44:07
источник

поверх ответа Акиры вы также можете отредактировать свой / etc / passwd файл, чтобы указать оболочку по умолчанию.

вы найдете строку такой пример:

john:x:1000:1000:john,,,:/home/john:/bin/sh

оболочка указывается в конце.

34
отвечен John T 2013-11-09 10:20:28
источник

вы можете проверить программу терминала. Он может быть настроен на запуск /bin / sh, а не /bin/bash

Bash выполняется .файл только для сеансов входа в систему. .bashrc и выполняется для всех сессий Баш, не только сеансы. Попробуйте поискать .bash_profile из .bashrc (избегайте круговой зависимости!) или настройка программы терминала для запуска /bin / bash-l в качестве программы оболочки.

2
отвечен Tadeusz A. Kadłubowski 2009-09-25 12:14:23
источник

одна из альтернатив-переименовать сценарий запуска В.профиль. Этот файл является источником большинства оболочки Unix.

2
отвечен mathk 2013-11-09 10:21:24
источник

включить bash:

$ /bin/bash

изменить оболочку для пользователя:

$ sudo usermod -s /bin/bash username

где:

  -s, --shell SHELL             new login shell for the user account
0
отвечен Umanshield 2018-01-25 18:44:30
источник

в вашем вопросе недостаточно информации, чтобы я мог сказать наверняка, но я столкнулся с той же проблемой раньше. Предполагая, что вы уже установили /bin/bash в свой пароль, это может быть способом запуска вашего терминала.

если вы пытаетесь запустить терминал с графическим интерфейсом, скажите gnome-terminal вы можете ожидать, что оболочка будет читать ваши файлы запуска bash. Однако это не происходит на Ubuntu и, возможно, других системах по умолчанию.

как я установил его на Ubuntu в измените настройки gnome-terminal и задайте для команды запуска значение bash -l. -l сокращенно --login. Это говорит bash для запуска как в качестве оболочки входа в систему, что заставляет его загружать сценарии запуска, как вы получите при входе в систему через ssh.

Я уверен, что есть хорошее обоснование для этого, как это, но я нашел его удивительным и более чем немного раздражает, как я разделяю те же профили в системах linux, cywgin и macos.

0
отвечен edk750 2018-09-15 19:37:41
источник

Другие вопросы bash ssh ubuntu