### Linux7.x巡检代码知识点解析 #### 一、脚本基本信息 - **脚本名称**:1.sh - **版本号**:V1.0 - **作者**:未填写 - **组织机构**:未填写 - **创建时间**:通过`date`命令动态获取 - **描述**:该脚本主要用于对Linux 7.x系统进行日常巡检,旨在自动化完成系统健康状况的检查,并记录结果。 #### 二、环境配置 - **路径设置**:脚本首先设置了一个名为`PATH`的环境变量,用于存储一系列可执行程序的搜索路径。 - `/usr/local/sbin` - `/usr/local/bin` - `/sbin` - `/bin` - `/usr/sbin` - `/usr/bin` - `/root/bin` - **权限检查**:通过`id-u`命令检查当前执行用户的ID是否为0(即是否为root用户),如果不是,则输出提示信息并退出脚本。 - **API地址**:注释了两个API地址,分别用于上传主机日常检查数据和报告: - `http://10.0.0.1:8080/api/uploadHostDailyCheck` - `http://10.0.0.1:8080/api/uploadHostDailyCheckReport` - **CentOS版本检测**:使用`awk`命令从`/etc/redhat-release`文件中提取CentOS版本信息。 #### 三、日志管理 - **程序路径**:获取脚本的完整路径,并根据该路径确定日志文件的存储位置。 - **日志目录创建**:如果指定的日志目录不存在,则自动创建。 - **日志文件名**:采用“`Hostname`-`日期`”格式命名日志文件。 #### 四、定义全局变量 - **报告基本信息**: - `report_DateTime`:记录检查时的时间戳。 - `report_Hostname`:记录主机名。 - `report_OSRelease`:记录操作系统版本。 - `report_Kernel`:记录内核版本。 - `report_Language`:记录系统语言。 - `report_LastReboot`:记录上次重启时间。 - `report_Uptime`:记录系统运行时间。 - `report_CPUs`:记录物理CPU数量。 - `report_CPUType`:记录CPU型号。 - `report_Arch`:记录系统架构。 - `report_MemTotal`:记录总内存大小。 - `report_MemFree`:记录可用内存大小。 - `report_MemUsedPercent`:记录内存使用百分比。 - `report_DiskTotal`:记录磁盘总容量。 - `report_DiskFree`:记录剩余磁盘空间。 - `report_DiskUsedPercent`:记录磁盘使用率。 - `report_InodeTotal`:记录总的inode数。 - `report_InodeFree`:记录空闲inode数。 - `report_InodeUsedPercent`:记录inode使用率。 - `report_IP`:记录IP地址。 - `report_MAC`:记录MAC地址。 - `report_Gateway`:记录网关地址。 - `report_DNS`:记录DNS服务器地址。 - `report_Listen`:记录监听端口信息。 - `report_Selinux`:记录SELinux状态。 - `report_Firewall`:记录防火墙状态。 - `report_USERs`:记录所有用户。 - `report_USEREmptyPassword`:记录无密码的用户。 - `report_USERTheSameUID`:记录UID相同的用户。 - `report_PasswordExpiry`:记录密码过期情况。 - `report_RootUser`:记录root用户的登录情况。 - `report_Sudoers`:记录sudoers文件内容。 - `report_SSHAuthorized`:记录SSH公钥认证情况。 - `report_SSHDProtocolVersion`:记录SSHD协议版本。 - `report_SSHDPermitRootLogin`:记录SSHD是否允许root登录。 - `report_DefunctProsess`:记录僵尸进程。 - `report_SelfInitiatedService`:记录自启动服务。 - `report_SelfInitiatedProgram`:记录自启动程序。 - `report_RuningService`:记录正在运行的服务。 - `report_Crontab`:记录定时任务。 - `report_Syslog`:记录syslog配置。 - `report_SNMP`:记录SNMP配置。 - `report_NTP`:记录NTP配置。 - `report_JDK`:记录JDK安装情况。 #### 五、函数定义与调用 - **版本显示**:`version()`函数用于显示脚本的版本信息。 - **获取CPU状态**:`getCpuStatus()`函数用于获取CPU相关信息,包括物理CPU的数量等。 #### 六、总结 该脚本提供了一种系统化的方法来监控和维护Linux 7.x系统的稳定性与安全性。通过对关键系统组件和配置项的检查,可以帮助管理员及时发现潜在问题并采取措施进行修复,从而确保系统持续稳定运行。此外,脚本的设计考虑到了日志管理和权限控制等重要方面,进一步增强了其实用性和安全性。对于那些希望提高Linux服务器管理效率的企业和个人来说,这是一个非常有价值的工具。























- 粉丝: 207
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 运用互联网思维开创水产科技创新与推广工作新局面.docx
- 物联网综合航运信息系统.docx
- HCIP-OpenStack云计算认证实验手册.docx
- 项目经理负责制与项目管理实施办法(修订版).doc
- 中职计算机教学中学生实践能力培养.docx
- 基于工程沙盘模拟系统下的施工项目管理能力提升的实践研究.docx
- 探析区块链如何影响数据中心的发展.docx
- 电梯自动控制及电梯安装工程项目管理研究.docx
- EXCEL规划求解问题.doc
- 《通信原理》-樊昌信-曹丽娜-编著第六版-第1章免.ppt
- 单片机C语言程序设计实施方案实训例—-Proteus仿真.doc
- 字符及字符串输入输出与顺序程序设计实验报告.doc
- 基于单片机的数控直流稳压电源研究设计.doc
- 广汽本田特约店Excel培训.ppt
- 双创教育背景下的《计算机应用基础》教学策略.docx
- 基于PLC的智能交通灯控制系统方案设计书.doc


