如何用 hostname 命令快速查看主机名?

在Linux系统中,主机名(Hostname)是设备在网络中的唯一标识符,用于区分不同服务器或设备,查看主机名是系统管理的基础操作,以下是几种专业、可靠且常用的方法,适用于所有主流Linux发行版(如Ubuntu、CentOS、Debian等):
命令

hostname

输出示例

server01

说明

  • 这是最直接的方法,hostname 命令会直接返回当前系统的主机名。
  • 附加参数:
    • hostname -s:显示短主机名(不包含域名)。
    • hostname -f:显示完整域名(FQDN)。

通过 hostnamectl 命令(Systemd系统专用)

命令

hostnamectl

输出示例

   Static hostname: server01
         Icon name: computer-server
           Chassis: server
        Machine ID: a1b2c3d4e5f6g7h8
           Boot ID: x1y2z3a4b5c6d7e8
  Operating System: Ubuntu 22.04 LTS
            Kernel: Linux 5.15.0-86-generic
      Architecture: x86-64

说明

  • 专用于使用 Systemd 的现代Linux系统(如Ubuntu 16.04+、CentOS 7+)。
  • 可查看静态主机名(Static hostname)、动态主机名(Transient hostname)以及操作系统详情。

通过 /etc/hostname 文件查看

命令

cat /etc/hostname

输出示例

server01

说明

  • 该文件存储系统的静态主机名,重启后生效。
  • 此方法适合脚本调用或需直接读取配置的场景。

通过 uname 命令查看内核主机名

命令

uname -n

输出示例

server01

说明

  • uname -n 显示内核运行时的主机名(与 hostname 命令结果一致)。
  • 附加参数:uname -a 可查看全部系统信息(含主机名)。

通过环境变量 $HOSTNAME 查看

命令

echo $HOSTNAME

输出示例

server01

说明

  • 此环境变量由Shell动态生成,适用于Bash/Zsh等终端。
  • 注意:非所有Shell都支持,可靠性低于 hostname 命令。

通过 nmcli 命令(NetworkManager用户)

命令

nmcli general hostname

输出示例

server01

说明

  • 适用于使用NetworkManager管理网络的系统(如桌面版Ubuntu)。
  • 需提前安装NetworkManager:sudo apt install network-manager

总结与建议

  1. 常规场景:优先使用 hostnamehostnamectl(简单高效)。
  2. 脚本调用:读取 /etc/hostname 文件(避免依赖命令输出)。
  3. 永久修改主机名
    • Systemd系统:sudo hostnamectl set-hostname 新主机名
    • 传统系统:编辑 /etc/hostname 并重启。

重要提示:主机名需符合RFC协议规范(仅包含字母、数字、连字符,不含空格或特殊符号),否则可能导致网络服务异常。


引用说明基于以下权威来源:

  • Linux Man Pages(hostname(1), hostnamectl(1)
  • Filesystem Hierarchy Standard(/etc/hostname 规范)
  • Systemd官方文档(freedesktop.org)
  • GNU Coreutils手册(uname 命令)

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/8601.html

(0)
酷番叔酷番叔
上一篇 2025年7月25日 05:19
下一篇 2025年7月25日 05:34

相关推荐

  • Linux如何快速打开命令行?

    图形界面下的常用方法快捷键启动(最快捷)通用快捷键:Ctrl + Alt + T(适用于Ubuntu、Debian、Fedora等主流发行版),特殊环境:KDE Plasma:Alt + F2 输入 konsoleXFCE:Super(Windows键)搜索 “Terminal”应用程序菜单查找步骤:点击桌面左……

    2025年6月13日
    5500
  • Linux程序是如何被系统执行的呢?

    Linux程序的执行是一个涉及编译、链接、加载和运行的多阶段过程,从源代码到最终执行,需要操作系统、编译器和加载器的协同工作,下面将详细拆解这一流程,从源码到可执行文件:编译与链接Linux程序通常以高级语言(如C、C++)源码形式存在,需通过编译器转换为机器可识别的二进制指令,这一过程分为四个阶段,以C语言为……

    2025年9月17日
    2600
  • Linux粘贴快捷键为何不同?

    图形界面(GUI)粘贴适用于 GNOME、KDE、XFCE 等桌面环境:通用快捷键:Ctrl + V适用于大多数图形应用(文本编辑器、浏览器、办公软件等),鼠标中键粘贴:选中文本后,直接点击鼠标滚轮(中键) 可快速粘贴(源自 X Window 系统的剪贴板设计),终端(Terminal)粘贴不同终端模拟器的行为……

    2025年7月29日
    4200
  • Linux如何查看网络端口状态及占用情况?

    在Linux系统中,网络端口管理是系统运维和开发中的核心任务之一,无论是排查服务是否正常监听、诊断端口冲突,还是进行安全审计,都需要掌握查看网络端口的方法,Linux提供了多种命令和工具来查看端口状态、关联进程及详细信息,下面将详细介绍这些工具的使用方法及适用场景,使用netstat命令查看端口netstat是……

    2025年8月22日
    3600
  • Linux启动级别配置错误有多危险?

    Linux启动级别基础Linux传统启动级别分为7种(0-6),不同发行版可能有差异:| 级别 | 用途 | 说明 ||——|——|——|| 0 | 关机 | 系统停止运行 || 1 | 单用户模式 | 仅root权限,用于系统修复 || 2 | 多用户模式(无网络) | 无NFS服务……

    2025年7月29日
    4700

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信