[BlueOnyx:23846] Re: source code of the bootable iso

Tomohiro Hosaka bokutin at gmail.com
Wed May 20 03:26:59 -05 2020


Hi Michael,

Thank you for the detailed explanation.

Below is an aside.

I've been upgrading online since the days of BlueQuartz (centos3).

This time of the upgrade, in order from the CentOS6 to CentOS7, we
found that it is difficult.
https://wiki.centos.org/TipsAndTricks/CentOSUpgradeTool (It seems that
it has been erased.)
https://web.archive.org/web/20170303161533/https://wiki.centos.org/TipsAndTricks/CentOSUpgradeTool

# preupg -s CentOS6_7
...
... many errors...

# lynx /root/preupgrade/result.html
... oh.. thousand of warnings... give up

I tried running BlueOnyx 5209R with bhyve.

BlueOnyx-5209R-CentOS-7.7-20200116.iso does not support UEFI.
grub2-bhyve is not a real grub, so its functionality is limited.
I can't show the menu, so I have to hard-code it.

grub_install0="linux (cd0)/isolinux/vmlinuz
inst.ks=hd:LABEL=BlueOnyx-5209R-x86_64:/ks/kick_self.cfg
initrd=initrd.img inst.stage2=hd:LABEL=BlueOnyx-5209R-x86_64
rd.live.check quiet net.ifnames=0 biosdevname=0"
grub_install1="initrd (cd0)/isolinux/initrd.img"
grub_install2="boot"

After installation, grub2-bhyve cannot read xfs, so we need to select
/ks/kick_self.cfg.

It is ext4 until BlueOnyx-5209R-CentOS-7.7-20191010.iso, and below
BlueOnyx-5209R-CentOS-7.7-20191118.iso
/ks/kickstart.cfg  -> xfs
/ks/kick_nolvm.cfg -> xfs
/ks/kick_small.cfg -> xfs
/ks/kick_self.cfg  -> ext4

Having experienced this, I became interested in
https://www.blueonyx.it/5209r-manual-install

To understand the difference between cd-install and manual-install,
I wanted to find out about the processes that take place before
/usr/sausalito/scripts/initServices.sh

Since manual-install (CentOS-7-x86_64-DVD-1908.iso) works as it is
without hard coding, we are considering using manual-install if there
is a big problem.

Thank you always,

