本文主要是介绍WSL2的Ubuntu22.04修改hostname主机名,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
WSL2修改主机名
参考:WSL 修改 hostname_wsl修改主机名-CSDN博客 和 How to change the hostname of Ubuntu running in Windows WSL
如果想在不修改windows主机名的情况下,在WSL中修改主机名,可以使用WSL的配置文件。
sudo vim /etc/wsl.conf
添加如下配置
[network]
hostname = <hostname>
generateHosts = false
其中hostname修改为你想要的主机名,generateHosts选项代表不自动生成hosts文件(我的理解是不要自动重置)。
随后修改/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 my-old-hostname.localdomain my-old-hostname
192.168.0.138 host.docker.internal
192.168.0.138 gateway.docker.internal
127.0.0.1 kubernetes.docker.internal# 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-allrouter
你需要做的是将文件中my-old-hostname
修改为你刚刚更新的新用户名,其他内容不动。在我的电脑上第一个my-old-hostname
后面只有一个点,不带localdomain
。
127.0.1.1 new-hostname.localdomain new-hostname
回到windows的命令行中重启wsl即可生效。
wsl --shutdown 虚拟机名称
初次修改后我遇到了这个sudo切换的错误,这是因为你的/etc/hosts
没有正常修改为新的hostname,请检查修改是否正确。
❯ sudo su -
sudo: unable to resolve host wsl-ubuntu: Name or service not known
这篇关于WSL2的Ubuntu22.04修改hostname主机名的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!