ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Linux/Mac怎样修改自己的主机名?

2021-05-11 16:01:26  阅读:230  来源: 互联网

标签:ComputerName set hostname 主机名 Mac Linux scutil LocalHostName


Linux修改主机名

如下图,你登录服务器后,@后面的名字就是主机名:

假设你有多台服务器,可能你为了区分哪台是哪台,又或者你想@后面的主机名有相同的格式,那么就要修改主机名。

临时修改

hostname 主机名

举例:

hostname centos-1

退出终端重新登录即可生效,但重启服务器会失效。

永久修改

hostnamectl set-hostname 主机名

举例:

hostnamectl set-hostname centos-2

退出终端重新登录即可生效,重启服务器后同样生效。

原理

hostnamectl set-hostname设置主机名,其实上就是把主机名写入到/etc/hostname文件中,所以能永久生效。

所以,理论上,你直接修改/etc/hostname这个文件的值,然后退出终端重进,效果是完全一样的,但实际上,我虚拟机(CentOS Linux release 7.5.1804 (Core))测试成功,线上一台(CentOS Linux release 7.0.1406 (Core))设置成功,而线上另一台(CentOS Linux release 7.4.1708 (Core))测试不成功,建议还是使用hostnamectl set-hostname命令修改,但该命令会把所有字母自动变小写。

注意:如果是VPS一般都是不带DNS服务器地址的,所以你一设置hostname,应该是所有域名都ping不通,所以你要自己添加DNS地址。

DNS地址在以下地址添加:

vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0 

BOOTPROTO=static

 ONBOOT=yes 

IPADDR=12.34.56.78 

GATEWAY=12.34.56.1 

NETMASK=255.255.255.192 

DNS1=8.8.8.8 

DNS2=8.8.4.4

最后还要记得重启网卡:

service network restart

查看当前主机名

hostname

hostnamectl

另外,听说centos6及以下的版本,是修改/etc/sysconfig/network文件中的HOSTNAME的值来达到永久修改的目的,但需要重新服务器才会生效,所以一般是配合hostname命令一起使用,由于手头无centos6机器,这个说法未测试,不知道对错。

Mac修改主机名

HostName

主机名(对应Linux系统的hostname),即终端命令行中,@后面那个名字,用于识别当前登录的是哪台机(因为有可能你连了很多台远程服务器,如果没有这个名字,很难区分哪台是哪台):

ComputerName

电脑名称,显示屏保的时候就是这个名字:

LocalHostName

本地主机名,即局域网域名,局域网内别的Mac电脑的Bonjour也会显示这个名字,加上.local即可用于本地通迅:

其中“ComputerName”和“LocalHostName”还可以在系统偏好设置→共享里面设置,图中的“电脑名称”就是“ComputerName”,下边写着“您的本地网络上的电脑可以通过以下地址访问您的电脑:BrucedeMac.local”这个就是“LocalHostName”,点击右边的编辑按钮你就可以设置“LocalHostName”:

LocalHostName默认是ComputerName去掉特殊字符并把空格转换为横杠最后加.local得到的名称,如果ComputerName带中文,会把中文转成拼音。

scutil修改主机名

Mac使用scutil命令来管理一些系统属性,s:system, c:configuration, util:utility,即System Configuration Utility,系统设置实用工具。

注意以上提到的三个属性名字都是首字母大写,必须严格这样写才能获取或设置它们的值。

获取值:

scutil --get HostName

 scutil --get ComputerName 

scutil --get LocalHostName

设置值(设置的时候要输入管理员密码):

#终端上显示的名称

 scutil --set HostName ZhangSan 

#电脑名称(比如屏保上显示) 

scutil --set ComputerName ZhangSan 

#局域网名称,假如你有做共享,在另一台电脑上看到的名称 

scutil --set LocalHostName ZhangSan

如果有单引号,双引号,空格等,要用反斜杠转义,否则无法设置,比如:

scutil --set HostName Bruce\'s\ MBP

在终端运行man scutil(即查看scutil的使用手册),可以在文档中找到以下描述:

标签:ComputerName,set,hostname,主机名,Mac,Linux,scutil,LocalHostName
来源: https://blog.csdn.net/htt325523/article/details/116657825

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有