6人参与 • 2026-03-19 • Linux
问题核心:wsl默认强制同步windows主机名,会覆盖ubuntu本地/etc/hostname配置,导致重启后修改失效,需通过专属配置文件禁用同步机制。
笔记本电脑搭载wsl(windows subsystem for linux)ubuntu系统,手动修改主机名后,重启wsl/电脑,主机名恢复默认,修改未永久生效。
先确认本地配置文件无错误,避免重复操作,打开ubuntu终端执行以下命令:
查看主机名配置文件,核对是否为新主机名cat /etc/hostname
root@elwyn:/home/elwyn# cat /etc/hostname elwyn #这里已经是我修改后的主机名
查看hosts映射文件,核对127.0.1.1对应的主机名是否一致 grep "127.0.1.1" /etc/hosts
root@elwyn:/home/elwyn# grep "127.0.1.1" /etc/hosts 127.0.1.1 elwyn elwyn # 以上显示已经修改成功了
异常处理:若显示旧主机名,重新用vim编辑两个文件,修改为目标主机名并保存。
该文件用于禁用主机名同步、固定ubuntu本地主机名,是解决失效的关键
终端执行命令,编辑wsl.conf文件
root@elwyn:/home/elwyn# vim /etc/wsl.conf [network] hostname=elwyn generatehosts=false
粘贴以下内容,将新主机名替换为自定义名称(仅支持字母、数字、横杠) [network] hostname = 自定义新主机名 generatehosts = false
编辑hosts文件 sudo vim /etc/hosts
确保文件包含以下内容,替换为自己的新主机名 127.0.0.1 localhost 127.0.1.1 自定义新主机名 ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters
root@elwyn:/home/elwyn# vim /etc/hosts # this file was automatically generated by wsl. to stop automatic generation of this file, add the following entry to /etc/wsl.conf: # [network] # generatehosts = false 127.0.0.1 localhost 127.0.1.1 elwyn elwyn # the following lines are desirable for ipv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters
仅关闭ubuntu终端无效,需完全终止wsl进程,在windows powershell(普通权限即可)执行:
wsl --shutdown

重启完成后,重新打开ubuntu终端,验证修改结果:
hostname
终端显示新主机名,且提示符同步更新,即为生效。
wsl --set-version ubuntu 2适合临时更改,无需修改配置文件,重启wsl后自动恢复:
sudo hostname 新主机名
以上就是wsl ubuntu修改主机名重启后失效的解决方案的详细内容,更多关于wsl ubuntu修改主机名重启失效的资料请关注代码网其它相关文章!
您想发表意见!!点此发布评论
版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。
发表评论