Debian, полное имя домена в приглашении командной строки

05.11.2025

По умолчанию Debian использует только короткое имя хоста (например, dev), даже если в /etc/hostname указать полное доменное имя вроде dev.mydomain.ru. Это связано с тем, что /etc/hostname предназначен исключительно для короткого имени, а полное доменное имя (FQDN) задается отдельно.

Вывод полного имени домена в приглашении командной строки осуществляется следующим образом.

Устанавливаем полное имя домена:

# hostnamectl set-hostname dev.mydomain.ru

Обновляем /etc/hosts:

127.0.1.1   dev.mydomain.ru dev

Стоит отметить, что Debian использует адрес 127.0.1.1 специально для локального имени хоста, чтобы не конфликтовать с 127.0.0.1, где обычно прописан localhost.

Напоcледок необходимо изменить формат приглашения командной строки в .bashrc. Для этого в строках, которые устанавливают значение переменной PS1 необходимо изменить параметр \h (короткое имя хоста) на \H (полное имя). Например:

PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '

поменять на:

PS1='${debian_chroot:+($debian_chroot)}\u@\H:\w\$ '

После перезапуска сессии терминала приглашение должно принять следующий вид для пользователя admin:

admin@dev.mydomain.ru:~$