推荐使用 hostnamectl 永久修改主机名,执行 sudo hostnamectl set-hostname 新名称,并同步更新 /etc/hosts 中 127.0.1.1 映射;旧环境可手动编辑 /etc/hostname 和 /etc/hosts 并运行 sudo hostname -f /etc/hostname 加载;临时修改仅用 sudo hostname 临时名。

在银河麒麟系统中需要通过终端命令快速、可靠地更改设备在网络中的标识名称,例如部署服务器时统一命名规范、解决局域网内主机名冲突或配合自动化脚本批量配置。
使用 hostnamectl 永久修改(推荐)
这是 systemd 环境下的标准方式,适用于银河麒麟 V10 SP1 及后续版本,一次执行即同步更新内核运行时主机名与 /etc/hostname 文件,重启不丢失。
以管理员权限打开终端。
执行:sudo hostnamectl set-hostname kylin-prod-03,将 【kylin-prod-03】 替换为你需要的新主机名(不可含空格、下划线或中文)。
立即验证:运行 hostnamectl status,确认 “Static hostname” 行显示为新名称。
必须同步修正 /etc/hosts 中的映射,否则本地服务(如 SSH、Docker、日志服务)可能因解析失败而异常:执行 sudo vim /etc/hosts,找到形如 127.0.1.1 old-name 的行,将其完整替换为 127.0.1.1 kylin-prod-03,保存退出。
手动编辑配置文件(兼容旧环境)
该方法不依赖 systemd,适用于无 systemd 的精简版或早期麒麟系统,但需严格确保两处文件一致,否则会导致本地网络服务启动失败。
第一步:用文本编辑器打开主机名文件:sudo vim /etc/hostname。
第二步:删除全部内容,仅输入一行新主机名(例如:kylin-edge-node),按 Esc → :wq → Enter 保存退出。
第三步:编辑 hosts 映射文件:sudo vim /etc/hosts。
第四步:查找包含原主机名的行(常见于 127.0.1.1 开头),将其整行改为 127.0.1.1 kylin-edge-node;若该行不存在,则在文件末尾新增此行。
第五步:立即加载新主机名到当前会话:sudo hostname -F /etc/hostname。这一步不做,终端提示符和 hostname 命令仍显示旧名。
临时修改当前会话主机名
仅用于调试或测试场景,不写入任何磁盘文件,关机或新终端会话即恢复原主机名。
执行:sudo hostname temp-test-box。
验证:hostname 命令将立即返回 temp-test-box。











