top of page
Call Us Now : 123-456-7890 

Install Mkisofs Centos: Tips and Tricks for Editing ISO Files Using Mkisofs in Linux

  • glucdermayfascoder
  • Aug 13, 2023
  • 6 min read


To determine the correct value for JAVA_HOME. RHEL or CentOS installs OpenJDK 1.6 into either /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/ or /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/, depending on whether your system is a 32-bit or 64-bit architecture. The JAVA_HOME should point to the directory containing a bin/java executable.


In this method we will get the list of packages for an individual group using YUM or DNF and then copy those packages into BaseOS/AppStream directory respectively. First you must decide the list of group(s) which you plan to install as part of your custom ISO. To get the list of available groups you can use:




Install Mkisofs Centos




I personally prefer this method as the success rate is much better to get a working list of packages. In this method we will install CentOS 8 on one of my VMs and then select the respective groups which you plan to include in your custom ISO.


I would not recommend selecting any extra add-on packages at this stage unless you know what you are doing. You can always manually install the packages later once the node is UP based on your requirement.


Now that we have all the required rpms in place under respective repo directory, next we must create repodata for this individual repositories. To achieve this we will need createrepo tool which you can install using yum or dnf:


Next we would need Comps.xml file from the original DVD for both the repositories. This comps.xml contains the list of groups and the mapping packages for individual group, this file is normally referred by the installation medium to identify the available groups and add-on packages.


Now copy all your rpms to this path. Once you are done execute createrepo to create all repodata content inside ExtraPackages. This will create the required repository data files for perform installation using this repo.


I hope you are aware that in RHEL/CentOS we use kickstart to automate the installation procedure. I have already written a detailed article on kickstart configuration along with a sample kickstart file. Here you can use the kickstart template from the VM which you might have created at Step 3 (Method-2) under /root/anaconda-ks.cfg


Next we will modify the GRUB2 splash screen which gives us the option to perform the installation, you could also modify the splash screen of the GRUB2 menu. We will use the default configuration file with little modification to support our customization.


So finally we are at the final stages of this article. You are just one step away from having your own custom ISO. We require mkisofs tool to create our custom ISO which is part of genisoimage in RHEL/CentOS 8 so to install this you can use yum/dnf:


It is easier if you use the DVD which was used to bring up your source linux server or else you will have to figure out a way to use the same rpm with same version. If there is a change in version then you may face dependency issues during installation.


I am trying to create a custom ISO image which would install the minimal required RPMS along with some custom written RPM of my app. and Also wants to perform some post install steps like configuring my App and VPN configuration etc.


NOTE: You can skip this step if you do not want to reduce the ISO content and you intention is only to automate the ISO installationThis is the most tricky part and effort taking as it is very hard to identify the dependency rpms one by one for any package you add in your list. To start with assuming you want to create a minimal setup as I have used in the above kickstart file.Remove all the rpms from Packages directory and start the minimization


You can create a script which will sort the above list with only rpm names and copy those rpms inside the Packages directory from the original DVDNext we have to create a repodata for this new content so install createrepo rpm on your build server


There might be some dependency like python-deltarpm, deltarpm, libxml2-python so make sure those are also installed. The same can be installed using 'yum' assuming you have a configured yum repository.


Here as we can see the dependency rpm name for python-deltarpmI always prefer to use the package list from a Red Hat installed with "Minimal" Group which shall give me the list of 'Core' and dependency rpms ( rpm -qa sort ) and the same can be used for all future customization as the base package list,


Hi David,Thanks for your feedback. I am not sure if I completely understood your problem. You can always create multiple label to poont to different kickstart files either available on the image or on any network server like http or ftp. The installation will go through as long as the kickstart files and other installation files are accessible


Hi, I wanted to add kaspesky rpm to my centos 6.9. I tried to copy the rpms there and then navigate inside ExtraPackages. Lastly run createrepo .(dot). But unfortunately I get issues while i run iso. Have you done this ? If yes, what are the differences in the steps given above. Thank you.


Graphical front end programs for CD/DVD burning and mastering like Brasero already have support for cdrtools and no additional settings are required. Since the packages also provide cdrkit packages, no tool should break in your Fedora installation.


