常用的运维shell脚本具体代码
时间: 2023-08-12 20:09:27 浏览: 105
以下是一些常用的运维 shell 脚本的示例代码:
1. 监控脚本:
```shell
#!/bin/bash
# 检查 CPU 使用率
cpu_usage=$(top -bn1 | grep "Cpu(s)" | awk '{print $2 + $4}')
echo "CPU 使用率:$cpu_usage%"
# 检查内存使用率
mem_usage=$(free | awk '/Mem/{printf("%.2f"), $3/$2*100}')
echo "内存使用率:$mem_usage%"
# 检查磁盘使用率
disk_usage=$(df -h | awk '$NF=="/"{printf("%s"), $5}')
echo "磁盘使用率:$disk_usage"
# 检查网络流量
network_usage=$(ifconfig eth0 | awk '/RX packets/{print $5}')
echo "网络流量:$network_usage packets"
```
2. 备份脚本:
```shell
#!/bin/bash
# 备份目录
backup_dir="/path/to/backup"
# 备份文件名
backup_file="backup_$(date +%Y%m%d%H%M%S).tar.gz"
# 执行备份
tar -czvf "$backup_dir/$backup_file" /path/to/data
echo "备份完成:$backup_dir/$backup_file"
```
3. 自动化部署脚本:
```shell
#!/bin/bash
# 安装依赖软件
apt-get install -y package1 package2 package3
# 配置文件
config_file="/path/to/config.conf"
# 修改配置文件
sed -i 's/old_value/new_value/g' "$config_file"
# 重启服务
service service_name restart
```
4. 日志分析脚本:
```shell
#!/bin/bash
# 日志文件
log_file="/path/to/log.txt"
# 搜索关键字
keyword="error"
# 查找包含关键字的行
grep "$keyword" "$log_file"
```
5. 性能优化脚本:
```shell
#!/bin/bash
# 关闭不需要的服务
service service_name stop
# 清理缓存
sync && echo 3 > /proc/sys/vm/drop_caches
# 启动性能监控工具
perf top
```
6. 安全脚本:
```shell
#!/bin/bash
# 修改用户密码
user="username"
new_password="new_password"
echo -e "$new_password\n$new_password" | passwd "$user"
# 扫描网络漏洞
nmap -p 1-65535 -T4 -A -v target_ip
```
请注意,这些示例代码仅供参考,你需要根据实际需求进行修改和适配。
阅读全文