RHEL7(Centos7)下使用shell腳本一鍵部署服務(wù)(二)

新增了一鍵配置DHCP服務(wù)功能津畸,后續(xù)準(zhǔn)備添加配置DNS服務(wù)的功能

原文地址:RHEL7(Centos7)下使用shell腳本一鍵部署服務(wù)(二)

#author:Roya

#script name:RyndOne-deploy

#creation time:2020-01-23

#version:0.1

#update time:2020-01-24

#!/bin/bash

echo "input 1:Configure Yum source"

echo "input 2:Configure IP address,gateway,subnet mask,DNS server"

echo "input 3:Configure NFS server"

echo "input 4:Configure DHCP server"

echo "input 5:Configure DNS server"

read -p "please input 1,2,3,4: " a

case $a in #使用case語(yǔ)句判斷輸入

1)

echo "Prepare to configure Yum source...."

sleep 1? #等一秒執(zhí)行下面命令

echo "One moment please"

sleep 3

echo "/dev/cdrom /mnt iso9660 defaults 0 0" >> /etc/fstab && mount -a &> /dev/null && echo 'mount success!' # 將掛載信息寫入fstab

echo '[rhel]

name=rhel

baseurl=file:///mnt

gpgcheck=0

enabled=1' >> /etc/yum.repos.d/rhel.repo #yum源的配置文件

yum makecache &> /dev/null

if [ $? -eq 0 ]

then

echo "Yum source configuration successfully!"

else echo "Yum source configuration failed!"

fi

yum repolist | grep repolist

;;

2)

read -p "Please enter IP address(Tips:192.168.1.1/24): " IPad

read -p "Please enter GATEWAY(Tips:192.168.1.254): " gate

read -p "please enter DNS server(Tips:114.114.114.114): " DNS

read -p "please enter Please enter the network card name(Tips:ens33,eth0): " name

nmcli connection modify $name ipv4.method manual

nmcli connection modify $name ipv4.addresses $IPad

nmcli connection modify $name ipv4.dns $DNS ipv4.gateway $gate

nmcli connection modify $name connection.autoconnect yes

systemctl restart network

if [ $? -eq 0 ]

then

echo "Network configuration successful!"

ifconfig | awk 'NR==2'

else echo "Network configuration failed!"

fi

;;

3)

yum install -y nfs-utils &> /dev/null #安裝nfs服務(wù)端

if [ $? -eq 0 ]

then echo 'NFS service installed successfully!'

read -p 'Please enter NFS directory path you want to share(Tips:/nfsdir): ' nfsdir #輸入nfs共享的目錄

sleep 1

read -p 'Please enter the IP address of the host allowed to be shared(Tips:192.168.1.1 or 192.168.1.*): ' nfsIP #輸入允許共享的主機(jī)IP地址或者網(wǎng)段

sleep 1

read -p 'Please enter the permission of the shared host(Tips:sync,rw,ro): ' nfspwr #輸入允許共享的主機(jī)的權(quán)限

sleep 1

echo "Configuring..... Please wait."

sleep 10

if [ -e $nfsdir ] #判斷nfs共享目錄是否存在

then echo 'File Exists'

else mkdir $nfsdir

chmod -Rf 777 $nfsdir

fi

echo "$nfsdir $nfsIP($nfspwr)" > /etc/exports

systemctl restart nfs-server

if [ $? -eq 0 ]

then

IP=`ifconfig | awk -F ' ' 'NR==2{print$2}'` #使用awk命令提取出IP地址

exportfs -r

showmount -e $IP

if [ $? -eq 0 ] #判斷服務(wù)是否配置正確

then echo "NFS server has been configured successfully!"

else echo "NFS server has been configured failed!"

fi

fi

systemctl restart rpcbind

systemctl enable rpcbind &> /dev/null

systemctl enable nfs-server &> /dev/null #加入到開機(jī)自啟動(dòng)

firewall-cmd --add-service=nfs --permanent &> /dev/null

firewall-cmd --add-service=rpc-bind --permanent &> /dev/null

firewall-cmd --reload &> /dev/null

else echo 'NFS service installion failed!'

fi

;;

4)

yum install -y dhcp &> /dev/null

if [ $? -eq 0 ]

then

read -p "Please enter the type of DNS service dynamic update(Tips:none,interim,ad-hoc): " style

read -p "Allow/ignore client update DNS records(Tips:allow/ignore): " judge

read -p "Please enter a DNS domain(Tips:roya.com): " domain

