必须修改/etc/hosts文件,其映射优先级高于dns;可用vim(命令行高效)、pluma(图形界面友好)、nano(新手易用)三种编辑器操作,保存后立即生效,并需通过ping和getent验证解析是否成功。

如果您需要在麒麟OS中自定义域名解析行为,使特定域名指向指定IP地址,则必须修改系统级 hosts 文件。该文件位于 /etc/hosts,其映射优先级高于DNS查询,适用于开发调试、屏蔽广告或内网服务访问等场景。以下是三种互不依赖、可独立使用的修改方法:
一、使用 vim/vi 命令行编辑器
vim 是麒麟OS默认预装的终端文本编辑器,具备高效定位与批量操作能力,适合熟悉快捷键的用户。修改需 root 权限,保存后立即生效,无需重启网络服务或系统。
1、打开终端,执行命令获取 root 权限并启动编辑:sudo vim /etc/hosts
2、进入编辑模式:按 i 键
3、在文件末尾新增一行,格式为“IP地址 + 至少一个空格 + 域名”,例如:192.168.1.100 test.local www.test.local
4、退出编辑模式:按 Esc 键
5、保存并退出:输入 :wq 后回车
二、使用 pluma 图形文本编辑器
pluma 是麒麟桌面版(V10/V11)默认搭载的 GNOME 兼容编辑器,支持中文界面与鼠标操作,避免命令行记忆负担,特别适合不熟悉终端操作的用户。
1、打开终端,输入命令以管理员权限启动 pluma:sudo pluma /etc/hosts
2、在打开的窗口中,滚动至文件末尾
3、另起一行,输入目标 IP 与域名,中间用空格分隔,例如:127.0.0.1 adtracker.example.com
4、点击菜单栏“文件 → 保存”或按 Ctrl+S
5、关闭窗口,修改即时生效
三、使用 nano 编辑器
nano 提供底部操作提示栏,所有功能键可见,无需记忆命令,是首次编辑 hosts 文件用户的首选工具。其保存逻辑直观,误操作风险最低。
1、在终端中运行:sudo nano /etc/hosts
2、使用方向键移动光标至文件末尾
3、输入新条目,如:192.168.224.131 node1.test.com node1
4、按 Ctrl+O 保存,回车确认文件名
5、按 Ctrl+X 退出编辑器
四、验证 hosts 修改是否生效
修改完成后必须验证解析行为是否被系统采纳。仅检查文件内容不能代表实际生效,需通过命令行工具触发真实解析路径,排除缓存干扰。
1、执行 ping 测试:ping -c 3 test.local,观察回复来自您指定的 IP
2、使用 getent 验证系统级解析调用:getent hosts test.local,输出应为“IP 域名”格式
3、若返回空或错误,检查是否在 /etc/nsswitch.conf 中 hosts 行包含 dns——若仅含 files myhostname,需补全为 files dns myhostname











