在 Linux 系统中,主机名(hostname)是计算机在网络中的标识符,主要用于区分设备并支持多种网络服务。主机名可以是临时的,也可以是永久的,根据使用场景可以灵活选择。
文章目录
主机名是计算机或设备的逻辑名称,用于在网络中标识其身份。主机名在网络管理和服务配置中起着重要作用。
例如:
主机名通常分为以下两种类型:
my-server,仅包含设备名称。my-server.example.com。主机名通常由以下字符组成:
根据 RFC 1123,主机名最长可以达到 253 个字符,但实际中建议不超过 64 个字符以确保兼容性。
临时设置的主机名只在当前会话或系统运行期间有效。一旦系统重启,主机名会恢复到之前的状态。临时设置主机名的场景包括测试、临时调试等。
hostname 命令hostname 命令是最常用的工具之一,用于快速查看和更改主机名。步骤:hostname示例输出:
my-old-hostsudo hostname <新主机名>示例:
sudo hostname my-temp-hosthostname 命令确认更改是否成功:hostname输出结果应为 my-temp-host。hostname 命令更改主机名后,许多服务可能不会立即识别更改。如果需要立即生效,可以重启相关服务。/proc/sys/kernel/hostname/proc,其中 /proc/sys/kernel/hostname 文件存储当前的主机名。步骤:cat /proc/sys/kernel/hostnameecho 命令直接更改:echo "my-temp-host" | sudo tee /proc/sys/kernel/hostname/proc/sys/kernel/hostname 文件内容:cat /proc/sys/kernel/hostname永久设置主机名需要修改配置文件或使用系统管理工具。此类设置在系统重启后仍然有效,通常用于生产环境或长期需要的设备。
hostnamectl 命令hostnamectl 是 systemd 提供的管理工具,可用于永久更改主机名,同时支持设置静态主机名、临时主机名和转译主机名。步骤:hostnamectl示例输出:
Static hostname: my-old-host
Transient hostname: n/a
Pretty hostname: n/asudo hostnamectl set-hostname <新主机名>示例:
sudo hostnamectl set-hostname my-permanent-hosthostnamectl 查看新主机名:hostnamectl/etc/hosts 文件/etc/hosts 文件,确保主机名解析正确:sudo nano /etc/hosts将旧主机名替换为新主机名。例如:
127.0.1.1 my-permanent-hostsudo systemctl restart systemd-hostnamed对于非 systemd 系统(如某些较老的 Linux 发行版),可以手动编辑配置文件。
步骤:/etc/hostname 文件/etc/hostname 文件:sudo nano /etc/hostname将文件内容替换为新主机名,例如:
my-permanent-host/etc/hosts 文件/etc/hosts 文件:sudo nano /etc/hosts更新文件中指向主机名的行,例如:
127.0.0.1 localhost
127.0.1.1 my-permanent-hostsudo rebootsudo),普通用户无法直接更改。hostnamectl。hostname、hostnamectl 命令以及编辑配置文件,可以高效地完成主机名的设置和管理。无界 VPN 电脑版下载:使用教程和常见问题解答2025年3月11日:高速(马斯特里赫特)荷兰Reddit机场和日本(臼杵温泉)节点Shadowsocks快速服务器搭建教程git error: unable to write sha1 filename … Permission denied哔哩哔哩 iOS 手机 APP 居然还在用摇一摇广告安卓v2ray节点无法使用:解决方案和使用教程青云梯机场怎么样?青云梯机场2024最新评测公众号入门:如何区分微信订阅号和服务号? 附注册教程Clash for Windows 删除其 Github 仓库托管的Release包,开发者Fndroid表示停止更新日本免费VPN:优势、使用方法和常见问题