用shell實現將動態ip修改爲靜態ip,靜態ip修改爲其它靜態ip

(1) 將動態ip修改爲靜態ip的思路


   ① 修改ip之前,先備份ifcfg-eth0文件


   ②  進入網卡配置目錄  /etc/sysconfig/network-scripts/ifcfg-eth0


   ③  修改BOOTPROTO=static


   ④  修改ONBOOT=yes


   ⑤  配置靜態ip地址 IPADDR


   ⑥  配置DNS  NETMASK


   ⑦  配置網關  GATEWAY


   ⑧  重啓網卡驗證配置,驗證配置結果   service   network  restart


(2) 將靜態ip修改爲其它靜態ip的思路

    

   ☆  先判斷是否是靜態ip   grep "dhcp" /etc/sysconfig/network-scripts/ifcfg-eth0/


   ☆  

         if[$?  -ne   0]; then

            sed -i `s/^IPADDR/#IPADDR/g` ifcfg-eth0

            read  -p   "please Enter  ip:"IPADDR

            echo "IPADDR="$IPADDR">>/etc/sysconfig/network-scripts/

         fi


  ☆  重啓網卡驗證配置結果   service network  restart


  代碼示例: 

  

#!/bin/bash

#2017年12月17日19:34:40

#by author daqi

#change ip  shell

NET_FILE="/etc/sysconfig/network-scripts"

NET_DIR="ifcfg-eth0"

cd $NET_FILE/

#change ip static for static:

grep "dhcp" $NET_DIR

if [ $? -ne 0 ];then

sed -i s/^IPADDR/#IPADDR/g $NET_DIR

read -p "Please enter ip Address,example 192.168.0.11 ip:"  IPADDR

echo "IPADDR=$IPADDR">>$NET_DIR

echo "NETMASK=255.255.255.0">>$NET_DIR

 echo "GATEWAY=192.168.2.254">>$NET_DIR

service network restart

else

#change ip dhcp for static

sed -i s/dhcp/static/g $NET_DIR

sed -i s/ONBOOT=no/ONBOOT=yes/g $NET_DIR

read -p "Please enter ip Address,example 192.168.0.11 ip:"   IPADDR

cat>>$NET_FILE/$NET_DIR <<EOF

IPADDR=$IPADDR

NETMASK=255.255.255.0

GATEWAY=192.168.2.1

EOF

service network restart

fi


      

   


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章