更改EC2实例的系统HostName(主机名)
在亚马逊AWS的EC2的Linux实例中,如果不改变系统的HostName,每次通过终端登录到系统时,命令提示行显示如下:
[ec2-user@12-34-567-89 ~]$
如果只是管理一台服务器的话还好说,但是我们同时管理多台或者几十台服务器的话,麻烦就大了,
比如,我们要停止某台服务器的某个端口,一不小心,我们可能把别的服务器的端口给停掉了, 灾难就来了。
所以,很有必要给我们的服务器贴标签,使我们一进入到系统就知道在那台服务器。
可以通过以下方法改变服务器的Hostname。
1. 将系统主机名改为公共域名
如果我们拥有公共域名,如qiais.com, 并且我们设置了子域名credit.qiais.com给我们的某台服务器,那么我们可以通过修改
/etc/sysconfig/network 来更改我们的主机名。
vi /etc/sysconfig/network
编辑/etc/sysconfig/network如下
NETWORKING=yes NETWORKING_IPV6=no #HOSTNAME=localhost.localdomain HOSTNAME=credit.qiais.com
重启服务器,
reboot
再次登录服务器后,发现我们的命令提示符变为如下:
[sai@credit ~]$
这样我们就很容易知道这台服务器的主机名为credit相关的域名的服务器了,而不会造成混乱。
2. 不通过公共域名改变主机名
有时候我们的服务器可能没有域名,也不需要域名,特别是在VPN内部运网络的时候,不是每台服务器都需要域名的。
这时候我们可以通过以下方法改变主机名:
vi /etc/sysconfig/network
编辑/etc/sysconfig/network如下
NETWORKING=yes NETWORKING_IPV6=no #HOSTNAME=localhost.localdomain HOSTNAME=zhifubao.localdomain
编辑/etc/hosts
127.0.0.1 zhifubao.localdomain webserver localhost localhost.localdomain
重启服务器,
reboot
再次登录服务器后,发现我们的命令提示符变为如下:
[sai@zhifubao ~]$
这样我们就知道这台服务器是与支付宝相关的服务器了。
3. 更改命令提示行,不变动Hostname
如果你既不想改变主机名,又想要个容易记住的显示名称,而不是类似于[sai@ip-12-34-567-89 ~]的由AWS自动生成的命令行提示符。
我们可以通过设置命令行提示符昵称的方法来实现:
1. 给命令行添加昵称
[root@ip-12-34-567-89 ~]# sh -c 'echo "export NICKNAME=paypal" > /etc/profile.d/prompt.sh'
2. 修改/etc/bashrc
[root@ip-12-34-567-89 ~ ~]# vi /etc/bashrc
将
# Turn on checkwinsize shopt -s checkwinsize [ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \W]\\$ " <------ 将此处的\h改为$NICKNAME, 参看下一代码块 # You might want to have e.g. tty in prompt (e.g. more virtual machines) # and console windows # If you want to do so, just add e.g. # if [ "$PS1" ]; then # PS1="[\u@\h:\l \W]\\$ " # fi # to your custom modification shell script in /etc/profile.d/ directory
改为
# Turn on checkwinsize shopt -s checkwinsize [ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@$NICKNAME \W]\\$ " # You might want to have e.g. tty in prompt (e.g. more virtual machines) # and console windows # If you want to do so, just add e.g. # if [ "$PS1" ]; then # PS1="[\u@\h:\l \W]\\$ " # fi # to your custom modification shell script in /etc/profile.d/ directory
登出系统,再登陆系统,我们发现,命令提示行改变为:
[root@paypal ~]#
在没有改变主机名的情况下,我们实现的命令提示行的显示改变。