linux 修改主機名


1、查看主機名

#hostname

2、修改主機名

對於CentOS6

方法一:
# hostname NEW_NAME   
<這種方法只對當前系統有效,重啟后無效>

方法二:
# vim /etc/sysconfig/network   
 HOSTNAME=<HOSTNAME>
  <這種方法設置不會立即有效,但是會永久有效>
注意:有的人說還需要修改/etc/hosts文件里面的 "localhost.localdomain --> NEW_NAME" ,我覺得最好兩個都修改了^_^。
個人見解:網上有很多朋友說直接修改/etc/hosts文件就可以,但系統本身用到主機名的地方不會變化,所以我覺得 /etc/hosts 是網絡中用的,/etc/sysconfig/network是本機起作用;

補充內容:/etc/hostas   ——> 配置主機名稱(域名信息)和IP地址對應關系【其實也就是本地配置域名和IP地址的轉換關系】


方法三:
使用:#setup    <dns> 
<設置修改主機名,永久生效,命令行不生效>

想要當前顯示有效和系統永久有效的方法是:使用方法一和方法二一起修改(把當前系統主機名和配置文件一起修改)。

 

對於CentOS7

方法一:
# hostname NEW_NAME   
<這種方法只對當前系統有效,重啟后無效>

方法二:
# hostnamectl  set-hostname NEW_NAME:設定主機名,永久有效

方法三:
# vim /etc/hostname    修改配置文件,永久有效,
  <注意事項:一旦使用了該方法修改主機名 /etc/hostname 將被自動更新。然而 /etc/hosts 不會更新以保存所做的修改,所以你每次在修改主機名后一定要手動更新 /etc/hosts 之后再重啟CentOS7。否則系統再啟動時會很慢>

3、修改腳本示例:

#!/bin/bash
# auther Mr.li
# date: 2018-07-12

if [ "$1" = "$(hostname)" ];then
       hostname $2    # 臨時修改主機名稱
   sed -i.bak "s/$1/$2/g" /etc/sysconfig/network  # 修改 /etc/sysconfig/network 里面的主機名

   sed -i.bak "s/$1/$2/g" /etc/hosts   # 修改 /etc/hosts 里面的主機名,目的是使得修改之后的主機名和IP地址的對應,這樣DNS解析的時候才不會出錯 
fi

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM