0

很长一段时间以来,我一直在使用一些经过验证的步骤来创建我自己的 Oracle Linux 6uX ISO 映像和自定义 kickstart 脚本。我基本上做的是使用hdiutil挂载iso-image,将内容复制到工作文件夹,进行修改并使用makeiso(cdrutils)创建iso。此处已描述了详细信息;http://www.reddipped.com/2015/12/virtualbox-soa-bpm-osb-bam-33-minutes/

我刚刚第一次尝试创建自定义 Oracle Linux 7u2 ISO 映像,但直到现在都失败了。

首先使用 hdiutil 给出的打开图像和 'hdiutil: attach failed - no mountable file systems'。相反,我使用 Keka 来提取 iso 的内容。修改了提取的iso-image的内容;

  • 删除 /isolinux/boot.cat,
  • 添加新的 ks-bd.ks
  • 向 isolinux.cfg 添加一个菜单项,以便能够使用 kickstart 文件开始安装

    label linux_basicserver_silent\
      menu label ^Install basic server silent\
      menu default\
      kernel vmlinuz\
      append initrd=initrd.img ks=cdrom:\/ks-bd.ks\
    

然后再次创建了一个iso;

## Make isolinux.bin writable
chmod u+w V100082-01U/isolinux/isolinux.bin

# Build the V100082-01Uiso
cdrtools/cdrtools-*/mkisofs/OBJ/i386-darwin-clang/mkisofs -r -J -T -o V100082-01U.iso -b isolinux/isolinux.bin \
-c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R \
-m TRANS.TBL -v -V Oracle\ Linux\ 7.2 ./V100082-01U

安装 iso 映像并选择“linux_basicserver_silent”安装选项后,安装似乎停止在消息“开始自动安装”上

在此处输入图像描述

在安装菜单中选择标准交互式安装时,安装也会冻结,最后一步是“达到目标基本系统”

在此处输入图像描述

几分钟后,重复显示相同的错误“dracut-initqueue timeout”。

在此处输入图像描述

任何提示如何解决这个问题?

-- 2016 年 10 月 27 日更新 --

当将原始iso与使用mkisofs创建的iso进行比较时,我认为没有实质性差异..

原来的

./isoinfo -d -i V100082-01.iso
CD-ROM is in ISO 9660 format
System id: LINUX
Volume id: OL-7.2 Server.x86_64
Volume set id: 
Publisher id: 
Data preparer id: 
Application id: GENISOIMAGE ISO 9660/HFS FILESYSTEM CREATOR (C) 1993 E.YOUNGDALE (C) 1997-2006 J.PEARSON/J.SCHILLING (C) 2006-2007 CDRKIT TEAM
Copyright File id: 
Abstract File id: 
Bibliographic File id: 
Volume set size is: 1
Volume set sequence number is: 1
Logical block size is: 2048
Volume size is: 2178717
El Torito VD version 1 found, boot catalog is in sector 701

Joliet with UCS level 3 found.
SUSP signatures version 1 found
Rock Ridge signatures version 1 found
Rock Ridge id 'RRIP_1991A'
Eltorito validation header:
    Hid 1
    Arch 0 (x86)
    ID ''
    Cksum AA 55 OK
    Key 55 AA
    Eltorito defaultboot header:
        Bootid 88 (bootable)
        Boot media 0 (No Emulation Boot)
        Load segment 0
        Sys type 0
        Nsect 4
        Bootoff EFE 3838

重建

./isoinfo -d -i V100082-01U.iso 
CD-ROM is in ISO 9660 format
System id: Mac OS X
Volume id: Oracle Linux 7.2
Volume set id: 
Publisher id: 
Data preparer id: 
Application id: MKISOFS ISO9660/HFS/UDF FILESYSTEM BUILDER & CDRECORD CD/DVD/BluRay CREATOR (C) 1993 E.YOUNGDALE (C) 1997 J.PEARSON/J.SCHILLING
Copyright File id: 
Abstract File id: 
Bibliographic File id: 
Volume set size is: 1
Volume set sequence number is: 1
Logical block size is: 2048
Volume size is: 2251903
El Torito VD version 1 found, boot catalog is in sector 718

Joliet with UCS level 3 found.
SUSP signatures version 1 found
Rock Ridge signatures version 1 found
Rock Ridge id 'RRIP_1991A'
Eltorito validation header:
    Hid 1
    Arch 0 (x86)
    ID ''
    Cksum AA 55 OK
    Key 55 AA
    Eltorito defaultboot header:
        Bootid 88 (bootable)
        Boot media 0 (No Emulation Boot)
        Load segment 0
        Sys type 0
        Nsect 4
        Bootoff 2CF 719
4

1 回答 1

0

不要使用 7zip,而是使用 cdrtool 实用程序 isoinfo 来提取原始 iso 映像。

mkdir V100082-01U
cd V100082-01U
isoinfo -R -X -i ../V100082-01.iso

然后修改镜像并使用mkisofs重建

## Make isolinux.bin writable
chmod u+w work/isolinux/isolinux.bin

# Build the V100082-01Uiso 
cdrtools/cdrtools-*/mkisofs/OBJ/i386-darwin-clang/mkisofs -r -J -T -o V100082-01U2.iso -b isolinux/isolinux.bin \
-c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -sysid LINUX \
-m TRANS.TBL -v -V OL-7.2\ Server.x86_64 ./work
于 2016-10-27T20:57:45.783 回答