
简介一份面向IT运维人员的计算机巡检记录文档系统梳理了计算机清理与维护的标准工作流程包括使用吸尘器除尘、借助Aida64采集硬件信息并登记电源、操作系统、软件版本、IP及出厂日期清理垃圾文件与无用软件、安装趋势科技杀毒软件通过gpedit.msc禁止用户更改IP在Office信任中心禁用所有宏并查杀宏病毒安装CCleaner、统一桌面背景按部门缩写与编号规则重命名计算机以及部署大白菜PE系统等关键步骤。同时附带多张“计算机终端机及网络信息接入点巡检记录表”和“计算机终端机主机硬件信息记录表”覆盖CPU、内存、硬盘、网卡、显卡、显示器等硬件品牌型号记录模板以及网络接入点、配线架、交换机接口、跳线标签、IP/MAC/网关/DNS等网络信息登记项目适合企业IT部门用于日常设备维护、故障排查和资产管理。资源为单个doc文档约3.63MB表格化结构清晰可直接打印或按需修改使用。目前已有617人学习下载是规范计算机巡检流程、沉淀设备台账的实用参考模板。1. 把巡检记录从“填表”变成“资产”计算机巡检记录到底在记什么刚接手机房运维的新人最容易把“计算机巡检记录.doc”当成一张行政表格——每天开机看看指示灯截图贴上去月底归档完事。但干过几年一线运维的都清楚这份文档真正承载的是设备的“病历本”风扇转速从哪天开始异常、硬盘的 SMART 告警在哪个批次集中爆发、UPS 切换测试的日志有没有对得上。没有这些历史记录设备出故障时你只能靠“感觉它最近不太对劲”来猜碰上硬盘集体返修批次这类问题连批次号都回溯不出来。巡检记录不是给领导看的是给三个月后的自己看的。它的核心价值是两条一是把“正常”量化出基线偏离基线才是故障的前兆二是让故障排查有迹可循能回溯出“第一次出现异常”的时间点。这篇笔记就把这套方案讲透巡检项怎么定、数据怎么采、记录文档怎么建才不会被翻账时骂娘以及最容易返工的五个坑。适合谁看正在搭巡检体系、被审计要求追着要记录、或者想把纯手工巡检改成半自动化的运维工程师。新手能照着落地熟手可以跳过基础部分直接看参数和坑。2. 先立住底层逻辑巡检项与记录模型的映射关系2.1 为什么巡检记录不能只记“正常/异常”两个状态把巡检记录做成一张只有“正常”和“异常”两列的表是大多数翻车现场的共同起点。理由是单台服务器的运行状态是连续变化的CPU 使用率从 30% 爬到 70% 可能一切正常但从 70% 跳到 95% 并稳定 10 分钟那就是需要关注的趋势。二值化的记录会丢失这个中间过程等异常被标记出来时往往已经过了可以提前干预的窗口。我在实际落地中会按“硬件状态、系统资源、服务可用性、环境参数”四个维度去定义巡检项每条记录至少包含数值型指标和文本型说明两个部分。数值型指标解决“有没有偏离基线”的量化问题文本型说明解决“现场有没有异味、异响、指示灯闪黄”这类机器数据覆盖不到的感知问题。巡检项的具体颗粒度取决于设备角色。核心数据库服务器的硬盘 SMART 状态和 RAID 阵列状态必须逐项记录办公终端的鼠标键盘这类外设就不值得逐项盯。记录模型也不该是一张平铺的大宽表——那会让单条记录有几十个字段录入负担大、出错率高。我一般拆成两层设备台账层记录静态信息资产编号、型号、位置、维保到期日巡检记录层只记动态信息时间、巡检项、数值、状态两层用设备 ID 关联。2.2 巡检周期怎么定一刀切每天巡反而是错的巡检周期的设计直接决定这份记录文档靠不靠谱。常见的错误是统一规定“所有设备每天巡检一次”结果就是巡检员疲于奔命关键设备的数据反而被淹没在海量记录里。更合理的做法是按照设备的业务重要性和故障影响面分三档第一档是核心业务设备——数据库服务器、虚拟化宿主机、核心交换机每天巡检记录全部数值型指标第二档是一般服务器和网络设备——每周两到三次重点看硬件告警和服务状态第三档是办公终端和外围设备——每周一次做抽检和状态确认就行。这样既保证关键设备的连续性数据又不至于让巡检变成纯粹的体力劳动。记录模型还要解决好“谁来填、什么时候填”的问题。巡检记录的最佳实践是在巡检动作完成后 10 分钟内完成录入隔夜补录是记录失真的首要原因——人的记忆会润色现场把不确定的细节自动补成“看起来正常”。这也是我后来坚持推行移动端即时录入、拒绝 PC 端下班前统一补录的原因。3. 把巡检项落成数据记录文档的字段设计与规范约束3.1 一张能跨年追溯的记录表至少要有的九个字段先给出一份我目前在用的巡检记录字段清单这份清单经过三次返工后稳定下来兼容了日常运维和年度审计两个场景字段类型必填说明设备编号文本是与资产台账一一对应格式统一为“机房-机柜-序号”巡检时间日期时间是精确到分钟格式YYYY-MM-DD HH:MM巡检人文本是写全名不写姓氏或花名温度数值是单位 ℃机柜进风温度CPU 使用率数值条件服务器必填终端可选内存使用率数值条件和 CPU 使用率同理硬盘健康状态枚举是正常 / 告警 / 未知告警必须附 SMART 截图指示灯状态枚举是正常 / 异常 / 不适用不适用只允许网络设备选择异常描述文本条件任一状态字段非“正常”时必填写明现象与初步判断这里要特别说一下“硬盘健康状态”这个字段。很多团队用“正常/异常”两态但实际硬盘 SMART 会有 pending sector 这类“暂时没坏但已经在计数”的状态直接判“正常”会漏掉风险判“异常”又会让资产提前进入报废流程。所以我加了“未知”这个状态配合“必须附 SMART 截图”的约束让专业判断发生在记录环节之后而不是记录环节之中。3.2 Word 模板做到“不可乱填”用域控件和内容控件锁住录入格式巡检记录文档的载体选择上团队内部有过一轮争议。用 Excel 建表录入效率高但月底汇总是灾难——每个人改格式、插入行、加批注的风格完全不同直接用 Word 自由填写更乱有人写“正常”有人写“ok”有人画勾。最终我们回到了既有格式约束又允许少量备注的 Word 模板方案用内容控件Content Control把可填写区域锁死。具体做法是打开 Word 的“开发工具”选项卡插入“文本内容控件”并设置为“不允许编辑删除”再给每个控件设置标题属性——这样表格的兼容性最好用 WPS 打开也能识别。下拉类字段比如硬盘状态用“下拉列表内容控件”预设“正常 / 告警 / 未知”三个选项巡检员不可能输入“还行”这类模糊值。日期字段用“日期选择器内容控件”格式固定为yyyy-MM-dd HH:mm从根上解决日期格式不统一的问题。对老工程师来说这套操作 20 分钟就能完成但换来的收益是长期的——你不用再每月花半天时间清理巡检表里的脏数据。3.3 配套一个批处理脚本检查记录完整性比检查内容更重要手工填写总有漏项所以我在模板文件夹里放了一个用 VBS 写的批处理检查脚本。它的职责不是判断巡检内容是否合理——那需要人来做——而是判断该填的字段是否都填了避免“异常描述”留空而状态栏勾了“异常”这类前后矛盾的问题。脚本逻辑很简单遍历文档中的所有内容控件检查带必填标识的控件是否为空检查枚举控件的内容是否在预设值集合内最后弹窗提示缺失项清单。配合 Windows 任务计划程序每天下班前自动跑一遍当天新增的巡检记录文档有缺失就弹窗提醒对应的巡检负责人。这一步自动化极大地减少了月底汇总时补记录的返工量。提示不要在这个检查脚本里做数值范围的自动判断——比如 CPU 使用率超过 90% 就判定异常。边界值的判定依赖上下文一个跑批任务的服务器 CPU 90% 是正常的巡检脚本弹告警只会造成告警疲劳让人逐渐无视所有提示。4. 用脚本半自动化采集巡检项Powershell 与 IPMI 的落地组合4.1 为什么建议“半自动”而不是“全自动”巡检记录自动化的诱惑很大但全自动方案有两个现实问题。一是采集权限问题——读取服务器的温度、风扇转速、电源状态需要 IPMI 的管理员权限把这些权限集中放在一个巡检账号上一旦被攻破就是内网漫游的跳板二是设备多样性问题——机房里有物理机、虚拟机、老式 Unix 服务器不同平台的采集命令和数据格式根本不统一全自动方案的前期适配成本极高。我推荐的落地路线是“半自动”巡检脚本负责采集数据和生成 JSON 数据文件人负责审核数据、填写现场感知信息、确认并签名。这样既把 80% 的重复采集工作省掉了又保留了人在回路里的判断和责任。下面给一套 Windows Server 环境下采集硬件健康数据的 PowerShell 脚本配套使用 IPMI 工具。4.2 采集核心硬件指标一套可跑的 PowerShell 脚本# 巡检采集脚本获取服务器硬件健康状态并输出 JSON # 依赖服务器 BMC 已配置 IPMI over LAN本机已安装 ipmitool param( [string]$BmcIp, # 服务器 BMC 管理口 IP [string]$BmcUser, # 巡检专用账号建议最低权限 [string]$BmcPass, # 巡检专用账号密码 [string]$OutputDir .\inspection_result ) # 1. 通过 IPMI 获取传感器读数温度/风扇/电压 $sensorRaw ipmitool -I lanplus -H $BmcIp -U $BmcUser -P $BmcPass sdr list # 2. 通过 IPMI 获取电源与风扇状态 $selList ipmitool -I lanplus -H $BmcIp -U $BmcUser -P $BmcPass sel elist # 3. 解析传感器输出为结构化对象 $sensorData () foreach ($line in $sensorRaw) { # SDR 输出格式Sensor Name | Reading | Unit | Status if ($line -match ^([^|])\|\s*([\d.])\s*\|([^|])\|\s*(\w)) { $sensorData [PSCustomObject]{ Name $matches[1].Trim() Value $matches[2] Unit $matches[3].Trim() Status $matches[4].Trim() } } } # 4. 检查 SEL系统事件日志中是否有新告警 $alertCount ($selList | Select-String -Pattern Assert | Measure-Object).Count # 5. 输出为 JSON 文件巡检员审核后留档 $result [PSCustomObject]{ TimeStamp Get-Date -Format yyyy-MM-dd HH:mm:ss BmcIp $BmcIp SensorCount $sensorData.Count AlertCount $alertCount Sensors $sensorData } $result | ConvertTo-Json -Depth 3 | Out-File $OutputDir\${BmcIp}_$(Get-Date -Format yyyyMMdd_HHmm).json -Encoding UTF8这段脚本的核心逻辑分四步用sdr list拿所有传感器的当前读数、用sel elist拿系统事件日志、解析文本输出转成结构化对象、最后输出 JSON 文件。这里有三个参数需要特别说明BmcIp用的是带外管理地址不是业务网卡地址。巡检脚本走带外网络是为了避免采集动作本身占用业务带宽同时在业务网络故障时依然能拿到硬件状态。BmcUser建议单独创建巡检专用账号权限降到“只读传感器、读 SEL”级别不要直接拿管理员的 IPMI 账号来跑巡检。之前出过一次事故巡检脚本的账号密码泄露后被用来远程开关服务器电源。OutputDir建议输出到专门的文件服务器共享目录而不是巡检员本地磁盘。集中存放才有后续的趋势分析和审计追溯可言。4.3 把采集结果并入巡检记录文档一个折中的衔接方案脚本产出的 JSON 文件不能直接替代巡检记录文档——审计要求的是人确认过的签字记录不是机器导出的数据转储。我试过一个更省事的办法把 JSON 转成易读的文本摘要巡检员复制粘贴到 Word 模板的“自动采集数据”区域再补充现场观察和签名。对应的摘要生成脚本片段如下# 生成人可读的巡检摘要供粘贴到 Word 巡检记录 $jsonFile Get-ChildItem $OutputDir\*.json | Sort-Object LastWriteTime -Descending | Select-Object -First 1 $data Get-Content $jsonFile.FullName -Raw | ConvertFrom-Json $summary 巡检时间: $($data.TimeStamp) 传感器总数: $($data.SensorCount) SEL 告警数: $($data.AlertCount) 异常项: foreach ($s in $data.Sensors) { if ($s.Status -ne ok) { $summary - $($s.Name): $($s.Value)$($s.Unit) [$($s.Status)]n } } $summary | Out-File .\inspection_summary_$($data.TimeStamp.Replace(:,_)).txt -Encoding UTF8这个衔接方案的关键在于机器采集的数值和人的判断记录分离。JSON 数据作为原始证据永久保存巡检记录文档中的粘贴摘要是人审核后的确认版本。两条线都对得上审计要追溯到哪个批次、哪台机器的哪条传感器异常时都能快速定位。5. 巡检记录常见的五个坑现象、原因与解法5.1 “记录全绿”却漏掉了硬盘返修批次现象月底汇总时所有巡检记录都是“正常”但某批次硬盘在过去三个月里陆续坏了五块事后翻记录根本找不到这批硬盘在坏之前的 SMART 警告趋势。原因巡检员只记录“当前是否正常”不记录“数值变化的趋势”。SMART 的 pending sector 计数从 0 变成 3 时巡检员看到状态仍是“正常”就放过去了没有把这个变化当作异常趋势写入备注。解法在巡检记录模板中增加“与前次对比”一栏差异超过阈值就强制必填说明。具体阈值我自己用的是pending sector 计数增加超过 0 就要写说明温度比前次记录高 5℃ 以上、CPU 平均使用率翻倍这类情况同理。5.2 时间乱序导致故障时间线无法回溯现象某次设备故障后排查发现巡检记录里同一台设备相邻两天的巡检时间差了 30 多个小时中间的空档完全覆盖了故障发生的时间窗口没法定位故障是哪个时间点开始的。原因巡检员在非规定时间补做巡检补录时直接填了当时的时间而不是计划时间或者几个人共用一个账号后巡检的人覆盖了前面的记录。解法巡检时间字段用日期选择器内容控件锁格式同时在巡检执行上明确规则——补录只能填计划巡检时间并且备注栏写“补录原因”。共用一个账号的团队必须分账号不然审计时讲不清谁在什么时间做了什么操作。5.3 IPMI 采集中断了半个月没人发现现象巡检记录越来越“干净”全是有规律的正常数据但实际是巡检脚本跑挂了采集输出目录里根本没有新生成的 JSON 文件而巡检员每天照样在 Word 里填“正常”。原因脚本靠任务计划程序触发执行失败没有告警巡检员只负责填表不负责核对采集脚本的状态。自动化反而成了数据造假的最大温床——不是主观造假是流程断了自己不知道。解法任务计划程序里加一条后续动作检查当天是否有新的 JSON 文件生成没有就发邮件给运维负责人的公共邮箱。注意不要只发给巡检员本人人会自动忽略自己重复见的错误要有第二双眼睛。5.4 Word 模板被改得格式全乱现象季度末汇总时发现某几周的巡检记录表格行高不一致、字体大小混乱有些单元格的内容跑到页面外打印出来根本没法归档。原因巡检员为了方便直接在模板上新增行、复制粘贴时带入了其他文档的样式。内容控件防住了“填错内容”防不住“改动版式”。解法模板文件设置“编辑限制”——只允许在内容控件区域填写其它区域锁定。可以手动操作或者用脚本实现。同时把模板统一放在共享目录里普通巡检员只读不写只有模板维护人有写入权限。5.5 档案电子化了但纸本签名只剩“拍照件”现象审计查巡检记录时要求提供纸质签字页团队拿出来的是一堆照片审计不认可跟设备供应商扯维保责任时更是因为签字的有效性吃过大亏。原因电子文档和电子签名在某些审计场景不被认可尤其涉及设备资产报废和维保纠纷的时候纸本签字才是法定凭证。解法保留两种形态——Word 电子版作为查询存档每个月打印一次纸本签名页打印当天页眉集中签字归档。纸本每季度装订一次封面写明“巡检记录-某机房-某年某季度”存档地点固定。这套成本不高但能显著减少后续和法务、审计、供应商扯皮的时间。6. 把巡检记录变成趋势报表从台账到基线回归分析最后一章给一个进阶用法把历史巡检记录里的温度、CPU 使用率、SMART 数据抽出来做简单的趋势分析让巡检从“查故障”升级为“预测故障”。这套做法不需要额外的监控平台用现有的 Excel 或 Python 就可以实现。常见做法是每季度把 JSON 数据文件和 Word 记录里的数值字段汇总到一张总表按设备编号分组计算每个指标的本季度平均值、最大值、以及相对上季度的偏移量。重点关注两类信号一类是缓慢爬升型——比如某台服务器 CPU 待机温度从 42℃ 每个季度涨 23℃涨到 50℃ 以上就该清灰或检查散热风扇了另一类是波动增大型——同一台设备同一时段的温度读数方差突然变大往往是风扇调速异常或接触不良的前兆。只靠“看”是看不出这些信号的要落到工具上。Excel 里直接做条件格式或者用 Python 的 pandas 分组算均值再画折线都能看出趋势。如果巡检数据积累超过半年可以把数据按小时对齐后看同一时刻的历史对比这是最朴素但有效的方式——某台设备上午十点的温度比过去三十天同一时刻的平均值高 8℃不用等晚上告警上午巡检时就能发现。最后补充两个个人习惯都属于踩出来的教训巡检记录文档的文件命名一定要带设备编号和日期——巡检记录-机房A-20250612.doc省的月底整理时用文件修改时间猜内容巡检记录文档要设置修订模式并保留修订记录——“改了谁看到的版本”和“谁改了什么”这两件事在很多争议里比巡检内容本身更重要。这套方案我自己用了很久最明显的收益是翻记录的成本大幅降低了——从“找不到、看不懂、对不上”变成“能找到、能看懂、能追溯”。希望帮到你也欢迎你在实践中调整参数和字段设计找到适合自己机房的节奏。本文还有配套的精品资源点击获取