以下提供的三种方法需要尝试,方法一和方法三值得一试。
1.方法一(永久更换)
sudo hostnamectl set-hostname <newhostname>
这条命令会删除/etc/hostname文件中的主机名,然后替换为新的主机名。与此同时我们也需要更新/etc/hosts文件,如下指令。
sudo vim /etc/hosts
需要将文件内旧的主机名删除,替换为新的主机名,保存文件就行了。
2.方法二(临时更换)
sudo hostname <new-hostname>
这条命令不会更改/etc/hostname文件中的静态主机名(static hostname),它更改的只是临时主机名(transient hostname)。所以重启计算机后会回到旧的主机名。
静态主机名保存在/etc/hostname文件中。
3.方法三(针对普通用户命令行前主机名不生效的方法)
linux下有一个PS1这个变量,它默认设置的是:[用户名@主机名 目前所在的目录的名称] $ 的格式。
要永久修改主机名,就要把它写入配置文件内,配置文件是这个:~/.bashrc前面的~是用户目录,如果你想全局生效的话,就要写到/etc/.bashrc中。将文件内PS1变量所对应的内容改变就可以了。(不同用户均可以到用户目录下的.bashrc文件中查看修改)
最后使用
source ~/.bashrc
指令重新加载你的bash配置文件,并更新命令行提示符,命令行前的主机名就会变为自己设置的名字了。