当前位置: 首页 > news >正文

如何在使用kickstart安装物理机操作系统的过程中核对服务器的SN

原因

  • 在使用kickstart对物理机进行重装的时候,由于自动化配置,挂载镜像重启之后就会自动化开始安装部署,不够安全,万一选错服务器没有办法回退。
  • 因此可以在kickstart的ks配置文件中新增服务器SN的校验,当校验不通过的情况下,报错并退出安装

实现

%pre --erroronfail
#!/bin/bash
# 检查当前需要进行重装的服务器是否是存在的SN
# 获取当前服务器序列号
CURRENT_SN=$(cat /sys/class/dmi/id/product_serial)
# 检查白名单文件是否存在
if [ ! -f /run/install/repo/sn ]; thenwhiptail --title "ERROR" --msgbox "SN whitelist file not found" 12 50 > /dev/consolepoweroff
fi
# 检查序列号是否在白名单中
if ! grep -q "^${CURRENT_SN}$" /run/install/repo/sn; thenwhiptail --title "ERROR" --msgbox "Invalid server SN: ${CURRENT_SN}" 12 50 > /dev/consolepoweroff
fi
%end

解读

  • 使用%pre --erroronfail参数,可以保证kickstart在pre脚本执行阶段出错就退出安装
  • 安装过程中,系统处于nochroot的环境,无法使用dmidecode命令匹配序列号,因此使用cat /sys/class/dmi/id/product_serial命令,读取序列号信息
  • 在ISO文件中封装进sn文本,包含当前批次需要安装的物理机的SN,安装过程中挂载在/run/install/repo/sn目录
  • 判断当前sn文件是否存在
  • 判断获取到的sn是否在sn文件中
  • 如果同时满足这两个需求,则继续安装;否则报错并退出安装

相关文章:

  • 编译与链接,咕咕咕
  • IP 风险画像技术略解
  • QT开发技术 【元对象系统反射机制 】三
  • uniapp|实现多端图片上传、拍照上传自定义插入水印内容及拖拽自定义水印位置,实现水印相机、图片下载保存等功能
  • 网络安全之XSS漏洞
  • 边缘计算新基建:iVX 轻量生成模块的 ARM 架构突围
  • 服务器开机自启动服务
  • 【技术测评】黑龙江亿林网络「启强 Plus」服务器实测:56 核 32G 配置下的性能表现与应用场景解析
  • Kotlin扩展函数与属性实战指南:从入门到企业级应用
  • Kotlin 中的数据类型有隐式转换吗?为什么?
  • pythonocc hlr实例 deepwiki 显示隐藏线
  • 力扣刷题Day 60:全排列(46)
  • 【Prometheus+Grafana实战:搭建监控系统(含告警配置)】
  • HTTP代理的实际用处有哪些?HTTP代理强在哪里?
  • 54、C# 委托 (Delegate)
  • 专栏更新通知
  • 如何手搓一个查询天气的mcp server
  • 【全因子组及排序】2022-1-23
  • 【计算机网络】IPv6和NAT网络地址转换
  • DeepSeek R1模型已完成小版本试升级
  • 电商网站设计公司可去亿企邦/百度知道合伙人答题兼职
  • 网站开发项目经理/公司网站如何制作
  • 在线教育网站流量是怎样做的/网站运营需要多少钱
  • 深圳网站建设hi0755/比百度好用的搜索引擎
  • 网站建设中高低端区别/seo快速排名百度首页
  • 做房产网站多少钱/开鲁seo服务