查看当前的主机名
首先我们使用hostname命令来查看当前的主机名。
hostname
hostnamectl
方法1:修改配置文件
主机名保存在/etc/hostname文件里,所以我们可以打开这个文件,手动编辑主机名。
sudo nano /etc/hosts
把旧的主机名删除,替换为新的主机名,保存文件就行了。要注意大小写。
方法2:hostnamectl命令
命令语法为:
sudo hostnamectl set-hostname
这条命令会删除/etc/hostname文件中的主机名,然后替换为新的主机名。和第一种方法一样,我们也需要更新/etc/hosts文件。这两种方法的本质都是一样的。
方法3:hostname命令进行临时更改
如果只需要临时更改主机名,可以使用hostname命令。
sudo hostname
这条命令不会更改/etc/hostname文件中的静态主机名(static hostname),它更改的只是临时主机名(transient hostname)。所以重启计算机后会回到旧的主机名。
静态主机名保存在/etc/hostname文件中。
在linux中修改主机名称是经常使用的,主机名称可以很轻松的识别服务器,centos7系统新增了hostnamectl命令
[root@hostname ~]# hostnamectl -h
-h --help 显示帮助
--version 显示安装包的版本
--transient 修改瞬态主机名
--static 修改静态主机名
--pretty 修改灵活主机名
-P --privileged 在执行之前获得的特权
--no-ask-password 输入密码不提示
-H --host=[USER@]HOST 操作远程主机
Commands:
status 显示当前主机名设置
set-hostname NAME 设置系统主机名
set-icon-name NAME 为主机设置icon名
set-chassis NAME 设置主机平台类型名
set-deployment NAME 为主机设置部署环境
set-location NAME 为主机设置位置
hostname有三种状态 transient(瞬态)static(静态) pretty (灵活)
静态主机名也称为内核主机名,是系统在启动时从/etc/hostname内自动初始化的主机名
瞬态主机名是在系统运行时临时分配的主机名
灵活主机名则允许使用特殊字符的主机名
[root@hostname ~]$ hostnamectl --transient set-hostname test
[root@hostname ~]$ hostnamectl --static set-hostname test
如果不加 —static参数,默认设置为静态主机名
[root@hostname ~]#hostnamectl set-hostname test
[root@test ~]# ← 重新登录后显示
另外hostnamectl命令还可查询内核版本,操作系统等信息
比uname -a; cat /etc/issue; cat /etc/redhat-release; hostname
等命令查询的信息更详细。
[root@ceshi ~]# hostnamectl 或 hostnamectl status
Static hostname: ceshi
Icon name: computer-vm
Chassis: vm
Machine ID: a9fddf983511411896b8e583bb052faa
Boot ID: 96e1a92ba9ae4f8a988e7043f61a9f66
Virtualization: kvm
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-862.6.3.el7.x86_64
Architecture: x86-64