亚洲国产第一_开心网五月色综合亚洲_日本一级特黄特色大片免费观看_久久久久久久久久免观看

Hello! 歡迎來(lái)到小浪云!


如何批量修改Linux hostname


如何批量修改Linux hostname

本文介紹兩種在Linux系統(tǒng)中批量修改主機(jī)名的方法:使用shell腳本ansible

方法一:使用Shell腳本批量修改主機(jī)名

此方法適用于少量主機(jī)。

步驟1:準(zhǔn)備主機(jī)列表

創(chuàng)建一個(gè)文本文件(例如hosts.txt),每行包含一個(gè)主機(jī)名:

host1 host2 host3

步驟2:編寫(xiě)Shell腳本

創(chuàng)建一個(gè)Shell腳本(例如change_hostname.sh),內(nèi)容如下:

#!/bin/bash  while read -r host; do   read -p "請(qǐng)輸入新的主機(jī)名 for $host: " new_hostname   ssh user@$host "sudo hostnamectl set-hostname $new_hostname" done < hosts.txt 

將user替換為你的用戶(hù)名。確保已配置SSH密鑰免密登錄。

步驟3:賦予腳本執(zhí)行權(quán)限

chmod +x change_hostname.sh

步驟4:運(yùn)行腳本

./change_hostname.sh

腳本將依次提示你輸入每個(gè)主機(jī)的新主機(jī)名。

方法二:使用Ansible批量修改主機(jī)名 (推薦)

Ansible更適合管理大量主機(jī)。

步驟1:安裝Ansible

在你的控制節(jié)點(diǎn)上安裝Ansible。

步驟2:編寫(xiě)Ansible playbook

創(chuàng)建一個(gè)Ansible playbook文件(例如change_hostname.yml):

--- - hosts: all   tasks:     - name: 修改主機(jī)名       hostname:         name: "{{ inventory_hostname }}"

步驟3:配置Ansible inventory

創(chuàng)建一個(gè)Ansible inventory文件(例如hosts),列出所有需要修改主機(jī)名的主機(jī):

[all] host1 host2 host3

步驟4:運(yùn)行Ansible playbook

ansible-playbook change_hostname.yml

Ansible將連接到所有指定主機(jī)并修改其主機(jī)名。

注意事項(xiàng):

  • 權(quán)限: 確保你有權(quán)限通過(guò)SSH訪(fǎng)問(wèn)所有目標(biāo)主機(jī),并且目標(biāo)主機(jī)上允許使用sudo命令。
  • 網(wǎng)絡(luò)連接: 確保所有主機(jī)都能互相通信。
  • 備份: 修改主機(jī)名前,建議備份相關(guān)配置文件。
  • Ansible配置: 確保Ansible已正確配置,并且你的控制節(jié)點(diǎn)可以無(wú)密碼訪(fǎng)問(wèn)所有目標(biāo)主機(jī)。

選擇哪種方法取決于你的主機(jī)數(shù)量和管理經(jīng)驗(yàn)。對(duì)于少量主機(jī),Shell腳本足夠;對(duì)于大量主機(jī),Ansible更有效率和易于管理。

相關(guān)閱讀