标签导航:

如何远程修改linux主机名

本文介绍两种远程修改Linux主机名的方法,一种是使用SSH命令,另一种是使用Ansible自动化工具。

方法一:通过SSH远程修改主机名

  1. 连接远程主机: 使用SSH客户端连接到您的Linux服务器。命令格式为:ssh 用户名@服务器IP地址 (例如:ssh john@192.168.1.100)。

  2. 修改主机名: 使用以下命令修改主机名,将"新主机名"替换为您想要的主机名:

    sudo hostnamectl set-hostname "新主机名"
  3. 更新/etc/hosts文件 (可选): 为了确保本地机器也能识别新的主机名,您可以编辑/etc/hosts文件。使用以下命令打开该文件:

    sudo nano /etc/hosts

    找到127.0.0.1 localhost 旧主机名这一行,将"旧主机名"替换为"新主机名"。保存并关闭文件。

  4. 断开连接: 修改完成后,输入exit命令退出SSH连接。

方法二:使用Ansible自动化批量修改主机名

如果您需要修改多个Linux主机的名称,Ansible是一个更有效率的选择。

  1. 安装Ansible: 在您的本地机器上安装Ansible。具体安装方法请参考Ansible官方文档。

  2. 创建Ansible playbook: 创建一个名为change_hostname.yml的文件,内容如下:

    ---
    - name: Change hostname of remote Linux hosts
      hosts: all
      tasks:
        - name: Set new hostname
          ansible.builtin.shell: "sudo hostnamectl set-hostname {{ new_hostname }}"
          vars:
            new_hostname: "新主机名"
  3. 准备inventory文件: 创建一个inventory文件 (例如inventory),列出需要修改主机名的服务器IP地址和用户名。 例如:

    192.168.1.100 ansible_user=john
    192.168.1.101 ansible_user=jane
  4. 运行Ansible playbook: 使用以下命令运行playbook:

    ansible-playbook -i inventory change_hostname.yml

选择哪种方法取决于您的需求。对于单台服务器,SSH命令足够;对于多台服务器,Ansible更便捷高效。 请记住将"新主机名"替换为您实际想要的主机名。