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

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


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


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


   ③  修改BOOTPROTO=staticspa


   ④  修改ONBOOT=yesrest


   ⑤  配置靜態ip地址 IPADDRip


   ⑥  配置DNS  NETMASKit


   ⑦  配置網關  GATEWAYtable


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


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

    

   ☆  先判斷是不是靜態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

相關文章
相關標籤/搜索