运维第四天笔记

DNS服务部署
nmtui 用字符图形配置IP地址
[root@localhost ~]#
hostnamectl set-hostname host1
[root@localhost ~]# 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
[root@room9pc01 ~]# mount -a
[root@room9pc01 ~]# 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 “不存在”
###############################################
[root@host1 ~]#
[ -e “/etc/” ] && echo “存在” || echo “不存在”
存在
[root@host1 ~]#
[ -e “/opt/” ] && echo “存在” || echo “不存在”
存在
[root@host1 ~]#
[ -e “/chendan” ] && echo “存在” || echo “不存在”
不存在
判断 ls mkdir cd 这些命令是否存在
[ -e “cd” ] && echo “存在” || echo “不存在”
[root@host1 ~]# which mkdir
/usr/bin/mkdir
[root@host1 ~]# [ -e “/usr/bin/mkdir” ] && echo " 存在" || echo “不存在”
####################################
[root@host1 ~]# mkdir test
[root@host1 ~]# chmod 444 test
[root@host1 ~]# [ -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

[root@room9pc01 ~]# chmod 777 ping.sh
[root@room9pc01 ~]# ./ping.sh 192.168.4.5
Host 192.168.4.5 is ip
[root@room9pc01 ~]# ./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时间

[root@host1 ~]# vim /etc/crontab
40 17	*  *  * root /usr/sbin/shutdown -c +10  
"您的电脑将在10分钟后关机"

你可能感兴趣的:(linux)