在 Linux 系统中,获取 hostname(主机名)有多种常用方法,以下按使用场景和命令分类说明:
hostnamehostname
直接输出当前主机名。
uname -nuname -n
显示网络节点主机名(等同于 hostname)。
cat /etc/hostnamecat /etc/hostname
查看系统持久化保存的主机名(多数发行版适用)。
hostnamectlhostnamectl
输出示例:
Static hostname: server01
Icon name: computer-vm
...
只获取主机名:
hostnamectl --static
echo $HOSTNAME
(注意:非所有 shell 都默认设置)
python3 -c "import socket; print(socket.gethostname())"
#include <unistd.h>
char name[256];
gethostname(name, sizeof(name));
hostname -f
或
hostname --fqdn
hostname 新名字(重启失效)hostnamectl set-hostname 新名字如果你有特定发行版(如 CentOS、Ubuntu、Alpine)或使用场景(脚本、容器、Ansible 等),可以告诉我,我可以给更针对性的方法。