麒麟os中实现本地域名强制映射需修改/etc/hosts文件,支持vim、pluma、nano三种编辑方式,修改后须用ping和getent验证生效。

如果您需要在麒麟OS中实现本地域名强制映射,例如将 test.local 解析为 192.168.1.100,或屏蔽特定广告域名,则必须修改系统级 hosts 文件。该文件位于 /etc/hosts,所有网络应用(浏览器、curl、ssh 等)在发起 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










