编写shell脚本判断centos是不是最小化环境安装
时间: 2024-09-15 12:12:17 浏览: 64
在编写shell脚本来判断CentOS是否是最小化安装(也称为最小化配置或精简安装),你需要关注一些标志性的文件或目录的存在与否。下面是一个简单的示例脚本,它会检查几个常见的非最小化安装才会存在的文件或路径:
```bash
#!/bin/bash
# 检查图形界面启动文件是否存在
if [ ! -f /etc/systemd/system/default.target.wants/gdm3.service ]; then
echo "疑似最小化环境"
else
echo "可能是非最小化环境"
fi
# 检查Xorg相关文件
if [ ! -d /usr/bin/Xming ] && [ ! -d /etc/X11 ]; then
echo "疑似最小化环境"
else
echo "可能是非最小化环境"
fi
# 检查桌面环境相关文件
if [ ! -e /usr/share/applications ]; then
echo "疑似最小化环境"
else
echo "可能是非最小化环境"
fi
# 结果汇总
if [[ $? -eq 0 ]]; then
echo "CentOS可能是最小化安装"
else
echo "CentOS可能不是最小化安装"
fi
#
相关问题
编写shell脚本 判断centos是最小化环境安装,并且勾选了标准、调试、开发、系统工具包
编写shell脚本来检查CentOS是否是一个最小化安装,并确认是否选择了标准、调试、开发以及系统工具包,可以利用一些Linux命令来获取系统信息并进行条件判断。以下是一个简单的示例shell脚本:
```bash
#!/bin/bash
# 获取系统版本信息
system_info=$(cat /etc/os-release | grep "^ID" | cut -d "=" -f2)
if [[ "$system_info" == "centos" ]]; then
# 判断是否为最小化安装,这里假设如果没有任何特定的文件则视为最小化
is_minimal=$(ls /etc/yum.repos.d | wc -l)
if [ $is_minimal -eq 0 ]; then
echo "系统可能是最小化安装"
# 检查是否安装了特定的软件包
standard_packages=("kernel" "bash" "gcc") # 标准包举例
for package in "${standard_packages[@]}"; do
installed=$(rpm -q $package 2>/dev/null; echo $?)
if [[ $installed -ne 0 ]]; then
echo "$package 未安装"
else
echo "$package 已安装"
fi
done
debugging_develop_tools=("gdb" "-devel" "make") # 调试和开发工具举例
for tools in "${debugging_develop_tools[@]}"; do
installed=$(yum list $tools 2>/dev/null | grep -c '^$tools$')
if [ $installed -gt 0 ]; then
echo "$tools 已安装"
else
echo "$tools 未安装"
fi
done
else
echo "系统看起来不是最小化安装"
fi
else
echo "这不是CentOS系统"
fi
编写shell 脚本 关于centos linux系统资源详细的实时监控
你可以使用以下的脚本来实时监控CentOS Linux系统的资源使用情况:
```bash
#!/bin/bash
while true; do
clear
echo "CPU使用情况:"
top -b -n 1 | grep "Cpu(s)" | awk '{print " 用户使用: " $2 "% 系统使用: " $4 "% 空闲: " $8 "%"}'
echo ""
echo "内存使用情况:"
free -m | grep "Mem" | awk '{print " 总内存: " $2 " MB 已用内存: " $3 " MB 空闲内存: " $4 " MB"}'
echo ""
echo "磁盘使用情况:"
df -h | grep -E '/dev/sda|Filesystem' | awk '{print " 文件系统: " $1 " 已用: " $3 " 可用: " $4}'
echo ""
echo "网络连接情况:"
netstat -ant | awk '{print $6}' | sort | uniq -c | awk '{print " " $2 ": " $1 " 个连接"}'
echo ""
sleep 5 # 等待5秒钟后再次刷新数据
done
```
将上述脚本保存为 `resource_monitor.sh` 文件,并赋予执行权限:
```bash
chmod +x resource_monitor.sh
```
然后运行脚本:
```bash
./resource_monitor.sh
```
此脚本将会每隔5秒刷新一次系统资源的使用情况,包括CPU、内存、磁盘和网络连接情况。你可以按 `Ctrl+C` 来停止监控。
阅读全文