運維第四天筆記
DNS服務部署
nmtui 用字符圖形配置IP地址
[[email protected] ~]#
hostnamectl set-hostname host1
[[email protected] ~]# bash
ctrl + shift + t 快速打開終端
###################################
partprobe /dev/vdb 刷新分區
(parted) mklabel
新的磁盤標簽類型? gpt
####################################
baseurl ftp://
ftp://192.168.4.254/centos-1804/
mkdir /var/ftp/centos-1804
vim /etc/fstab
/iso/CentOS7-1804.iso /var/ftp/centos-1804 iso9660 defaults 0 0
mount -a
[[email protected] ~]# mount -a
[[email protected] ~]# ls /var/ftp/centos-1804/
vim /root/yum.sh
#!/bin/bash
rm -rf /etc/yum.repos.d/*
yum-config-manager --add ftp://192.168.4.254/centos-1804/
echo gpgcheck=0 >> /etc/yum.repos.d/192.168.4.254_centos-1804_.repo
chmod 777 /root/yum.sh
./yum.sh
yum clean all
yum repolist
##################################################
$0 當前的腳本名稱
$n 傳遞給腳本或者函數的參數 n 代表的是一個數字。
$# 傳遞給腳本或函數參數的個數
$? 返回上個命令的狀態,或者返回函數的值
##################################################
判斷關系
-eq 等於
-ne 不等於
-gt 大於
-ge 大於或等於
-lt 小於
-le 小於等於
##################################################
文件比較運算 若存在則為真
-e 判斷對象是否存在
-d 判斷對象是否為目錄
-f 判斷對象是否為文件
-r 判斷對象是否有讀的權限
-w 判斷對象是否有可寫的權限
-x 對象是否有可執行權限
##################################################
&& 給定的條件必須都得成立,整個測試結果為真
|| 只有其中的一個條件成立.則結測試結果為真
判斷 /etc/ 是否存在
[ -e “/etc/” ] && echo “存在” || echo “不存在”
###############################################
[[email protected] ~]#
[ -e “/etc/” ] && echo “存在” || echo “不存在”
存在
[[email protected] ~]#
[ -e “/opt/” ] && echo “存在” || echo “不存在”
存在
[[email protected] ~]#
[ -e “/chendan” ] && echo “存在” || echo “不存在”
不存在
判斷 ls mkdir cd 這些命令是否存在
[ -e “cd” ] && echo “存在” || echo “不存在”
[[email protected] ~]# which mkdir
/usr/bin/mkdir
[[email protected] ~]# [ -e “/usr/bin/mkdir” ] && echo " 存在" || echo “不存在”
####################################
[[email protected] ~]# mkdir test
[[email protected] ~]# chmod 444 test
[[email protected] ~]# [ -w “/test” ] && echo “可讀”
|| echo “不可寫”
不可寫
#######################################
if單分支語法組成
if 條件測試
then
命令序列
fi
################
if 雙if分支
if
then
命令序列1
else
命令序列2
fi
##################
if 多分支
if 條件測試1 ;then
命令序列1
elif 條件測試1 ;then
命令序列2
else
命令序列N
fi
-c 可以發送的包
-i 0.2 縮短發送測試包的間隔秒數
-w 等待反饋的超時秒數
ping -c 3 -i 0.2 -W 1 192.168.4.5
檢測輸入IP地址的連通性
#!/bin/bash a=192.168.4. ping -c 3 -i 0.2 -W 1 $1 > /dev/null if [ $? -eq 0 ]; then echo "Host $1 is ip" else echo "Host $1 is down" fi
[[email protected] ~]# chmod 777 ping.sh
[[email protected] ~]# ./ping.sh 192.168.4.5
Host 192.168.4.5 is ip
[[email protected] ~]# ./ping.sh 192.168.4.8
Host 192.168.4.8 is down
#################################
從鍵盤讀取一個數,判斷他的等級
大於等於90神功蓋世
大於等於80,小於90 登峰造極
大於等於70,小於80 爐火純青
大於等於60,小於70 略有小成
小於60 初學紮到
###############################
for 變量名 in 值列表
do
命令序列
done
################################
創建20個用戶,admin1-20
密碼統一為:redhat
#!/bin/bash
pass=redhat
user=admin
for i in {1..20}
do
useradd $user$i >/dev/null
echo $pass | passwd --stdin $user$i >/dev/null
done
##################################
從鍵盤上輸入用戶名
從鍵盤上讀取密碼
從鍵盤上讀取創建個數
###################################
檢測192.168.4.0網段的存活主機?
1 思考
2 寫
while 條件測試
do
命令序列
done
while :
do
命令序列
done
################
提示用戶輸入一個隨機數,直到猜中為止
使用系統自帶的變量RANDOM提供系統隨機數(1-100),使用while
制作死循環
使用取余算法使隨機數變為1-100的隨機數
RANDOM為系統自帶變量,值為0-16545
顯示你猜了幾次
#!/bin/bash
num=$[RANDOM%100+1]
i=0
while :
do
read -p "計算機生成了一個1-100的隨機數,你猜:" cai
let i++
if [ $cai -eq $num ];then
echo "恭喜,猜對了"
echo "你猜了$i次"
exit
elif [ $cai -gt $num ];then
echo "Oops,猜大了"
else
echo "Oops,猜小了"
fi
done
#############################################
判斷我們的電腦是否為超級管理員,如果是,則用yum安裝vsftp服務
並在ftp家目錄創建 a.txt,如果不是 則提示您非管理員。
if
判斷是否為管理員,如果是則安裝httpd。並在 網站根目錄創建
網頁文件,內容為 “好嗨呦”. 並在當前終端顯示網頁內容
#!/bin/bash
if [ $USER == "root" ]; then
yum -y install vsftpd
#sleep 10
touch /var/ftp/pub/a.txt
systemctl restart vsftpd ; systemctl enable vsftpd
else
echo "您不是管理員.沒辦法安裝軟件"
fi
curl http://192.168.4.5
設置計劃任務:
什麽是計劃任務:
按照計劃的時間執行指定的任務
at
crontab
系統服務:crond
配置:
/etc/crontab
/var/spool/cron/用戶名
配置格式
分 時 日 月 周 任務操作命令(用絕對路徑,必要時可以記錄輸出)
設置一個全局計劃任務:
每天晚上22:20分 自動關閉計算機
20 22 * * *
配置工具:
crontab -e -u 用戶名
-l 列出計劃任務
-r 刪除
設置系統日期:
date -s "HH:MM"
date -s "yyy-mmm-ddd"
date -s "yyy-mmm-dd HH:MM"
hwclock -s 根具bios時間設置系統時間
hwclock -w 根據系統時間設置BIOS時間
[[email protected] ~]# vim /etc/crontab
40 17 * * * root /usr/sbin/shutdown -c +10
"您的電腦將在10分鐘後關機"
運維第四天筆記