溫馨提示×

如何通過腳本修改Linux hostname

小樊
36
2025-08-29 08:53:08
欄目: 智能運維

在 Linux 系統中,可以通過多種方式使用腳本來修改主機名。以下是幾種常見的方法:

方法一:使用 hostnamectl 命令(適用于 systemd)

如果你的系統使用 systemd,可以使用 hostnamectl 命令來更改主機名。

#!/bin/bash

# 設置新的主機名
NEW_HOSTNAME="new-hostname"

# 使用 hostnamectl 設置新主機名
sudo hostnamectl set-hostname "$NEW_HOSTNAME"

# 可選:更新 /etc/hosts 文件中的主機名
sed -i "s/^127.0.0.1.*/127.0.0.1   $NEW_HOSTNAME/" /etc/hosts

echo "Hostname changed to $NEW_HOSTNAME"

方法二:直接修改 /etc/hostname/etc/hosts

這種方法適用于大多數 Linux 發行版。

#!/bin/bash

# 設置新的主機名
NEW_HOSTNAME="new-hostname"

# 備份原始 /etc/hostname 文件
sudo cp /etc/hostname /etc/hostname.bak

# 寫入新的主機名
echo "$NEW_HOSTNAME" | sudo tee /etc/hostname

# 備份原始 /etc/hosts 文件
sudo cp /etc/hosts /etc/hosts.bak

# 更新 /etc/hosts 文件中的舊主機名
sudo sed -i "s/^127.0.0.1.*/127.0.0.1   $NEW_HOSTNAME/" /etc/hosts

echo "Hostname changed to $NEW_HOSTNAME"

方法三:使用 hostname 命令(臨時更改)

請注意,使用 hostname 命令更改的主機名在重啟后會恢復為原始值。

#!/bin/bash

# 設置新的主機名
NEW_HOSTNAME="new-hostname"

# 使用 hostname 命令設置新主機名
sudo hostname "$NEW_HOSTNAME"

echo "Hostname temporarily changed to $NEW_HOSTNAME"

注意事項

  • 更改主機名后,可能需要重新啟動某些服務或應用程序才能使更改生效。
  • 確保新的主機名符合系統的命名規范,通常只允許字母、數字、連字符和點號,并且不能以連字符或點號開頭或結尾。
  • 在生產環境中執行這些操作時,請確保你有足夠的權限,并且已經做好了相應的備份。

通過以上方法,你可以輕松地通過腳本修改 Linux 主機名。

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