redhat用kickstart.cfg自动安装后,挂载ISO镜像并从中拷贝文件

本文介绍了如何在Redhat系统中通过kickstart.cfg文件实现自动化安装,并在安装完成后利用%post脚本挂载ISO镜像,从中拷贝所需文件到新安装的系统。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# copy files from the rhel.iso image to system                                                                                      
if [ ! -b /tmp/cdrom ];then
  echo "make cdrom node using mknod" >> /root/ins.log
  # get the major number
  major=$(lsblk |grep rom | awk '{print $2}' |awk -F : '{print $1}')
  # get the minor number
  minor=$(lsblk |grep rom | awk '{print $2}' |awk -F : '{print $2}')
  echo "major=${major}  minor=${minor}" >> /root/ins.log
  # make sure we have what we need; create device node if so
  [ -n "$major" -a -n "$minor" ] && mknod /tmp/cdrom b ${major} ${minor}
fi

echo "mount the iso to /mnt/source" >> /root/ins.log
[ ! -d /mnt/source ] && mkdir -p /mnt/source
mount -t iso9660 -o ro /tmp/cdrom /mnt/source

这样的话我们的安装镜像rhel.iso就挂载到/mnt/source目录下,在kickstart.cfg的%post下添加拷贝文件的脚本

# copy the id_rsa.pub to authorized_keys
[ ! -d /root/.ssh ]  && mkdir -p /root/.ssh
cat /mnt/source/id_rsa.pub >> /root/.ssh/authorized_keys
[ $? -ne 0 ] && echo "copy id_rsa.pub to authorized_keys failed." >> /root/ins.log

原始问题:

redhat可以利用kickstart.cfg文件的内容进行自动化安装,并且在kickstart.cfg文件中加入%post标签就可以在安装结束后执行一些脚本,这些脚本放在%post标签后面。

但一个问题是,当安装好OS后,如果我们想从原始的ISO镜像拷贝文件到安装好的系统,那么必需对其进行挂载,以上代码实现了其功能

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值