You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu系统重启后/etc/hosts文件为空,如何恢复?

问题原因分析
  • 编辑操作异常中断:比如用nano编辑时没正常保存就强制退出,或者系统重启时文件写入还没完成,直接导致文件被清空。
  • 文件权限/属性异常:如果错误修改了/etc/hosts的权限,或者给它加了immutable(不可修改)属性,后续的写入操作可能失败,最终表现为文件为空。
  • 第三方工具自动重置:某些安全软件、网络管理工具或者自定义脚本,会在系统重启后自动重置/etc/hosts到默认状态。
  • 文件系统损坏:/etc所在的分区如果出现文件系统错误,可能导致文件内容丢失或无法正常读取。
无需新建文件的恢复方法
  • 检查自动备份文件:
    • nano编辑器默认会生成备份文件,后缀是~,直接运行cat /etc/hosts~查看是否有之前的内容,有的话用sudo cp /etc/hosts~ /etc/hosts恢复。
    • 查看系统备份目录/var/backups/,用ls /var/backups/hosts*找相关备份,找到后用sudo cp [备份文件名] /etc/hosts恢复。
  • 利用文件系统日志恢复(针对ext系列文件系统):
    • 如果是根分区,需要进入单用户模式或用live CD启动,卸载目标分区后,运行sudo debugfs -R 'logdump' /dev/[你的分区设备],查找和hosts相关的日志记录,提取内容后写入原文件。
  • 查找临时文件副本:
    • 在/tmp/目录下搜索包含你设置的域名的文件,运行grep -r "subdomain.mydomain.com" /tmp/,如果找到相关临时文件,直接把内容复制到/etc/hosts。
  • 从命令历史找回内容:
    • 查看root用户的命令历史,运行sudo cat ~root/.bash_history,找到之前编辑/etc/hosts的相关操作,回忆或提取之前写入的内容,手动补回原文件。

内容的提问来源于stack exchange,提问作者S Mev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 10:01:15