2020年5月20日(水) 1:39 Michael Stauber <mstauber at blueonyx.it>:
>
> Hi Tomohiro Hosaka,
>
> > I was interested in the source code of the installation iso.
> >
> > I am looking for BlueOnyx-5209R-CentOS-7.7-20200116.iso such as
> > inst.ks and /ks/kick_self.cfg.
> >
> > Are these source codes available?
>
>
> The kickstart files from /ks/ are directly available on the ISO itself.
> These are used during the installation and the only real difference
> between the various kickstart files in the /ks directory of the ISO is
> how they do the partitioning of the disk(s).
>
> The ISO itself is built on CentOS 7.8 via Pungi:
>
> [root at hephaistos ~]# cat /etc/redhat-release
> CentOS Linux release 7.8.2003 (Core)
>
> [root at hephaistos ~]# rpm -q pungi
> pungi-3.12-3.el7.1.noarch
>
> The Kickstart file used to *build* the ISO via Pungi is called 5209R.ks
> (not included on the ISO) and looks like this:
>
>
> [root at hephaistos kickstart]# cat 5209r.ks
> #--------------------------------------------------------------
> # Kickstart file for 5209R on CentOS 7:
>
> #
> ### General configuration:
> #
>
> # Install OS instead of upgrade
> install
>
> # Keyboard layouts and language:
> keyboard 'us'
> lang en_US.UTF-8
>
> # System authorization information
> auth  --useshadow  --passalgo=sha512
>
> # Root password
> rootpw --plaintext blueonyx
>
> # Firewall and SELinux configuration
> firewall --disabled
> selinux --disabled
>
> # Use CDROM installation media
> cdrom
>
>
>
>
>
> # Use graphical install
>
>
> graphical
>
>
>
>
>
> # Do not configure the X Window System
>
>
> skipx
>
>
>
>
>
> # Timezone:
>
>
> timezone America/New_York --isUtc
>
>
>
>
>
> # Services:
>
>
> services --disabled="NetworkManager,firewalld" --enabled="sshd,rsyslog"
>
>
>
>
>
> # Reboot after installation
>
>
> reboot
>
>
>
>
>
> #
>
>
> ### Disk preparation:
>
>
>
> #
>
>
>
>
>
>
>
> # Clear the Master Boot Record
>
>
>
> zerombr
>
>
>
>
>
>
>
> # Partition clearing information
>
>
>
> clearpart --all --initlabel
>
>
>
>
> #
> ### Disk partitioning:
> #
>
> # Physical Partitions #
> part /boot --fstype="ext4" --size=800
> part /boot/efi --fstype="efi" --size=200
> --fsoptions="umask=0077,shortname=winnt"
> part pv.01 --fstype="lvmpv" --grow --size=18512
>
> # LVM Setup #
> volgroup VolGroup00 pv.01
> logvol /tmp  --fstype="xfs" --size=4096 --name=lvtmp --vgname=VolGroup00
> logvol swap  --fstype="swap" --size=4096 --name=lvswap --vgname=VolGroup00
> logvol /  --fstype="xfs" --size=8192 --name=lvroot --vgname=VolGroup00
> logvol /var  --fstype="xfs" --size=8192 --name=lvvar --vgname=VolGroup00
> logvol /home  --fstype="xfs" --size=2000 --name=lvhome
> --vgname=VolGroup00 --grow
>
> # System bootloader configuration
> bootloader --append="net.ifnames=0 biosdevname=0
> rootflags=uquota,grpquota" --location=none
>
> #
> ### Packet Repositories:
> #
>
> repo --name=base --baseurl=http://mirror.centos.org/centos-7/7/os/x86_64/
> url --url="http://mirror.centos.org/centos-7/7/os/x86_64/"
> repo --name=updates
> --baseurl=http://mirror.centos.org/centos/7/updates/x86_64/
> url --url="http://mirror.centos.org/centos/7/updates/x86_64/"
> repo --name=extras
> --baseurl=http://mirror.centos.org/centos/7/extras/x86_64/
> url --url="http://mirror.centos.org/centos/7/extras/x86_64/"
>
> repo --name=5209R
> --baseurl=http://devel.blueonyx.it/pub/BlueOnyx/5200R/el7/blueonyx/x86_64/
> url --url="http://devel.blueonyx.it/pub/BlueOnyx/5200R/el7/blueonyx/x86_64/"
> repo --name=5209R-Testing
> --baseurl=http://devel.blueonyx.it/pub/BlueOnyx/5200R/el7/testing/x86_64/
> url --url="http://devel.blueonyx.it/pub/BlueOnyx/5200R/el7/testing/x86_64/"
> repo --name=CDBUILDER
> --baseurl=file:///var/localrepo/pub/BlueOnyx/5200R/el7/blueonyx/x86_64
> url --url="file:///var/localrepo/pub/BlueOnyx/5200R/el7/blueonyx/x86_64"
>
> #  --ignoremissing
> %packages --nobase
> @core
> anaconda
> grub2
> grub2-efi-x64
> efibootmgr
> efivar-libs
> shim-x64
> authconfig
> chrony
> firewalld
> -postfix
> memtest86+
> syslinux
> @BlueOnyx
> blueonyx-logos
> pv
> -kde-runtime
> -kde-l10n-*
> %end
>
> # blueonyx-cd-installer
>
> %post --log=/root/bx-post-log
> # Run post install script
> #/root/finish_install.sh
>
> # Set default 'root' password:
> echo "blueonyx" | passwd root --stdin
>
> /usr/sausalito/scripts/initServices.sh
>
> %end
> #--------------------------------------------------------------
>
> The commands to build an ISO tree via Pungi that I use is this:
>
> #> pungi --name=BlueOnyx --ver=5209R --destdir=/home/pungi/ --nosource
> --nodebuginfo -G -C -B --bugurl=http://www.blueonyx.it --isfinal
> --config=/home/build_cd.5209R/kickstart/5209r.ks --cachedir=/var/tmp/
>
> #> /usr/bin/mkisofs -v -U -J -R -T -m repoview -m boot.iso -b
> isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size
> 4 -boot-info-table -eltorito-alt-boot -e images/efiboot.img
> -no-emul-boot -V BlueOnyx-5209R-x86_64 -o
> /home/build_cd.5209R/BlueOnyx-$VER.iso /home/build_cd.5209R/5209R
>
> #> /usr/bin/isohybrid -u /home/build_cd.5209R/BlueOnyx-$VER.iso
>
> The only catch for using the above 5209R.ks is this:
>
> It uses a local repository in
> /var/localrepo/pub/BlueOnyx/5200R/el7/blueonyx/x86_64 to install the
> latest version of the RPM "blueonyx-cd-installer". As the OpenVZ OS
> templates and the YUM installer method don't need or use the
> "blueonyx-cd-installer" I only have it in a local repository which is
> used for the ISO-building.
>
> The RPM for that is of course included on the ISO, so you should be able
> to work around that if you want to attempt a full rebuild of the ISO
> yourself.
>
> Other than that: If you let me know what changes you want to make to the
> ISO, then I might be able to assist you or can include these changes on
> the next official rebuild of the ISO.
>
> --
> With best regards
>
> Michael Stauber
> _______________________________________________
> Blueonyx mailing list
> Blueonyx at mail.blueonyx.it
> http://mail.blueonyx.it/mailman/listinfo/blueonyx



More information about the Blueonyx mailing list