Linux系统如何修改主机名?CentOS和Ubuntu通用修改方法【教程】

陌伟君_3310

陌伟君_3310

2026-04-13

960人浏览

原创

应优先使用hostnamectl命令修改主机名,它自动更新/etc/hostname并刷新内核静态主机名;若不支持systemd,则需手动编辑/etc/hostname并执行hostname -f,同时同步更新/etc/hosts及对应系统配置文件。

linux系统如何修改主机名?centos和ubuntu通用修改方法【教程】

如果您在Linux系统中需要更改主机名,但发现修改后重启失效或部分服务无法识别新名称,则可能是由于仅修改了运行时主机名而未同步持久化配置。以下是适用于CentOS和Ubuntu的通用修改方法:

一、使用hostnamectl命令修改

该方法适用于所有基于systemd的现代Linux发行版(如CentOS 7+、Ubuntu 16.04+、Debian 9+等),可自动写入/etc/hostname并刷新内核静态主机名,无需重启即可使多数服务识别新名称。

1、以root权限或sudo执行命令设置新主机名:sudo hostnamectl set-hostname your-new-hostname

2、验证静态主机名是否已更新:hostnamectl status | grep "Static hostname"

3、确认/etc/hostname文件内容已被覆盖为新主机名:cat /etc/hostname

二、手动编辑/etc/hostname文件

此方式兼容所有Linux发行版,包括非systemd环境(如旧版CentOS 6、嵌入式系统),通过直接替换静态定义实现持久化,但需额外触发内核参数更新。

1、使用文本编辑器打开主机名配置文件:sudo nano /etc/hostname

2、删除原有全部内容,仅输入新主机名(不可含空格、下划线或特殊字符,仅限字母、数字与连字符)

3、保存并退出编辑器

4、立即加载新主机名至当前运行时环境:sudo hostname -F /etc/hostname

三、同步更新/etc/hosts文件

/etc/hosts是本地名称解析关键文件,若其中仍保留旧主机名映射,将导致sudo、ssh、zabbix-agent等依赖gethostname()的服务启动失败或日志报错“Could not resolve hostname”。

1、编辑hosts文件:sudo nano /etc/hosts

Zynq Linux Hardware Debug
Zynq Linux Hardware Debug

Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。

下载

2、查找包含旧主机名的行,常见格式为:127.0.1.1 old-hostname或127.0.0.1 old-hostname

3、将旧主机名完整替换为新主机名,例如改为:127.0.1.1 your-new-hostname

4、确保保留原始的127.0.0.1 localhost行不变

四、修改/etc/sysconfig/network文件(仅RHEL/CentOS 6及更早SysVinit系统)

在不使用systemd的旧版Red Hat系系统中,/etc/sysconfig/network中的HOSTNAME变量被网络初始化脚本读取,忽略此步骤将导致重启后主机名还原为默认值。

1、编辑网络配置文件:sudo nano /etc/sysconfig/network

2、定位或新增包含HOSTNAME=的行,并设为新主机名:HOSTNAME=your-new-hostname

3、确认该文件中存在且启用:NETWORKING=yes

五、通过sysctl方式临时与永久结合修改

此方法适用于不支持systemd的老版本Linux系统,通过内核参数和配置文件协同完成主机名持久化设置。

1、使用sysctl命令临时修改当前运行时主机名:sudo sysctl kernel.hostname=your-new-hostname

2、将该设置写入/etc/sysctl.conf文件以实现重启后保留:echo 'kernel.hostname=your-new-hostname' | sudo tee -a /etc/sysctl.conf

3、编辑/etc/hosts文件,加入新主机名的本地解析记录:sudo nano /etc/hosts

4、添加或修改如下内容:127.0.0.1 localhost your-new-hostname

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

linux centos ubuntu linux系统

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
linux是嵌入式系统吗
linux是嵌入式系统吗

linux是嵌入式系统,是一种用途广泛的系统软件,其特点是:1、linux系统是完全开放、免费的;2、linux操作系统的显著优势是多用户和多任务,保证了多个用户使用互不影响;3、设备是独立的,只要安装驱动程序,任何用户都可以对任意设备进行使用和操作。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.02.23

2436

5

C++ 嵌入式系统开发入门与实践
C++ 嵌入式系统开发入门与实践

本专题将带你系统掌握 C++ 在嵌入式系统中的实战应用,内容覆盖硬件抽象、驱动开发、内存与性能优化、实时系统编程、跨平台编译构建,以及常用嵌入式框架与调试技巧,帮助开发者从零构建可运行于 MCU、ARM 等平台的高性能嵌入式项目。

2025.11.18

796

36

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

3970

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

3393

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

2573

5

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

2023.07.05

6230

7

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

2023.07.06

5862

7

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.20

3433

8

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

2023.07.20

2925

4

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习