是的,Ubuntu的hostname可以通过远程方式修改。以下是几种常见的方法:
hostnamectl
通过SSH连接到远程Ubuntu机器:
ssh username@remote_host
使用hostnamectl
命令修改hostname:
sudo hostnamectl set-hostname new_hostname
重启网络服务以应用更改(可选):
sudo systemctl restart networking
sed
编辑/etc/hostname
通过SSH连接到远程Ubuntu机器:
ssh username@remote_host
使用sed
命令直接编辑/etc/hostname
文件:
sudo sed -i 's/^old_hostname$/new_hostname/' /etc/hostname
重启网络服务以应用更改(可选):
sudo systemctl restart networking
如果你经常需要批量修改多个主机的hostname,可以使用Ansible来自动化这个过程。
安装Ansible(如果尚未安装):
sudo apt update sudo apt install ansible
创建一个Ansible playbook(例如change_hostname.yml
):
--- - hosts: all become: yes tasks: - name: Change hostname shell: echo "new_hostname" > /etc/hostname args: creates: /etc/hostname - name: Restart networking service systemd: name: networking state: restarted
运行Ansible playbook:
ansible-playbook change_hostname.yml
通过以上方法,你可以方便地远程修改Ubuntu的hostname。