插件窝 干货文章 如何通过SSH修改远程主机名

如何通过SSH修改远程主机名

hostname 主机 修改 sudo 939    来源:    2025-05-06

通过SSH修改远程主机名

要通过SSH修改远程Linux主机的主机名,可以按照以下步骤操作:

方法一:临时修改主机名(重启后失效)

ssh username@remote_host
sudo hostname new_hostname
exit

方法二:永久修改主机名(适用于大多数现代Linux发行版)

  1. 连接到远程主机:
ssh username@remote_host
  1. 修改主机名文件(根据发行版选择适当方法):

对于使用systemd的系统(Ubuntu 16.04+, CentOS/RHEL 7+, Debian 8+等)

sudo hostnamectl set-hostname new_hostname

对于传统系统(手动编辑文件)

# 编辑/etc/hostname文件
sudo nano /etc/hostname  # 或使用vi等其他编辑器
# 删除所有内容,只写入新主机名,然后保存退出
  1. 更新/etc/hosts文件(可选但推荐):
sudo nano /etc/hosts
# 将127.0.1.1或127.0.0.1后面的旧主机名改为新主机名
# 例如修改:127.0.1.1 old_hostname → 127.0.1.1 new_hostname
  1. 退出SSH会话并重新登录验证:
exit
ssh username@new_hostname  # 或使用IP地址
hostname  # 验证新主机名

注意事项

  1. 需要root权限或sudo权限才能修改主机名
  2. 修改后可能需要重启某些服务才能完全生效
  3. 如果使用主机名连接,确保DNS或/etc/hosts文件已更新
  4. 在集群环境中修改主机名要特别小心,可能需要额外的配置更改

单命令完成方法(如果允许密码通过STDIN)

ssh -t username@remote_host "sudo hostnamectl set-hostname new_hostname && sudo sed -i 's/old_hostname/new_hostname/g' /etc/hosts"

注意:这种方法需要配置sudo无需密码,或准备好处理密码提示。