修改Linux主机名
约 326 字大约 1 分钟
2026-08-29
主机名会显示在 SSH 提示符、日志与监控里,多台服务器时给实例起一个易识别的名字能明显减少运维混乱。
修改方法(systemd 系统,通用)
sudo hostnamectl set-hostname web-server-01该命令立即生效且重启后保持。重新登录后提示符即显示新主机名,或执行 hostname 验证。
修补 /etc/hosts(避免 sudo 报错)
很多系统在 /etc/hosts 中把旧主机名指向了 127.0.0.1,改完主机名后执行 sudo 会提示 unable to resolve host:
sudo vi /etc/hosts
# 把 127.0.1.1 旧主机名 改为 127.0.1.1 web-server-01验证
hostname # 输出新主机名
hostnamectl # 查看完整信息(含操作系统、内核)常见问题
重启后主机名被改回去了?
部分云镜像的 cloud-init 会在启动时用实例名覆盖主机名。编辑 /etc/cloud/cloud.cfg,找到并设置:
preserve_hostname: true之后再用 hostnamectl 修改即可长期保持。
提示 hostnamectl 命令不存在?
极老的系统(CentOS 6 等)使用 /etc/sysconfig/network 中的 HOSTNAME= 配置并重启生效;现代发行版均为 systemd,无需此操作。
改了主机名对 SSH 登录有影响吗?
没有影响,SSH 使用 IP/密钥/密码认证,与主机名无关。
