VirtualBox

source: vbox/trunk/src/VBox/Runtime/common/fs/isomakercmd-man.xml@ 68860

最後變更 在這個檔案從68860是 68860,由 vboxsync 提交於 8 年 前

iprt,vboxmanage,manual: Try write the iso maker docs as a docbook refentry document. Tried to generalize the vboxmanage refentry output handling, moving it to RTMsg*. Made VBoxManage and IPRT generate their C/H sources in their own Makefiles. Hacked the C/H source generation till it can deal with the rather different RTIsoMaker command structure (no sub or sub-sub command stuff).

  • 屬性 svn:eol-style 設為 native
  • 屬性 svn:keywords 設為 Author Date Id Revision
檔案大小: 17.1 KB
 
1<?xml version="1.0" encoding="UTF-8"?>
2<!--
3 manpage for RTIsoMaker/VISO
4
5 Copyright (C) 2006-2017 Oracle Corporation
6
7 This file is part of VirtualBox Open Source Edition (OSE), as
8 available from http://www.alldomusa.eu.org. This file is free software;
9 you can redistribute it and/or modify it under the terms of the GNU
10 General Public License (GPL) as published by the Free Software
11 Foundation, in version 2 as it comes in the "COPYING" file of the
12 VirtualBox OSE distribution. VirtualBox OSE is distributed in the
13 hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
14 -->
15<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
16<refentry id="rtisomaker" lang="en">
17
18 <refentryinfo>
19 <pubdate>$Date: 2017-09-25 20:04:07 +0000 (Mon, 25 Sep 2017) $</pubdate>
20 <title>VISO file format / RTIsoMaker</title>
21 </refentryinfo>
22
23 <refmeta>
24 <refentrytitle>RTIsoMaker</refentrytitle>
25 <manvolnum>8</manvolnum>
26 </refmeta>
27
28 <refnamediv>
29 <!--<refname>VISO</refname>-->
30 <refname>RTIsoMaker</refname>
31 <refpurpose>ISO image maker</refpurpose>
32 <refclass>IPRT</refclass>
33 </refnamediv>
34
35 <refsynopsisdiv>
36 <cmdsynopsis id="synopsis-rtisomaker"> <!-- The 'id' is mandatory and must start with 'synopsis-'. -->
37 <command>RTIsoMaker</command>
38 <arg><replaceable>options</replaceable></arg>
39 <arg>@<replaceable>commands.rsp</replaceable></arg>
40 <arg choice="req" rep="repeat"><replaceable>filespec</replaceable></arg>
41 </cmdsynopsis>
42 </refsynopsisdiv>
43
44 <refsect1>
45 <title>Description</title>
46 <para>Construct a virtual ISO 9660 / Joliet / UDF / HFS hybrid image and either write it to a
47 file (RTIsoMaker) or serve it as a virtual image (VISO).</para>
48
49 <refsect2 id="rtisomaker-viso">
50 <title>VISO file format</title>
51 <para>A VISO file is a virtual ISO image, i.e. constructed in memory from a bunch of files on
52 the host. A VISO is just the recipe describing how to go about this using a syntax vaguely
53 similar to mkisofs and genisoimage.</para>
54
55 <para>One requirement is that the VISO file must start with one of the
56 <option>--iprt-iso-maker-file-marker</option> options. Which of the options you use will
57 dictate the quoting and escaping rules used when reading the file. The option takes the
58 image UUID as an argument.</para>
59
60 <para>The VISO files are treated as UTF-8 and must not contain any byte order marker (BOM).
61 There is currently no way to comment out lines in a VISO file.</para>
62
63 </refsect2>
64
65 <refsect2 id="rtisomaker-filespecs">
66 <title>File specifications and --name-setup</title>
67 <para>All non-options that does not start with '@' are taken to indicate a file, directory,
68 or similar that is should be added to the ISO image. Directories are added recursively and
69 content is subject to filtering options.</para>
70
71 <para>Since there can be up to six different namespaces on an ISO, it is handy to be able to
72 control the names used in each and be able to exclude an object from one or more namespaces.
73 The <option>--name-setup</option> option specifies the file specification format to use
74 forthwith.</para>
75
76 <para>The default setup is:</para>
77 <!-- indent this: -->
78 <para><computeroutput> --name-setup iso+joliet+udf+hfs</computeroutput></para>
79
80 <para>Which means you specify one on-ISO name for all namespaces followed by '=' and the
81 source file system name. Only specifying the source file system will add the
82 file/dir/whatever to the root of the ISO image.</para>
83
84 <para>Lets look at the following two examples:</para>
85
86 <!-- indent these -->
87 <para><computeroutput> /docs/readme.txt=/home/user/Documents/product-x-readme.txt</computeroutput></para>
88 <para><computeroutput> /home/user/Documents/product-x-readme.txt</computeroutput></para>
89
90 <para>In the first case the file <computeroutput>'/home/user/Documents/product-x-readme.txt'</computeroutput>
91 is added to the ISO image as <computeroutput>'/docs/readme.txt'</computeroutput> in all
92 enabled namespaces. In the primary ISO 9660 namespace, the filename will by default be
93 converted to upper case because it's required by the spec.</para>
94
95 <para>In the second case the file is added to the root under the name
96 <computeroutput>'product-x-readme.txt'</computeroutput> in all namespaces. Though, in the
97 primary ISO 9660 namespace the name will be transformed to apply with the current ISO level,
98 probably uppercased, possibly truncated too. </para>
99
100 <para>Given <option>--name-setup iso,joliet,udf</option> you can specify the name individually
101 for each of the three namespace, if you like. If you omit any, they will use last name given.
102 Any names left blank (<computeroutput>==</computeroutput>) will be considered omitted.</para>
103
104 <para>A different name in each namespace:</para>
105 <para><computeroutput> /ISO.TXT=/Joliet.TxT=/UDF.txt=/tmp/iso/real.txt</computeroutput></para>
106 <para>Specific name in the ISO 9660 namespace, same in the rest:</para>
107 <para><computeroutput> /ISO.TXT=/OtherNamespaces.TxT=/tmp/iso/real.txt</computeroutput></para>
108 <para>Omit the file from the ISO 9660 namespace:</para>
109 <para><computeroutput> =/OtherNamespaces.TxT=/tmp/iso/real.txt</computeroutput></para>
110 <para>Omit the file from the joliet namespace:</para>
111 <para><computeroutput> /ISO.TXT==/UDF.TxT=/tmp/iso/real.txt</computeroutput></para>
112 <para>Use the same filename as the source everywhere:</para>
113 <para><computeroutput> /tmp/iso/real.txt</computeroutput></para>
114
115
116 <para>Using for instance <option>--name-setup udf</option> you can add a files/dirs/whatever
117 to select namespace(s) without the more complicated empty name syntax above.</para>
118
119 <para>When adding directories, you can only control the naming and omitting of the directory
120 itself, not any recursively added files and directories below it.</para>
121
122 </refsect2>
123 </refsect1>
124
125 <refsect1 id="rtisomaker-general-options">
126 <title>Options - General</title>
127
128 <variablelist>
129 <varlistentry>
130 <term><option>-o <replaceable>output-file</replaceable></option></term>
131 <term><option>--output=<replaceable>output-file</replaceable></option></term>
132 <listitem><para>The output filename. This option is not supported in VISO mode.</para></listitem>
133 </varlistentry>
134
135 <varlistentry>
136 <term><option>--name-setup <replaceable>spec</replaceable></option></term>
137 <listitem><para>Configures active namespaces and how file specifications are to be
138 interpreted. The specification is a comma separated list. Each element in the list is
139 a sub-list separated by space, <computeroutput>'+'</computeroutput> or
140 <computeroutput>'|'</computeroutput> giving the namespaces that elements controls.
141 Namespaces are divied into two major and minor ones, you cannot specifying a minor
142 before the major it belongs to.</para>
143 <para>Major namespaces and aliases in parentheses:</para>
144 <itemizedlist>
145 <listitem><para>iso (primary, iso9660, iso-9660, primary-iso, iso-primary)</para></listitem>
146 <listitem><para>joliet</para></listitem>
147 <listitem><para>udf</para></listitem>
148 <listitem><para>hfs (hfs-plus)</para></listitem>
149 </itemizedlist>
150 <para>Minor namespaces:</para>
151 <itemizedlist>
152 <listitem><para>rock: rock ridge on previous major namespace (iso / joliet)</para></listitem>
153 <listitem><para>iso-rock: rock ridge extensions on primary ISO 9660 namespace</para></listitem>
154 <listitem><para>joliet-rock: rock ridge on joliet namespace (just for fun)</para></listitem>
155 <listitem><para>trans-tbl: translation table file on previous major namespace</para></listitem>
156 <listitem><para>iso-trans-tbl</para></listitem>
157 <listitem><para>joliet-trans-tbl</para></listitem>
158 <listitem><para>udf-trans-tbl</para></listitem>
159 <listitem><para>hfs-trans-tbl</para></listitem>
160 </itemizedlist>
161 </listitem>
162 </varlistentry>
163 </variablelist>
164
165 </refsect1>
166
167</refentry>
168
169
170<!--
171
172
173Options - General:
174
175
176
177 -dashdash-push-iso <iso-file>
178 -dashdash-push-iso-no-joliet <iso-file>
179 -dashdash-push-iso-no-rock <iso-file>
180 -dashdash-push-iso-no-rock-no-joliet <iso-file>
181 Open the specified ISO file and use it as source file system until the
182 corresponding -dashdash-pop options is encountered. The variations are for
183 selecting which namespace on the ISO to (not) access. These options
184 are handy for copying files/directories/stuff from an ISO without
185 having to extract them first or using the :iprtvfs: syntax.
186
187 -dashdash-pop
188 Pops a -dashdash-push-iso of the source file system stack.
189
190 -dashdash-import-iso <iso-file>
191 Imports everything on the given ISO file. You can use -dashdash-name-setup to
192 omit namespaces.
193
194
195Options - Namespaces:
196
197 -dashdash-iso-level <0|1|2|3>
198 Sets the ISO level:
199 - 0: Disable primary ISO namespace.
200 - 1: ISO level 1: Filenames 8.3 format and limited to 4GB - 1.
201 - 2: ISO level 2: 31 char long names and limited to 4GB - 1.
202 - 3: ISO level 3: 31 char long names and support for >=4GB files.
203 - 4: Fictive level used by other tools. Not yet implemented.
204 Default: 3
205
206 -dashdash-rock-ridge
207 -dashdash-limited-rock-ridge
208 -dashdash-no-rock-ridge
209 Enables or disables rock ridge support for the primary ISO 9660
210 namespace. The -dashdash-limited-rock-ridge option omits a couple of bits in
211 the root directory that would make Linux pick rock ridge over joliet.
212 Default: -dashdash-limited-rock-ridge
213 -J
214 -dashdash-joliet
215 -dashdash-no-joliet
216 Enables or disable the joliet namespace. This option must precede any
217 file specifications. Default: -dashdash-joliet
218
219 -dashdash-joliet-ucs-level <1|2|3>
220 -dashdash-ucs-level <1|2|3>
221 Set the Joliet UCS support level. This is currently only flagged in the
222 image but not enforced on the actual path names. Default level: 3
223
224
225Options - File attributes:
226
227 -dashdash-rational-attribs
228 Enables rational file attribute handling:
229 * Owner ID is set to zero
230 * Group ID is set to zero
231 * Mode is set to 0444 for non-executable files.
232 * Mode is set to 0555 for executable files.
233 * Mode is set to 0555 for directories, preserving stick bits.
234 This is default.
235
236 -dashdash-strict-attribs
237 Counters -dashdash-rational-attribs and causes attributes to be recorded
238 exactly as they appear in the source.
239
240 -dashdash-file-mode <mode>
241 -dashdash-no-file-mode
242 Controls the forced file mode mask for rock ridge, UDF and HFS.
243
244 -dashdash-dir-mode <mode>
245 -dashdash-no-dir-mode
246 Controls the forced directory mode mask for rock ridge, UDF and HFS.
247
248 -dashdash-new-dir-mode <mode>
249 Controls the default mode mask (rock ridge, UDF, HFS) for directories
250 that are created implicitly. The -dashdash-dir-mode option overrides this.
251
252 -dashdash-chmod <mode>:<on-iso-file>
253 Explictily sets the rock ridge, UDF and HFS file mode for a
254 file/dir/whatever that has already been added to the ISO. The mode can
255 be octal, a+x, a+r, or a+rx. (Support for more complicated mode
256 specifications may be implemented at a later point.)
257 Note that only namespaces in the current -dashdash-name-setup are affected.
258
259 -dashdash-chown <owner-id>:<on-iso-file>
260 Explictily sets the rock ridge, UDF and HFS file owner ID (numeric) for a
261 file/dir/whatever that has already been added to the ISO.
262 Note that only namespaces in the current -dashdash-name-setup are affected.
263
264 -dashdash-chgrp <group-id>:<on-iso-file>
265 Explictily sets the rock ridge, UDF and HFS file group ID (numeric) for a
266 file/dir/whatever that has already been added to the ISO.
267 Note that only namespaces in the current -dashdash-name-setup are affected.
268
269
270Options - Booting:
271
272 -dashdash-eltorito-new-entry
273 -dashdash-eltorito-alt-boot
274 Starts a new El Torito boot entry.
275
276 -dashdash-eltorito-add-image <filespec>
277 File specification of a file that should be added to the image and used
278 as the El Torito boot image of the current boot entry.
279
280 -b <on-iso-file>
281 -dashdash-eltorito-boot <on-iso-file>
282 Specifies a file on the ISO as the El Torito boot image for the current
283 boot entry.
284
285 -dashdash-eltorito-floppy-12
286 -dashdash-eltorito-floppy-144
287 -dashdash-eltorito-floppy-288
288 -dashdash-no-emulation-boot
289 -dashdash-hard-disk-boot
290 Sets the boot image emulation type of the current El Torito boot entry.
291
292 -dashdash-boot-load-seg <seg>
293 Specify the image load segment for the current El Torito boot entry.
294 Default: 0x7c0
295
296 -dashdash-boot-load-size <seg>
297 Specify the image load size in emulated sectors for the current El Torito
298 boot entry. Default: 4 (sectors of 512 bytes)
299
300 -dashdash-no-boot
301 Indicates that the current El Torito boot entry isn't bootable. (The
302 BIOS will allegedly configure the emulation, but not attempt booting.)
303
304 -dashdash-boot-info-table
305 Write a isolinux/syslinux boot info table into the boot image for the
306 current El Torito boot entry.
307
308 -dashdash-eltorito-platform-id <id>
309 Set the El Torito platform ID of the current entry, a new entry of the
310 verification entry depending on when it's used. The ID must be one
311 of: x86, PPC, Mac, efi
312
313 -c <namespec>
314 -dashdash-boot-catalog <namespec>
315 Enters the El Torito boot catalog into the namespaces as a file. The
316 'namespec' uses the same format as a 'filespec', but omits the final
317 source file system name component.
318
319 -G <file>
320 -dashdash-generic-boot <file>
321 Specifies a file that should be loaded at offset 0 in the ISO image.
322 The file must not be larger than 32KB. When creating a hybrid image,
323 parts of this may be regenerated by partition tables and such.
324
325
326Options - String properties (applied to active namespaces only):
327
328 -dashdash-abstract <file-id>
329 The name of the abstract file in the root dir.
330
331 -A <text|_file-id>
332 -dashdash-application-id <text|_file-id>
333 Application ID string or root file name. The latter must be prefixed
334 with an underscore.
335
336 -dashdash-biblio <file-id>
337 The name of the bibliographic file in the root dir.
338
339 -dashdash-copyright <file-id>
340 The name of the copyright file in the root dir.
341
342 -P <text|_file-id>
343 -dashdash-publisher <text|_file-id>
344 Publisher ID string or root file name. The latter must be prefixed
345 with an underscore.
346
347 -p <text|_file-id>
348 -dashdash-preparer <text|_file-id>
349 Data preparer ID string or root file name. The latter must be prefixed
350 with an underscore.
351
352 -dashdash-sysid <text>
353 System ID string.
354
355 -dashdash-volid <text>
356 -dashdash-volume-id <text>
357 Volume ID string (label). (It is possible to set different labels for
358 primary ISO 9660, joliet, UDF and HFS by changing the active namespaces
359 using the -dashdash-name-setup option between -dashdash-volume-id occurences.)
360
361 -dashdash-volset <text>
362 Volume set ID string.
363
364
365Options - Compatibility:
366
367 -dashdash-graft-points
368 Alias for -dashdash-name-setup iso+joliet+udf+hfs.
369
370 -l
371 -dashdash-long-names
372 Allow 31 charater filenames. Just ensure ISO level >= 2 here.
373
374 -R
375 -dashdash-rock
376 Same as -dashdash-rock-ridge and -dashdash-strict-attribs.
377
378 -r
379 -dashdash-rational-rock
380 Same as -dashdash-rock-ridge and -dashdash-rational-attribs.
381
382
383Options - VISO specific:
384
385 -dashdash-iprt-iso-maker-file-marker <UUID>
386 -dashdash-iprt-iso-maker-file-marker-bourne <UUID>
387 -dashdash-iprt-iso-maker-file-marker-bourne-sh <UUID>
388 Used as first option in a VISO file to specify the file UUID and that
389 it is formatted using bourne-shell argument quoting & escaping style.
390
391 -dashdash-iprt-iso-maker-file-marker-ms <UUID>
392 -dashdash-iprt-iso-maker-file-marker-ms-sh <UUID>
393 Used as first option in a VISO file to specify the file UUID and that
394 it is formatted using microsoft CRT argument quoting & escaping style.
395
396
397Options - Testing (not applicable to VISO):
398
399 -dashdash-output-buffer-size <bytes>
400 Selects a specific output buffer size for testing virtual image reads.
401
402 -dashdash-random-output-buffer-size
403 Enables randomized buffer size for each virtual image read, using the
404 current output buffer size (-dashdash-output-buffer-size) as maximum.
405
406 -dashdash-random-order-verification <size>
407 Enables verification pass of the image that compares blocks of the given
408 size in random order from the virtual and output images
409
410
411 -->
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette