Одна из моих основных трудностей при администрировании удаленных серверов - это определить сервер, на котором я работаю, поскольку оболочка между ними очень похожа (фактически, в большинстве случаев отличается только пользователь).
Я хотел бы знать, можно ли создать обычай оболочки с учетом удаленного сервера, к которому я подключен.
Спасибо за помощь, С уважением!
Если ты имеешь ввиду пользовательская оболочка Подсказка, взгляните на переменную PS1 (мужик, ищите PS1). У него много вариантов. Вот это полное руководство, но для начала попробуйте
export PS1=\u@\H \$>
что дает вам подсказку вроде
username@full.host.name $> _
Вы используете переменную PS1 для настройки? Не все версии всех оболочек обрабатывают переменную одинаково, но большинство принимают \ h для имени хоста, \ u для имени пользователя и \ w для текущего рабочего каталога.
Посмотри пожалуйста эта страница для дополнительных опций, примеров и предложений.
Что касается настроек ps1, это то, что я использую в моем .bashrc
userName=`whoami`
if [ $userName == "root" ]
then
PS1='\[\e[0;31m\]\u\[\e[0m\]@\[\e[0;35m\]\h\[\e[0m\][$?]\[\e[0;31m\][\W]\[\e[0m\]\[\e[0;31m\]\$\[\e[0m\]: '
else
PS1='\[\e[0;32m\]\u\[\e[0m\]@\[\e[0;35m\]\h\[\e[0m\][$?]\[\e[0;31m\][\W]\[\e[0m\]\[\e[0;32m\]\$\[\e[0m\]: '
fi
Имя пользователя будет красным для root, иначе зеленым. и имеет имя хоста и код возврата последней команды. - может вам помочь.
Также попробуйте byobu (как предлагается в комментарии к mrshunz)
Просто используйте уникальные и не требующие пояснений имена для имени хоста ваших удаленных серверов. Тогда вы сможете узнать, на каком сервере вы работаете!
Вы можете изменить имя хоста с /etc/hostname
. Перезапустите службу /etc/init.d/hostname restart
. Также не забудьте обновить /etc/hosts
файл.