На выделенном сервере мы используем оболочку, которая настраивается по-разному для разных учетных записей, что довольно раздражает. Когда я ssh
в большинство пользователей я получаю:
[user@machine some_dir]$
Однако с некоторыми учетными записями я получаю:
bash-3.2$
Я держу много оболочек открытыми для разных машин, и есть много разных учетных записей. У меня есть возможность заставить всех быть одинаковыми ~/.bashrc
, но я также считаю, что где-то в /etc
Какой самый быстрый способ убедиться, что я получаю ту же оболочку всякий раз, когда ssh
?
/etc/profile
является стандартным местом для общесистемной конфигурации bash в большинстве систем.
PROMPTING
When executing interactively, bash displays the primary prompt PS1 when
it is ready to read a command, and the secondary prompt PS2 when it
needs more input to complete a command.
Лучше всего сочетать оба подхода. Баш всегда будет загружаться ~/.bashrc
. Вы должны поместить стандартный файл в /etc/skel/.bashrc
и ~/.bashrc
что, в свою очередь, приводит к чему-то вроде /etc/bash.bashrc
. (Версия в skel
будут использоваться для новых учетных записей пользователей.) Поместите свои значения по умолчанию в последний файл.
Пример пользователя .bashrc
:
# this line activates the system-wide default settings
. /etc/bash.bashrc
# users can add any custom .bashrc settings here
пример /etc/bash.bashrc
на основе моей подсказки:
G='\e[1;32m'
R='\e[1;31m'
Y='\e[1;33m'
N='\e[0m'
PS1='\A \['$G'\]\u@\h \['$Y'\]\w\['$N'\] \$ '
С помощью этой настройки вы можете позже изменить общесистемную подсказку и добавить другие параметры без необходимости редактировать все .bashrc
файл. Надеюсь, это поможет.