溫馨提示×

怎樣批量修改ubuntu的hostname

小樊
51
2025-08-31 14:46:12
欄目: 智能運維

在Ubuntu系統中,批量修改多個主機的hostname可以通過編寫腳本來實現。以下是一個簡單的步驟指南,用于批量修改多個Ubuntu主機的hostname:

方法一:使用Ansible自動化工具

如果你熟悉Ansible,可以使用它來批量修改hostname。

  1. 安裝Ansible: 在控制節點上安裝Ansible。

    sudo apt update
    sudo apt install ansible
    
  2. 創建Ansible Playbook: 創建一個名為change_hostname.yml的文件,內容如下:

    ---
    - hosts: all
      become: yes
      tasks:
        - name: Set new hostname
          hostname:
            name: "{{ item }}"
          loop: "{{ hostnames }}"
    

    其中,hostnames是一個包含新主機名的列表。

  3. 運行Ansible Playbook: 在控制節點上運行以下命令,傳入新主機名列表:

    ansible-playbook -i inventory_file change_hostname.yml --extra-vars "hostnames='new-hostname1 new-hostname2 new-hostname3'"
    

    其中,inventory_file是你的主機清單文件。

方法二:使用SSH和腳本

如果你不想使用Ansible,可以使用SSH和腳本來批量修改hostname。

  1. 創建腳本: 創建一個名為change_hostname.sh的腳本,內容如下:

    #!/bin/bash
    
    # 新主機名列表
    hostnames=("new-hostname1" "new-hostname2" "new-hostname3")
    
    # SSH連接信息
    ssh_user="your_ssh_user"
    ssh_host="your_ssh_host"
    
    # 循環修改每個主機的hostname
    for hostname in "${hostnames[@]}"; do
      ssh -o StrictHostKeyChecking=no "$ssh_user@$ssh_host" "sudo hostnamectl set-hostname $hostname"
    done
    
  2. 賦予腳本執行權限

    chmod +x change_hostname.sh
    
  3. 運行腳本

    ./change_hostname.sh
    

方法三:使用Puppet

如果你熟悉Puppet,也可以使用它來批量修改hostname。

  1. 安裝Puppet: 在控制節點上安裝Puppet。

    sudo apt update
    sudo apt install puppet
    
  2. 創建Puppet Manifest: 創建一個名為change_hostname.pp的文件,內容如下:

    class change_hostname {
      $hostnames = ['new-hostname1', 'new-hostname2', 'new-hostname3']
    
      host { $hostnames:
        ensure => present,
        name   => $hostname,
      }
    }
    
    node 'your_node_name' {
      include change_hostname
    }
    
  3. 應用Puppet Manifest: 在控制節點上運行以下命令:

    puppet apply change_hostname.pp
    

注意事項

  • 在修改hostname之前,確保你有足夠的權限(通常是root權限)。
  • 修改hostname可能會影響正在運行的服務和應用程序,建議在非高峰時段進行操作。
  • 確保所有主機都已經配置好SSH無密碼登錄,以便腳本能夠順利執行。

通過以上方法,你可以批量修改Ubuntu主機的hostname。選擇適合你的工具和方法進行操作即可。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女