当前位置:首页 > Active Directory

Windows/Linux hosts 文件修改详细教程

摘要:本文为运维通用hosts文件修改最全实操教程,详细讲解Windows、Linux(CentOS、Ubuntu)系统hosts文件路径、修改方法、权限设置、缓存刷新、生效验证及生产环境注意事项,附带可直接复制执行的命令,适配测试调试、业务预发布、域名解析劫持等场景,零基础可直接套用。

目录(页面锚点可跳转)


一、前言:什么是hosts文件?作用是什么?

hosts是操作系统内置的本地域名解析配置文件,其解析优先级高于公共DNS、本地DNS服务器,是运维、开发人员最常用的本地调试工具。系统在访问域名时,会优先读取本机hosts文件中的IP映射记录,无匹配记录时才会向DNS服务器发起解析请求。

日常工作中,hosts文件主要用于:业务预发布测试、内网服务器域名绑定、域名解析临时切换、屏蔽恶意广告域名、本地开发环境域名调试、故障解析排查等场景。该修改仅对当前本机生效,不会影响局域网、公网其他设备。

重要提示:hosts属于临时调试工具,仅适用于测试、排错场景,企业生产正式业务禁止长期依赖hosts做域名解析,需统一使用DNS服务管理。

二、修改hosts前期准备与规范说明

1、权限准备要求

  • Linux系统:必须使用root超级管理员权限操作,普通用户无写入、保存权限,修改会提示权限拒绝。

  • Windows系统:必须以管理员身份打开编辑器,直接双击打开hosts文件编辑,保存会提示权限不足、无法保存。

2、hosts标准书写规范

全局通用统一格式:IP地址 空格 域名,支持一个IP对应多个域名,#号为注释符号,注释内容不会生效。

# 标准格式示例
127.0.0.1       localhost
192.168.1.10  test.com
# 192.168.1.49  test.com 注释废弃解析记录

3、操作前置规范

  • 修改前必须备份原始hosts文件,避免误删、格式错误导致解析故障,方便一键回滚。

  • 确认目标服务器IP、业务域名,保证IP端口通、服务器网络正常。

  • 禁止使用特殊符号、中文、乱码,仅支持英文空格、#注释、数字、字母。

三、Windows/Linux系统hosts文件修改完整步骤

1、Linux系统(CentOS/Ubuntu通用)修改教程

Linux系统hosts文件绝对路径:/etc/hosts

步骤1:备份原始文件(必做)

cp /etc/hosts /etc/hosts_bak_$(date +%Y%m%d)

步骤2:root权限编辑hosts文件

vim /etc/hosts

步骤3:编辑保存

i 进入编辑模式,文件末尾新增IP域名映射记录,编辑完成后按 ESC,输入 :wq 回车保存退出。

2、Windows系统(Win10/Win11/Server)修改教程

Windows系统hosts文件绝对路径:C:\Windows\System32\drivers\etc\hosts 

  1. 桌面左下角点击开始菜单,搜索记事本,右键选择以管理员身份运行

  2. 点击记事本左上角【文件】-【打开】,粘贴上方完整路径,文件类型选择【所有文件】,即可看到hosts文件。

  3. 打开文件后,在末尾新增解析记录,按下 Ctrl+S 保存文件,关闭记事本即可。
    PixPin_2026-08-29_20-57-01.pngPixPin_2026-08-29_20-57-57.png

避坑提示:Windows普通权限打开hosts编辑,会直接保存失败,所有修改无效,管理员运行是修改成功的核心关键。也可以cmd运行drivers进入etc目录打开hosts文件

四、修改后刷新缓存、验证生效方法

1、Linux系统生效与验证

常规Linux系统修改hosts后即时生效,开启DNS缓存服务的服务器需手动刷新缓存。

# CentOS 刷新nscd缓存
systemctl restart nscd

# Ubuntu 刷新系统DNS缓存
systemctl restart systemd-resolved

生效验证命令,精准读取hosts解析结果:

# 读取本地hosts解析
getent www.powershell.com.cn

# 连通性测试
ping www.powershell.com.cn

2、Windows系统生效与验证

Windows修改hosts后需手动刷新DNS缓存,否则系统依旧读取旧解析记录。

步骤1:以管理员身份打开CMD命令提示符,执行刷新命令

ipconfig /flushdns

步骤2:验证解析是否生效

ping www.powershell.com.cn

验证技巧:nslookup默认查询公网DNS,无法精准验证hosts,优先使用ping命令确认本机解析结果。


五、生产环境修改hosts核心禁忌与注意事项

  • 严禁无备份修改:生产服务器修改hosts必须提前备份,一旦格式错误、内容清空,会导致服务器主机名解析异常、外网域名无法访问,引发业务故障。

  • 区分环境使用:hosts仅单机生效,集群、多节点服务器禁止逐台hosts维护解析,正式环境必须使用内网DNS统一配置。

  • 及时清理临时记录:业务测试、预发布完成后,立即删除hosts临时调试记录,后续IP变更极易引发隐性解析冲突,排查难度极高。

  • 严格管控文件权限:Linux hosts文件权限保持默认644,禁止开放普通用户写入权限,防止恶意篡改解析,导致流量劫持。

  • 规范书写格式:禁止多余符号、中文、空格错乱,一条解析对应一行,废弃记录优先注释而非删除,方便回溯。

生产风险提醒:绝大多数线上解析异常故障,均是hosts临时记录未清理导致,运维操作需养成“测试完即清理、修改必备份”的标准化习惯。

综上所述,hosts文件修改是运维、开发必备的基础实操技能,操作简单但容错率极低。日常测试调试可灵活使用本机hosts实现域名自定义解析,生产环境严格限制使用场景、规范操作流程、做好备份与收尾清理工作,即可完全规避解析故障,保障业务稳定运行。

扫描二维码推送至手机访问

版权声明:本文由PowerShell中文社区发布,如需转载请注明出处。

本文链接:https://www.powershell.com.cn/?id=194

“Windows/Linux hosts 文件修改详细教程” 的相关文章

通过powerShell命令彻底删除AD域控回收站信息

通过powerShell命令彻底删除AD域控回收站信息

大家知道,如果AD域控启用回收站后,当AD域控管理员删除计算机账号或者域账号等,被删除的信息将会移入AD回收站,那如何彻底从回收站删除呢,如下通过powersehll命令即可实现。首先使用管理员运行powersehll,执行如下命令。#列出来所有被删除至AD回收站的对象信息 $obj=Get-AD…

Windows Server AD单机域控部署教程(2019/2022通用)

Windows Server AD单机域控部署教程(2019/2022通用)

一、前言Active Directory(AD域)是Windows企业内网核心服务,用于统一管理域内电脑、员工账号、权限、桌面策略,适合中小企业、实验室、办公统一认证场景。本文讲解单机单林单域控完整部署流程,提供图形化+PowerShell两种部署方式,全程可直接照着操作,部署完成即可投入测试/小型…

AD域控常见故障排查与标准化处理方案

AD域控常见故障排查与标准化处理方案

Active Directory(AD)域控是企业Windows域环境的核心基础设施,承担着账号认证、权限管控、组策略分发、目录数据复制等关键职能。域控故障会直接导致终端无法加域、用户登录失败、组策略失效、权限异常等问题,严重影响企业办公与业务系统稳定运行。本文结合运维实战,梳理AD域控高频故障场景…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。