zoukankan      html  css  js  c++  java
  • redhat用kickstart.cfg自动安装后,挂载ISO镜像并从中拷贝文件

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

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

    # 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
    ————————————————
    版权声明:本文为CSDN博主「loveaborn」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/loveaborn/article/details/11321263


    ————————————————
    版权声明:本文为CSDN博主「loveaborn」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/loveaborn/article/details/11321263

  • 相关阅读:
    程序员的成长阶梯和级别[转]
    【转】教你如何迅速秒杀99%的海量数据处理面试题
    【转】探索C#之布隆过滤器(Bloom filter)
    基于.NET平台常用的框架整理 [转]
    使用 Async 和 Await 的异步编程(C# 和 Visual Basic)[msdn.microsoft.com]
    使用异步编程
    Node.js Web框架收集
    js闭包的定义与应用
    null 与 undefined 区别
    git 基本操作—笔记
  • 原文地址:https://www.cnblogs.com/larrypeng/p/12501187.html
Copyright © 2011-2022 走看看