10:cdrecord-3.01-a31.1.el5.x86_64 from epel-cdrtools has depsolving problems --> Missing Dependency: cdrtools-libs%_isa = 10:3.01-a31.1.el5 is needed by package 10:cdrecord-3.01-a31.1.el5.x86_64 (epel-cdrtools)10:cdda2wav-3.01-a31.1.el5.x86_64 from epel-cdrtools has depsolving problems --> Missing Dependency: cdrtools-libs%_isa = 10:3.01-a31.1.el5 is needed by package 10:cdda2wav-3.01-a31.1.el5.x86_64 (epel-cdrtools)10:mkisofs-3.01-a31.1.el5.x86_64 from epel-cdrtools has depsolving problems --> Missing Dependency: cdrtools-libs%_isa = 10:3.01-a31.1.el5 is needed by package 10:mkisofs-3.01-a31.1.el5.x86_64 (epel-cdrtools)Error: Missing Dependency: cdrtools-libs%_isa = 10:3.01-a31.1.el5 is needed by package 10:mkisofs-3.01-a31.1.el5.x86_64 (epel-cdrtools)Error: Missing Dependency: cdrtools-libs%_isa = 10:3.01-a31.1.el5 is needed by package 10:cdda2wav-3.01-a31.1.el5.x86_64 (epel-cdrtools)Error: Missing Dependency: cdrtools-libs%_isa = 10:3.01-a31.1.el5 is needed by package 10:cdrecord-3.01-a31.1.el5.x86_64 (epel-cdrtools)


When I add a new feature, I of course do not just do what mightbe obvious but I look at the related standards (e.g. Eltorito) andimplement something more general. ElTorito defines a genericinterface for different platforms and this is why mkisofs got amethod based on allowing all known such platforms includingEFI and PPC.


The following steps are required ONLY if you are attempting to fix a booting issue with the DAC960 RAID controller. (The installation CD released by CentOS has a bug which does not allow CentOS 4 to be installed on some computers.)


The KVM Hypervisor for RHEL or CentOS 6 has a problem with the out of data kernel not supporting pair bonding, VLAN tagging, and KVM bridging all at the same time. The following CD or DVD respin image provides access to the updated kernel and initscripts to better support such hypervirsors. The following directions from Greg Haygood at -a-custom-centos-5-install-cd are quite good, and these notes are based on them.


If you need to install CentOS 7 frequently, with the same configuration, build your own DVD media for unattended kickstart installation. We show you how to make it work. As of CentOS 7 this only works for clean installs. We assume you know how to burn your own .iso files to a DVD-ROM.


We need two machines. The first one can be a MacOS, CentOS, or Linux computer, and to burn you final custom DVD-ROM it will need to have an optical drive. The other machine can be a VM (we assume you are using VirtualBox) or a second computer, and is used as a CentOS installation target, and to perform most of the customization and ISO building work.


This attended custom installation becomes the starting point for your unattended custom installer. You can install CentOS from the downloaded original CentoOS installer iso image in MacOS onto a VirtualBox VM, or install from a DVD onto a VM, or another machine.


Go through the installation and configure things they way you want them for future unattended installations. You may want to enable Ethernet, set a default host name and domain, set timezone, root password, and create a userid (as administrator) and password. Later we will be able to edit the details. This is just to create a convenient starting point.


Next we will prepare a staging directory on our CentOS system for our customized installer ISO image. We will mount an ISO image of the installer, or a DVD-ROM drive with installer disk inserted, copy files to the staging directory, and edit some files before we finalize the custom image.


You can skip first to Section Build ISO Image, to check if you can reconstruct an image that boots and installs correctly on VirtualBox without making any modifications. Once that works, you can return to this point, and continue with configuring and customizing kickstart.


If you want to use UEFI mode boot and run kickstart from there, you need to edit a different menu definition file. The UEFI mode menu is defined in /var/tmp/media/mydrive/EFI/BOOT/grub.cfg and the format is different. To add a menu option that starts kickstart installation insert this:


There also is an image under /var/tmp/media/mydrive/images/ called efiboot.img with containing the same files, but those did not seem used when installing from DVD ROM. However, in case you want to modify those, you can create a mounting point, say /point , and then mount the image file with:


Copy the iso file from your CentOS machine to the machine with VirtualBox installed on it for testing. Using secure copy command (scp) on MacOS for instance, substituting by your id on the CentOS machine, and with the ip address of the CentOS machine. Enter the following on the machine you are copying to, from the directory you want to copy to. 2ff7e9595c


 
 
 

Recent Posts

See All

Comments


Contact Us

Call or Message Us for a Free Quote!

Thanks for submitting!

  • White Facebook Icon
  • White Yelp Icon

500 Terry Francois St.

San Francisco, CA 94158​

info@mysite.com

123-456-7890

© 2023 by Fox Lawn Care.

Proudly created with Wix.com

bottom of page