IP=`ifconfig | awk -F ' ' 'NR==2{print$2}'`

NETMASK=`ifconfig | awk -F ' ' 'NR==2{print$4}'`

IP0="echo "`ifconfig | awk -F ' ' 'NR==2{print$2}' | cut -d '.' -f 1,2,3`.0""

IP1="expr `ifconfig| awk -F ' ' 'NR==2{print$2}'? | awk -F '.' '{print$4}'` + 20"

IP2="expr `ifconfig| awk -F ' ' 'NR==2{print$2}'? | awk -F '.' '{print$4}'` + 100"

IP3="echo "`ifconfig | awk -F ' ' 'NR==2{print$2}' | cut -d '.' -f 1,2,3`.`$IP1`""

IP4="echo "`ifconfig | awk -F ' ' 'NR==2{print$2}' | cut -d '.' -f 1,2,3`.`$IP2`""

cat >> /etc/dhcp/dhcpd.conf << EOF

ddns-update-style $style;

$judge client-updates;

subnet `$IP0` netmask $NETMASK {

range `$IP3` `$IP4`;

option subnet-mask $NETMASK;

option routers $IP;

option domain-name "$domain";

option domain-name-servers $IP;

default-lease-time 21600;

max-lease-time 43200;

}

EOF

systemctl restart dhcpd

if [ $? -eq 0 ]

then echo "DHCP service configuration succeeded!"

systemctl enable dhcpd &> /dev/null

firewall --add-service=dhcp --permanent &> /dev/null

firewall --reload &> /dev/null

systemctl status dhcpd

else echo "DHCP service configuration failed!"

fi

else echo "DHCP service not installed successfully!"

fi

;;

*)

exit 0

;;

esac

代碼已經(jīng)在GitHub 上開源,各位大佬覺得可以的話蝶俱,點(diǎn)個(gè)小星星再走吧

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末字币,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子贰盗,更是在濱河造成了極大的恐慌噩斟,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,509評(píng)論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件临扮,死亡現(xiàn)場(chǎng)離奇詭異论矾,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)杆勇,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,806評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門又厉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來答捕,“玉大人爆惧,你說我怎么就攤上這事÷放酰” “怎么了?”我有些...
    開封第一講書人閱讀 163,875評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵传黄,是天一觀的道長(zhǎng)杰扫。 經(jīng)常有香客問我,道長(zhǎng)膘掰,這世上最難降的妖魔是什么章姓? 我笑而不...
    開封第一講書人閱讀 58,441評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮识埋,結(jié)果婚禮上凡伊,老公的妹妹穿的比我還像新娘。我一直安慰自己窒舟,他們只是感情好系忙,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,488評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著惠豺,像睡著了一般银还。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上洁墙,一...
    開封第一講書人閱讀 51,365評(píng)論 1 302
  • 那天蛹疯,我揣著相機(jī)與錄音,去河邊找鬼热监。 笑死捺弦,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的孝扛。 我是一名探鬼主播列吼,決...
    沈念sama閱讀 40,190評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼疗琉!你這毒婦竟也來了冈欢?” 一聲冷哼從身側(cè)響起歉铝,我...
    開封第一講書人閱讀 39,062評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤盈简,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后太示,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體柠贤,經(jīng)...
    沈念sama閱讀 45,500評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,706評(píng)論 3 335
  • 正文 我和宋清朗相戀三年类缤,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了臼勉。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,834評(píng)論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡餐弱,死狀恐怖宴霸,靈堂內(nèi)的尸體忽然破棺而出囱晴,到底是詐尸還是另有隱情,我是刑警寧澤瓢谢,帶...
    沈念sama閱讀 35,559評(píng)論 5 345
  • 正文 年R本政府宣布畸写,位于F島的核電站,受9級(jí)特大地震影響氓扛,放射性物質(zhì)發(fā)生泄漏枯芬。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,167評(píng)論 3 328
  • 文/蒙蒙 一采郎、第九天 我趴在偏房一處隱蔽的房頂上張望千所。 院中可真熱鬧,春花似錦蒜埋、人聲如沸淫痰。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,779評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)黑界。三九已至,卻和暖如春皂林,著一層夾襖步出監(jiān)牢的瞬間朗鸠,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,912評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工础倍, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留烛占,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,958評(píng)論 2 370
  • 正文 我出身青樓沟启,卻偏偏與公主長(zhǎng)得像忆家,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子德迹,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,779評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容