Linux如何修改主机名

修改 Linux 主机名:临时修改使用 sudo hostname 新主机名;永久修改需编辑 /etc/hostname 文件并更新 /etc/hosts,然后重启系统生效,推荐使用 sudo hostnamectl set-hostname 新主机名 命令一步完成永久修改。

临时修改主机名(重启失效)

适用于临时测试,使用hostnamectlhostname命令:

Linux如何修改主机名

# 方法1:hostnamectl(推荐)
sudo hostnamectl set-hostname new-hostname
# 方法2:传统命令
sudo hostname new-hostname

验证

hostname  # 显示 new-hostname

永久修改主机名(所有主流发行版)

使用 hostnamectl(Systemd系统通用)

sudo hostnamectl set-hostname new-hostname
  • 生效:立即生效且永久保留,无需重启。

手动修改配置文件

不同发行版配置文件路径:

  • Debian/Ubuntu
    sudo nano /etc/hostname  # 仅保留新主机名
  • CentOS/RHEL/Fedora
    sudo nano /etc/hostname  # 仅保留新主机名

同步更新 /etc/hosts 文件

关键步骤:避免本地解析错误(如sudo报错、服务启动失败)
编辑hosts文件:

Linux如何修改主机名

sudo nano /etc/hosts

将原主机名替换为新主机名,

0.0.1   localhost
127.0.1.1   new-hostname  # 修改此处!

验证修改结果

hostnamectl status  # 查看静态主机名(Static hostname)
hostname            # 检查当前生效的主机名
cat /etc/hostname   # 确认配置文件

针对旧版系统的特殊处理

SysVinit系统(无Systemd)

# 修改/etc/sysconfig/network(CentOS 6)
sudo echo "HOSTNAME=new-hostname" > /etc/sysconfig/network
# 重启生效
sudo reboot

NetworkManager管理的主机名

nmcli general hostname new-hostname  # 设置并立即生效

注意事项

  1. 权限要求:所有命令需sudo或root权限。
  2. 命名规范
    • 仅使用字母、数字、连字符(),避免下划线和空格。
    • 首尾字符必须为字母或数字。
  3. 服务依赖
    修改后重启关键服务(如网络服务、Docker容器):

    sudo systemctl restart systemd-hostnamed
    sudo systemctl restart NetworkManager  # 若使用NetworkManager
  4. 云服务器限制
    AWS/Azure等云平台可能要求通过控制台修改,否则导致实例失联。

故障排查

  • 主机名未更新:检查/etc/hosts是否包含旧主机名映射。
  • sudo报错
    sudo: unable to resolve host new-hostname

    原因:/etc/hosts中未正确绑定新主机名到0.1.10.0.1


  • 推荐方法sudo hostnamectl set-hostname + 更新/etc/hosts
  • 生效逻辑
    graph LR
    A[hostnamectl] --> B[修改/etc/hostname]
    B --> C[通知systemd-hostnamed服务]
    C --> D[内核实时更新]
    D --> E[永久生效]

通过遵循上述步骤,可确保主机名安全变更,避免系统服务异常,企业环境中建议在维护窗口操作,并提前备份配置文件。

Linux如何修改主机名

引用说明基于Linux内核文档(kernel.org)、Systemd官方手册(freedesktop.org)及主流发行版(Ubuntu/CentOS)的官方维护指南。

原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/27204.html

(0)
酷盾叔的头像酷盾叔
上一篇 2025年6月16日 22:55
下一篇 2025年6月1日 00:05

相关推荐

  • Linux用户如何快速修改用户名

    修改Linux用户名需使用usermod命令:先用usermod -l 新用户名 旧用户名更改登录名,再用usermod -d /home/新用户名 -m 新用户名更新主目录路径,最后用groupmod -n 新组名 旧组名同步用户组名(如需),操作前务必备份数据,避免系统异常。

    2025年6月6日
    100
  • Linux如何安装pak文件

    将pak文件复制到程序指定的目录(通常是游戏或应用安装路径下的特定文件夹),具体位置需查阅相关软件的文档说明。

    2025年5月30日
    300
  • Linux如何用fdisk查看分区类型?

    使用 sudo fdisk -l 查看分区表信息(含类型)。 ,或 sudo lsblk -f 显示分区及文件系统类型。 ,sudo blkid 命令也可列出分区类型标识。

    2025年6月14日
    000
  • 如何用vmware安装linux

    在VMware中安装Linux需先创建新虚拟机,选择Linux类型及版本,分配硬件资源,加载Linux ISO镜像文件作为安装源,启动虚拟机后按屏幕提示完成分区、用户设置等安装步骤即可。

    2025年6月16日
    000
  • Linux怎样快速解压gz文件?

    使用gunzip命令解压.gz文件:gunzip 文件名.gz(压缩包会被删除)。 ,保留原压缩文件可执行:gunzip -c 文件名.gz ˃ 新文件名 或使用 gzip -d 文件名.gz。

    2025年6月7日
    000

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN