无法启动hostname.service:屏蔽了Unit hostname.service。
这发生在主机名更新后,尝试执行sudo服务主机名启动。
答案 0 :(得分:8)
在运行/etc/hostname
之前更新/etc/hosts
文件和service hostname restart
文件中的主机名。
在运行systemd的较新系统(例如Ubuntu 16.04)上,必须使用:
sudo hostnamectl set-hostname new-host-name
。在这里,用您的主机名编辑new-host-name
。
答案 1 :(得分:3)
如果主机名不匹配导致系统无法查找主机名,则会发生这种情况。
确保这些文件是有序的,并反映新主机名的正确输入
说您的旧主机名为:hostname.old
,新主机名为hostname.new
然后/etc/hostname
应该如下
hostname.new
和/etc/hosts
应包含以下条目:
...
127.0.0.1 hostname.new
...
答案 2 :(得分:0)
使用最新的Debian Stretch 9.6,您必须自己更改/ etc / hosts,并且 使用hostnamectl。这是一个完成所有工作的单人程序,原始文件将保存,并在日期末尾附加日期。也许这适用于其他发行版
sudo -- bash -c 'echo "Please enter new Hostname"; old=$(hostname);read host; \
sed -i.$(date "+%H%M%S%d%m%y") -e "s:$old:$host:g" /etc/hostname; \
sed -i.$(date "+%H%M%S%d%m%y") -e "s:$old:$host:g" /etc/hosts; \
hostnamectl set-hostname $host; echo "Old Name:$old and New Name is:$host"'
此后您应该重新启动以反映所有更改。
答案 3 :(得分:0)
没什么可担心的。尝试在
中重命名我的计算机名(主机名)时,我遇到了同样的问题/etc/hostname
/etc/hosts
编辑两个文件后,命令sudo service hostname restart
返回相同的错误。
我只是重新启动了计算机,然后看到计算机名(主机名)已成功更改。 只需重新启动计算机就可以了。