本文共 3113 字,大约阅读时间需要 10 分钟。
本文档的版权归【微云智达教育】所有。
https://www.kancloud.cn/microcloud/btcn/1490093 https://www.kancloud.cn/microcloud/btcn/1505273
#!/bin/bash# 编写 nginx 启动脚本 # 本脚本编写完成后,放置在/etc/init.d/目录下,就可以被 Linux 系统自动识别到该脚本# 如果本脚本名为/etc/init.d/nginx,则 service nginx start 就可以启动该服务# service nginx stop 就可以关闭服务# service nginx restart 可以重启服务# service nginx status 可以查看服务状态 program=/usr/local/nginx/sbin/nginxpid=/usr/local/nginx/logs/nginx.pidstart(){ if [ -f $pid ];then echo "nginx 服务已经处于开启状态"else $programfistop(){ if [ -! -f $pid ];then echo "nginx 服务已经关闭"else $program -s stop echo "关闭服务 ok"fi}status(){ if [ -f $pid ];then echo "服务正在运行..."else echo "服务已经关闭"fi} case $1 instart) start;;stop) stop;;restart) stop sleep 1 start;;status) status;;*) echo "你输入的语法格式错误"esac
#!/bin/bash # 自动对磁盘分区、格式化、挂载# 对虚拟机的 vdb 磁盘进行分区格式化,使用< <将需要的分区指令导入给程序 fdisk# n(新建分区),p(创建主分区),1(分区编号为 1),两个空白行(两个回车,相当于将整个磁盘分一个区)# 注意:1 后面的两个回车(空白行)是必须的!fdisk dev vdb << eofnp1 wqeof #格式化刚刚创建好的分区mkfs.xfs vdb1 #创建挂载点目录if [ -e data ]; thenexitfimkdir #自动挂载刚刚创建的分区,并设置开机自动挂载该分区echo ' xfs defaults 1 2'> > /etc/fstabmount -a 将需要的分区指令导入给程序>
#!/bin/bash# 自动优化 Linux 内核参数 #脚本针对 RHEL7cat >> /usr/lib/sysctl.d/00‐system.conf <
#mkdir /data/scripts#vim /data/scripts/nginx_log.sh #!/bin/bash# 切割 Nginx 日志文件(防止单个文件过大,后期处理很困难) logs_path="/usr/local/nginx/logs/"mv ${logs_path}access.log ${logs_path}access_$(date -d "yesterday" +"%Y%m%d").logkill -USR1 `cat /usr/local/nginx/logs/nginx.pid` # chmod +x /data/scripts/nginx_log.sh# crontab ‐e #脚本写完后,将脚本放入计划任务每天执行一次脚本0 1 * * * /data/scripts/nginx_log.sh
#!/bin/bash# 检测 MySQL 数据库连接数量 # 本脚本每 2 秒检测一次 MySQL 并发连接数,可以将本脚本设置为开机启动脚本,或在特定时间段执行# 以满足对 MySQL 数据库的监控需求,查看 MySQL 连接是否正常# 本案例中的用户名和密码需要根据实际情况修改后方可使用log_file=/var/log/mysql_count.loguser=rootpasswd=123456while :do sleep 2 count=`mysqladmin -u "$user" -p "$passwd" status | awk '{print $4}'` echo "`date +%Y‐%m‐%d` 并发连接数为:$count" >> $log_filedone
#!/bin/bash# 根据 md5 校验码,检测文件是否被修改 # 本示例脚本检测的是/etc 目录下所有的 conf 结尾的文件,根据实际情况,您可以修改为其他目录或文件# 本脚本在目标数据没有被修改时执行一次,当怀疑数据被人篡改,再执行一次# 将两次执行的结果做对比,MD5 码发生改变的文件,就是被人篡改的文件for i in $(ls /etc/*.conf)do md5sum "$i" >> /var/log/conf_file.logdone
#!/bin/bash# 检测 MySQL 服务是否存活 # host 为你需要检测的 MySQL 主机的 IP 地址,user 为 MySQL 账户名,passwd 为密码# 这些信息需要根据实际情况修改后方可使用host=192.168.51.198user=rootpasswd=123456mysqladmin -h '$host' -u '$user' -p'$passwd' ping &>/dev/nullif [ $? -eq 0 ]then echo "MySQL is UP"else echo "MySQL is down"fi
#!/bin/bash# 备份 MySQL 的 shell 脚本(mysqldump版本) # 定义变量 user(数据库用户名),passwd(数据库密码),date(备份的时间标签)# dbname(需要备份的数据库名称,根据实际需求需要修改该变量的值,默认备份 mysql 数据库) user=rootpasswd=123456dbname=mysqldate=$(date +%Y%m%d) # 测试备份目录是否存在,不存在则自动创建该目录[ ! -d /mysqlbackup ] && mkdir /mysqlbackup# 使用 mysqldump 命令备份数据库mysqldump -u "$user" -p "$passwd" "$dbname" > /mysqlbackup/"$dbname"-${date}.sql
#!/bin/bash# 将文件中所有的小写字母转换为大写字母 # $1是位置参数,是你需要转换大小写字母的文件名称# 执行脚本,给定一个文件名作为参数,脚本就会将该文件中所有的小写字母转换为大写字母tr "[a‐z]" "[A‐Z]" < $1
#!/bin/bash# 非交互自动生成 SSH 密钥文件 # ‐t 指定 SSH 密钥的算法为 RSA 算法;‐N 设置密钥的密码为空;‐f 指定生成的密钥文件>存放在哪里rm -rf ~/.ssh/{ known_hosts,id_rsa*}ssh‐keygen -t RSA -N '' -f ~/.ssh/id_rsa
转载地址:http://eazp.baihongyu.com/