1MKKSISO(1) Lorax MKKSISO(1)
2
3
4
6 mkksiso - Make Kickstart ISO Utility Documentation
7
8 Authors
9 Brian C. Lane <bcl@redhat.com>
10
11 mkksiso is a tool for creating kickstart boot isos. In it's simplest
12 form you can add a kickstart to a boot.iso and the kickstart will be
13 executed when the iso is booted. If the original iso was created with
14 EFI and Mac support the kickstart boot.iso will include this support as
15 well.
16
17 mkksiso The host system architecture needs to match that of the iso.
18 mkksiso will raise an error if it finds a .discinfo on the iso with a
19 mismatched arch.
20
21 As of version 38.4 mkksiso needs to be run as root to create a fully
22 bootable iso. Booting on a UEFI system with the iso written to a flash
23 drive requires updating the config files in the embedded efiboot image
24 in the iso. If you do not need this functionality you can still run it
25 as a user by passing --skip-mkefiboot.
26
28 Add a kickstart and files to an iso
29
30
31 usage: mkksiso [-h] [-a ADD_PATHS] [-c CMDLINE] [-r ARGS] [--debug] [--no-md5sum] [--ks KICKSTART] [-V VOLID] [--skip-mkefiboot] [KICKSTART] input_iso output_iso
32
33 Positional Arguments
34 KICKSTART
35 Optional kickstart to add to the ISO
36
37 input_iso
38 ISO to modify
39
40 output_iso
41 Full pathname of iso to be created
42
43 Named Arguments
44 -a, --add
45 File or directory to add to ISO (may be used multiple times)
46
47 Default: []
48
49 -c, --cmdline
50 Arguments to add to kernel cmdline
51
52 Default: ""
53
54 -r, --rm-args
55 Space separated list of arguments to remove from the kernel cmd‐
56 line
57
58 Default: ""
59
60 --debug
61 print debugging info
62
63 Default: 20
64
65 --no-md5sum
66 Do not run implantisomd5 on the ouput iso
67
68 Default: True
69
70 --ks Optional kickstart to add to the ISO
71
72 -V, --volid
73 Set the ISO volume id, defaults to input's
74
75 --skip-mkefiboot
76 Skip running mkefiboot
77
78 Default: False
79
81 Create a kickstart like you normally would, kickstart documentation can
82 be found here, including the url and repo commands. If you are creat‐
83 ing a DVD and only need the content on the DVD you can use the cdrom
84 command to install without a network connection. Then run mkksiso like
85 this:
86
87 mkksiso --ks /PATH/TO/KICKSTART /PATH/TO/ISO /PATH/TO/NEW-ISO
88
89 This will create a new iso with the kickstart in the root directory,
90 and the kernel cmdline will have inst.ks=... added to it so that it
91 will be executed when the iso is booted (be careful not to boot on a
92 system you don't want to wipe out! There will be no prompting).
93
94 By default the volume id of the iso is preserved. You can set a custom
95 volid by passing -V and the string to set. The kernel cmdline will be
96 changes, and the iso will have th custom volume id.
97
98 eg.:
99
100 mkksiso -V "Test Only" --ks /PATH/TO/KICKSTART /PATH/TO/ISO /PATH/TO/NEW-ISO
101
103 You can add repo directories to the iso using --add /PATH/TO/REPO/,
104 make sure it contains the repodata directory by running createrepo_c on
105 it first. In the kickstart you can refer to the directories (and files)
106 on the iso using file:///run/install/repo/DIRECTORY/. You can then use
107 these repos in the kickstart like this:
108
109 repo --name=extra-repo --baseurl=file:///run/install/repo/extra-repo/
110
111 Run mkksiso like so:
112
113 mkksiso --add /PATH/TO/REPO/ --ks /PATH/TO/KICKSTART /PATH/TO/ISO /PATH/TO/NEW-ISO
114
116 You can use the kickstart liveimg command, to install a pre-generated
117 disk image or tar to the system the iso is booting on.
118
119 Create a disk image or tar with osbuild-composer or livemedia-creator,
120 make sure the image includes tools expected by anaconda, as well as the
121 kernel and bootloader support. In osbuild-composer use the tar image
122 type and make sure to include the kernel, grub2, and grub2-tools pack‐
123 ages. If you plan to install it to a UEFI machine make sure to include
124 grub2-efi and efibootmgr in the blueprint.
125
126 Add the root.tar.xz file to the iso using --add /PATH/TO/ROOT.TAR.XZ,
127 and in the kickstart reference it with the liveimg command like this:
128
129 liveimg --url=file:///run/install/repo/root.tar.xz
130
131 It is also a good idea to use the --checksum argument to liveimg to be
132 sure the file hasn't been corrupted:
133
134 mkksiso --add /PATH/TO/root.tar.xz --ks /PATH/TO/KICKSTART /PATH/TO/ISO /PATH/TO/NEW-ISO
135
136 When this iso is booted it will execute the kickstart and install the
137 liveimg contents to the system without any prompting.
138
140 You can add arguments to the kernel cmdline in the ISO config files by
141 using --cmdline, like this:
142
143 mkksiso --cmdline "console=ttyS0,115200n8" /PATH/TO/ISO /PATH/TO/NEW-ISO
144
145 Removing arguments
146 mkksiso version 37.3 and later support removing arguments from the cmd‐
147 line. This can be done with or without adding a kickstart to the iso:
148
149 mkksiso --rm "quiet console" /PATH/TO/ISO /PATH/TO/NEW-ISO
150
151 will remove the quiet and console arguments from all the the kernel
152 cmdlines on the ISO.
153
154 Changing existing arguments
155 With the combination of --rm and --command it is now possible to change
156 existing arguments. For example let's say the ISO has a console=tty3
157 set on the cmdline. You want to change that to ttyS0 so you run this:
158
159 mkksiso --cmdline "console=ttyS0,115200n8" --rm "console" /PATH/TO/ISO /PATH/TO/NEW-ISO
160
161 which will first remove all instances of console in the config files,
162 and then add the new console argument.
163
165 mkksiso only depends on xorriso and isomd5sum. It takes advantage of
166 xorriso's ability to extract files, replace files, and add files to the
167 iso without need to mount it.
168
169 mkksiso extracts all of the config files it knows about, and then modi‐
170 fies the boot configuration files to include the inst.ks command. It
171 adds any extra command line arguments you specify, and then builds the
172 new iso with the configuration files replaced, and new files and direc‐
173 tories added.
174
175 The last step is to update the iso checksums so that booting with test
176 enabled will pass. It uses implantisomd5 from the isomd5sum project.
177
179 Weldr Team
180
182 2018, Red Hat, Inc.
183
184
185
186
18739.0 Feb 20, 2023 MKKSISO(1)