xref: /netbsd-src/sbin/gpt/gpt.8 (revision 7d62b00eb9ad855ffcd7da46b41e23feb5476fac)
1.\" $NetBSD: gpt.8,v 1.76 2022/04/07 13:57:44 kre Exp $
2.\"
3.\" Copyright (c) 2002 Marcel Moolenaar
4.\" All rights reserved.
5.\"
6.\" Redistribution and use in source and binary forms, with or without
7.\" modification, are permitted provided that the following conditions
8.\" are met:
9.\"
10.\" 1. Redistributions of source code must retain the above copyright
11.\"    notice, this list of conditions and the following disclaimer.
12.\" 2. Redistributions in binary form must reproduce the above copyright
13.\"    notice, this list of conditions and the following disclaimer in the
14.\"    documentation and/or other materials provided with the distribution.
15.\"
16.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
17.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
20.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
21.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
23.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26.\"
27.\" $FreeBSD: src/sbin/gpt/gpt.8,v 1.17 2006/06/22 22:22:32 marcel Exp $
28.\"
29.Dd April 7, 2022
30.Dt GPT 8
31.Os
32.Sh NAME
33.Nm gpt
34.Nd GUID partition table maintenance utility
35.Sh SYNOPSIS
36.Nm
37.Op Fl Hnqrv
38.Op Fl m Ar mediasize
39.Op Fl s Ar sectorsize
40.Op Fl T Ar timestamp
41.Ar command
42.Op Ar command_options
43.Ar device
44.Nm
45.Ar set
46.Fl l
47.Nm
48.Ar unset
49.Fl l
50.Nm
51.Ar type
52.Fl l
53.Sh DESCRIPTION
54The
55.Nm
56utility provides the necessary functionality to manipulate GUID partition
57tables
58.Pq GPTs ,
59but see
60.Sx BUGS
61below for how and where functionality is missing.
62The basic usage model of the
63.Nm
64tool follows that of the
65.Xr cvs 1
66tool.
67The general options are described in the following paragraph.
68The remaining paragraphs describe the individual commands with their options.
69Here we conclude by mentioning that a
70.Ar device
71is either a special file
72corresponding to a disk-like device or a regular file.
73The command is applied to each
74.Ar device
75listed on the command line.
76.Ss General Options
77The general options allow the user to change default settings or otherwise
78change the behaviour that is applicable to all commands.
79Not all commands use all default settings, so some general options may not
80have an effect on all commands.
81.Bl -tag -width XXXX
82.It Fl H
83Ignore existing MBR (Hybrid MBR/GPT mode).
84.It Fl m Ar mediasize
85Override the default media size for the device (obtained
86from the kernel if possible) or defaulting to the file size for
87plain files.
88.It Fl n
89Do not update the wedge information that
90.Nm
91changed.
92You need to use the
93.Xr dkctl 8
94command manually update the device's wedge configuration if you do that.
95.It Fl q
96Do not print error messages.
97This is not implemented completely yet.
98.It Fl r
99Open the device for reading only.
100.Nm
101Currently this option is primarily useful for the
102.Ic show
103command, but the intent is to use it to implement dry-run behaviour.
104.It Fl s Ar sectorsize
105Override the default sector size for the device (obtained
106from the kernel if possible) or
107.Dv 512
108for plain files.
109.It Fl T Ar timestamp
110Specify a timestamp to be used for uuid generation so that uuids
111are not random and can be consistent for reproducible builds.
112The timestamp can be a pathname, where the timestamps are derived from
113that file, a parseable date for parsedate(3) (this option is not
114yet available in the tools build), or an integer value interpreted
115as the number of seconds from the Epoch.
116.It Fl v
117Controls the verbosity level.
118The level increases with every occurrence of this option.
119There is no formalized definition of the different levels yet.
120.El
121.Ss Commands
122.Bl -tag -width indent
123.\" ==== add ====
124.It Nm Ic add Oo Fl a Ar alignment Oc Oo Fl b Ar blocknr Oc \
125Oo Fl i Ar index Oc Oo Fl l Ar label Oc Oo Fl s Ar size Oc \
126Oo Fl t Ar type Oc
127The
128.Ic add
129command allows the user to add a new partition to an existing table.
130By default, it will create a UFS partition covering the first available block
131of an unused disk space.
132The command-specific options can be used to control this behaviour.
133.Pp
134The
135.Fl a Ar alignment
136option allows the user to specify an alignment for the start and size.
137The alignment is given in bytes and may have a suffix to indicate its
138magnitude.
139.Nm
140will attempt to align the partition.
141.Pp
142The
143.Fl b Ar blocknr
144option allows the user to specify the starting (beginning) sector number of
145the partition.
146The minimum sector number is 1, but has to fall inside an unused region of
147disk space that is covered by the GPT.
148.Pp
149The
150.Fl i Ar index
151option allows the user to specify which (free) entry in the GPT table is to
152be used for the new partition.
153By default, the first free entry is selected.
154.Pp
155The
156.Fl l Ar label
157option allows the user to specify a label for the partition.
158.Pp
159The
160.Fl s Ar size
161option allows the user to specify the size of the partition.
162If there is no suffix, or the suffix is
163.Sq s
164or
165.Sq S
166then size is in sectors, otherwise size is in bytes which must be
167a multiple of the device's sector size.
168Accepted suffix units are
169.Sq b
170to denote bytes,
171.Sq k
172to denote kilobytes,
173.Sq m
174to denote megabytes and
175.Sq g
176to denote gigabytes.
177The minimum size is 1 sector.
178.Pp
179The
180.Fl t Ar type
181option allows the user to specify the partition type.
182The type is given as an UUID, but
183.Nm
184accepts
185.Bl -tag -width "windows-reserved" -compact -offset indent
186.It Cm apple
187Apple HFS
188.It Cm apple-ufs
189Apple UFS
190.It Cm bios
191BIOS Boot
192.It Cm efi
193EFI System
194.It Cm fbsd-legacy
195.Fx
196legacy
197.It Cm fbsd-swap
198.Fx
199swap
200.It Cm fbsd-ufs
201.Fx
202UFS/UFS2
203.It Cm fbsd-vinum
204.Fx
205vinum
206.It Cm zfs
207.Fx ,
208.Nx
209ZFS
210.It Cm linux-data
211Linux data
212.It Cm linux-raid
213Linux RAID
214.It Cm linux-swap
215Linux swap
216.It Cm linux-lvm
217Linux LVM
218.It Cm windows
219Microsoft basic data - NTFS, FAT32 ("msdos"), FAT16, also used for UDF
220.It Cm windows-reserved
221Microsoft reserved
222.It Cm ccd
223.Nx
224ccd component
225.It Cm cgd
226.Nx
227Cryptographic Disk
228.It Cm ffs
229.Nx
230FFSv1/FFSv2
231.It Cm lfs
232.Nx
233LFS
234.It Cm raid
235.Nx
236RAIDFrame component
237.It Cm swap
238.Nx
239swap
240.El
241as aliases for the most commonly used partition types.
242.\" ==== backup ====
243.It Nm Ic backup Oo Fl o Ar outfile Oc
244The
245.Ic backup
246command dumps the MBR or (PMBR) and GPT partition tables to standard
247output or to a file specified by the
248.Ar outfile
249argument in a format to be used by the
250.Ic restore
251command.
252The format is a plist.
253It should not be modified.
254.\" ==== biosboot ====
255.It Nm Ic biosboot Oo Fl A Oc Oo Fl c Ar bootcode Oc Oo Fl b Ar startsec Oc \
256Oo Fl i Ar index Oc Oo Fl L Ar label Oc
257The
258.Ic biosboot
259command allows the user to configure the partition that contains the
260primary bootstrap program, used during
261.Xr boot 8 .
262.Pp
263The
264.Fl A
265options sets the PMBR partition active.
266This should not normally be necessary,
267but some firmware might require it.
268If
269.Fl A
270is omitted, the active flag will be cleared from the PMBR label.
271.Pp
272The
273.Fl c
274option allows the user to specify the filename from which
275.Nm
276should read the bootcode.
277The default is to read from
278.Pa /usr/mdec/gptmbr.bin .
279.Pp
280The partition that should contain the primary bootstrap code,
281.Pq similar to that installed via Xr installboot 8
282is selected using the
283.Fl i ,
284.Fl L
285and
286.Fl b
287options.
288One of these three options is required.
289The
290.Fl i
291option selects the partition given by the
292.Ar index .
293The
294.Fl L
295option selects the partition by
296.Ar label .
297If there are multiple partitions with the same label,
298the first one found will be used.
299The
300.Fl b
301option selects the partition starting at block
302.Ar startsec .
303.\" ==== create ====
304.It Nm Ic create Oo Fl AfP Oc Oo Fl p Ar partitions Oc
305The
306.Ic create
307command allows the user to create a new (empty) GPT.
308By default, one cannot create a GPT when the device contains a MBR,
309however this can be overridden with the
310.Fl f
311option.
312If the
313.Fl f
314option is specified, an existing MBR is destroyed and any partitions
315described by the MBR are lost.
316.Pp
317The
318.Fl A
319options sets the PMBR partition active.
320.Pp
321The
322.Fl P
323option tells
324.Nm
325to create only the primary table and not the backup table.
326This option is only useful for debugging and should not be used otherwise.
327.Pp
328The
329.Fl p
330option changes the default number of partitions the GPT can
331accommodate.
332This is used whenever a new GPT is created.
333By default, the
334.Nm
335utility will create space for 128 partitions (or 32 sectors of 512 bytes).
336.\" ==== destroy ====
337.It Nm Ic destroy Oo Fl r Oc
338The
339.Ic destroy
340command allows the user to destroy an existing, possibly not empty GPT.
341.Pp
342The
343.Fl r
344option instructs
345.Nm
346to destroy the table in a way that it can be recovered.
347.\" ==== header ====
348.It Nm Ic header
349The
350.Ic header
351command displays size information about the media and information from the
352GPT header if it exists.
353.\" ==== label ====
354.It Nm Ic label Oo Fl a Oc Ao Fl f Ar file | Fl l Ar label Ac
355.It Nm Ic label Oo Fl b Ar blocknr Oc Oo Fl i Ar index Oc \
356Oo Fl L Ar label Oc Oo Fl s Ar sectors Oc Oo Fl t Ar type Oc \
357Ao Fl f Ar file | Fl l Ar label Ac
358The
359.Ic label
360command allows the user to label any partitions that match the selection.
361At least one of the following selection options must be specified.
362.Pp
363The
364.Fl a
365option specifies that all partitions should be labeled.
366It is mutually exclusive with all other selection options.
367.Pp
368The
369.Fl b Ar blocknr
370option selects the partition that starts at the given block number.
371.Pp
372The
373.Fl i Ar index
374option selects the partition with the given partition number.
375.Pp
376The
377.Fl L Ar label
378option selects all partitions that have the given label.
379This can cause multiple partitions to be relabeled.
380.Pp
381The
382.Fl s Ar sectors
383option selects all partitions that have the given size.
384This can cause multiple partitions to be labeled.
385.Pp
386The
387.Fl t Ar type
388option selects all partitions that have the given type.
389The type is given as an UUID or by the aliases that the
390.Ic add
391command accepts.
392This can cause multiple partitions to be labeled.
393.Pp
394The
395.Fl f Ar file
396or
397.Fl l Ar label
398options specify the new label to be assigned to the selected partitions.
399The
400.Fl f Ar file
401option is used to read the label from the specified file.
402Only the first line is read from the file and the trailing newline
403character is stripped.
404If the file name is the dash or minus sign
405.Pq Fl ,
406the label is read from
407the standard input.
408The
409.Fl l Ar label
410option is used to specify the label in the command line.
411The label is assumed to be encoded in UTF-8.
412.\" ==== migrate ====
413.It Nm Ic migrate Oo Fl Afs Oc Oo Fl p Ar partitions Oc
414The
415.Ic migrate
416command allows the user to migrate an MBR-based disk partitioning into a
417GPT-based partitioning.
418By default, the MBR is not migrated when it contains partitions of an unknown
419type.
420This can be overridden with the
421.Fl f
422option.
423Specifying the
424.Fl f
425option will cause unknown partitions to be ignored and any data in it
426to be lost.
427.Pp
428The
429.Fl A
430options sets the PMBR partition active.
431.Pp
432The
433.Fl s
434option prevents migrating
435.Bx
436disk labels into GPT partitions by creating
437the GPT equivalent of a slice.
438Note that the
439.Fl s
440option is not applicable to
441.Nx
442partitions.
443.Pp
444The
445.Fl p
446option changes the default number of partitions the GPT can
447accommodate.
448This is used whenever a new GPT is created.
449By default, the
450.Nm
451utility will create space for 128 partitions (or 32 sectors of 512 bytes).
452.Pp
453The
454.Ic migrate
455command requires space at the beginning and the end of the device outside
456any partitions to store the GPTs.
457Space is required for the GPT header
458.Pq which takes one sector
459and the GPT partition table.
460See the
461.Fl p
462option
463for the size of the GPT partition table.
464By default, just about all devices have a minimum of 62 sectors free at the
465beginning of the device, but do not have any free space at the end.
466For the default GPT partition table size on a 512 byte sector size device,
46733 sectors at the end of the device would need to be freed.
468.\" ==== recover ====
469.It Nm Ic recover
470The
471.Ic recover
472command tries to restore the GPT partition label from the backup
473near the end of the disk.
474It is very useful in case the primary label was deleted.
475.\" ==== remove ====
476.It Nm Ic remove Oo Fl a Oc
477.It Nm Ic remove Oo Fl b Ar blocknr Oc Oo Fl i Ar index Oc \
478Oo Fl L Ar label Oc Oo Fl s Ar sectors Oc Oo Fl t Ar type Oc
479The
480.Ic remove
481command allows the user to remove any and all partitions that match the
482selection.
483It uses the same selection options as the
484.Ic label
485command.
486See above for a description of these options.
487Partitions are removed by clearing the partition type.
488No other information is changed.
489.\" ==== resize ====
490.It Nm Ic resize Oo Fl i Ar index Oc Oo Fl b Ar startsec Oc Oo Fl a Ar alignment Oc \
491Oo Fl s Ar size Oc Oo Fl q Oc
492The
493.Ic resize
494command allows the user to resize a partition.
495The partition may be shrunk and if there is sufficient free space
496immediately after it then it may be expanded.
497The
498.Fl s
499option allows the new size to be specified, otherwise the partition will
500be increased to the maximum available size.
501If there is no suffix, or the suffix is
502.Sq s
503or
504.Sq S
505then size is in sectors, otherwise size is in bytes which must be
506a multiple of the device's sector size.
507Accepted suffix units are
508.Sq b
509to denote bytes,
510.Sq k
511to denote kilobytes,
512.Sq m
513to denote megabytes and
514.Sq g
515to denote gigabytes.
516The minimum size is 1 sector.
517If the
518.Fl a
519option is specified then the size will be adjusted to be a multiple of
520alignment if possible.
521If the
522.Fl q
523option is specified then the utility will not print output when a
524resize is not required.
525.\" ==== resizedisk ====
526.It Nm Ic resizedisk Oo Fl s Ar size Oc Oo Fl q Oc
527The
528.Ic resizedisk
529command allows the user to resize a disk.
530With GPTs, a backup copy is stored at the end of the disk.
531If the underlying medium changes size
532.Pq or is going to change size ,
533then the backup copy needs to be moved to the new end of the disk,
534and the last sector available for data storage needs to be adjusted.
535This command does that.
536If the backup copy no longer exists due to the medium shrinking, then
537a new backup copy will be created using the primary copy.
538.Pp
539The
540.Fl s
541option allows the new size to be specified, otherwise the backup copy
542will automatically be placed at the current end of the disk.
543If there is no suffix, or the suffix is
544.Sq s
545or
546.Sq S
547then size is in sectors, otherwise size is in bytes which must be
548a multiple of the device's sector size.
549Accepted suffix units are
550.Sq b
551to denote bytes,
552.Sq k
553to denote kilobytes,
554.Sq m
555to denote megabytes and
556.Sq g
557to denote gigabytes.
558Using the
559.Fl s
560option allows you to move the backup copy prior to resizing the medium.
561This is primarily useful when shrinking the medium.
562If the
563.Fl q
564option is specified then the utility will not print output when a
565resize is not required.
566.\" ==== restore ====
567.It Nm Ic restore Oo Fl F Oc Oo Fl i Ar infile Oc
568The
569.Ic restore
570command restores a partition table that was previously saved using the
571.Ic backup
572command.
573The partition table is read from standard input or a file specified in
574the
575.Ar infile
576argument and is expected to be in the format of a plist.
577It assumes an empty disk.
578The
579.Fl F
580option can be used to blank the disk.
581The new disk does not have to be the same size as the old disk as long as all
582the partitions fit, as
583.Ic restore
584will automatically adjust.
585However, the new disk must use the same sector size as the old disk.
586.\" ==== set ====
587.It Nm Ic set Oo Fl a Ar attribute Oc Oo Fl N Oc Oo Fl i Ar index Oc \
588Oo Fl b Ar startsec Oc
589.It Nm Ic set Fl l
590The
591.Ic set
592command sets various partition attributes.
593The
594.Fl l
595flag lists all available attributes.
596The
597.Fl a
598option specifies which attributes to set and may be specified more than once,
599or the attributes can be comma-separated.
600If the
601.Fl N
602option and no
603.Fl a
604option are specified, all attributes are removed.
605The
606.Fl i
607or the
608.Fl b
609option specify which entry to update.
610The possible attributes are
611.Do biosboot Dc ,
612.Do bootme Dc ,
613.Do bootonce Dc ,
614.Do bootfailed Dc ,
615.Do noblockio Dc , and
616.Do required Dc .
617The biosboot flag is used to indicate which partition should be booted
618by legacy BIOS boot code.
619See the
620.Ic biosboot
621command for more information.
622The bootme flag is used to indicate which partition should be booted
623by UEFI boot code.
624The other attributes are for compatibility with
625.Fx
626and are not currently used by
627.Nx .
628They may be used by
629.Nx
630in the future.
631.\" ==== show ====
632.It Nm Ic show Oo Fl aglu Oc Oo Fl i Ar index Oc Oo Fl b Ar startsec Oc
633The
634.Ic show
635command displays the current partitioning on the listed devices and gives
636an overall view of the disk contents.
637With the
638.Fl g
639option the GPT partition GUID will be displayed instead of the GPT partition
640type.
641With the
642.Fl l
643option the GPT partition label will be displayed instead of the GPT partition
644type.
645With the
646.Fl u
647option the GPT partition type is displayed as an UUID instead of in a
648user friendly form.
649With the
650.Fl i
651or the
652.Fl b
653option, all the details of a particular GPT partition will be displayed.
654The format of this display is subject to change.
655With the
656.Fl a
657option, all information for all GPT partitions (just like with
658.Fl i Ar index )
659will be printed.
660None of the options have any effect on non-GPT partitions.
661The order of precedence for the options are:
662.Fl a ,
663.Fl i ,
664.Fl l ,
665.Fl g ,
666.Fl u .
667.\" ==== type ====
668.It Nm Ic type Oo Fl a Oc Fl T Ar newtype
669.It Nm Ic type Oo Fl b Ar blocknr Oc Oo Fl i Ar index Oc \
670Oo Fl L Ar label Oc Oo Fl s Ar sectors Oc Oo Fl t Ar type Oc \
671Fl T Ar newtype
672.It Nm Ic type Fl l
673The
674.Ic type
675command allows the user to change the type of any and all partitions
676that match the selection.
677It uses the same selection options as the
678.Ic label
679command.
680See above for a description of these options.
681The
682.Fl l
683flag lists available types.
684.\" ==== unset ====
685.It Nm Ic unset Fl a Ar attribute Oo Fl i Ar index Oc Oo Fl b Ar startsec Oc
686.It Nm Ic unset Fl l
687The
688.Ic unset
689command unsets various partition attributes.
690The
691.Fl l
692flag lists all available attributes.
693The
694.Fl a
695option specifies which attributes to unset and may be specified more than once.
696Alternatively a comma separated list of attributes can be used.
697The
698.Fl i
699or the
700.Fl b
701option specifies which entry to update.
702The possible attributes are
703.Do biosboot Dc ,
704.Do bootme Dc ,
705.Do bootonce Dc ,
706.Do bootfailed Dc ,
707.Do noblockio Dc , and
708.Do required Dc .
709The biosboot flag is used to indicate which partition should be booted
710by legacy BIOS boot code.
711See the
712.Ic biosboot
713command for more information.
714The other attributes are for compatibility with
715.Fx
716and are not currently used by any
717.Nx
718code.
719They may be used by
720.Nx
721code in the future.
722.\" ==== uuid ====
723.It Nm Ic uuid Oo Fl a Oc
724.It Nm Ic uuid Oo Fl b Ar blocknr Oc Oo Fl i Ar index Oc \
725Oo Fl L Ar label Oc Oo Fl s Ar sectors Oc Oo Fl t Ar type Oc
726The
727.Ic uuid
728command allows the user to change the UUID of any and all partitions
729that match the selection.
730It uses the same selection options as the
731.Ic label
732command.
733See above for a description of these options.
734If
735.Fl a
736is used, then the header UUID is changed as well.
737.Pp
738The primary purpose of this command is for use after cloning a disk to
739prevent collisions when both disks are used in the same system.
740.\" ==== end of commands ====
741.El
742.Sh EXIT STATUS
743The
744.Nm
745command exits with a failure status (1) when the header command
746is used and no GPT header is found.
747This can be used to check for the existence of a GPT in shell scripts.
748.Sh EXAMPLES
749.Bd -literal
750nas# gpt show wd3
751       start        size  index  contents
752           0           1         PMBR
753           1  3907029167
754nas# gpt create wd3
755nas# gpt show wd3
756       start        size  index  contents
757           0           1         PMBR
758           1           1         Pri GPT header
759           2          32         Pri GPT table
760          34  3907029101
761  3907029135          32         Sec GPT table
762  3907029167           1         Sec GPT header
763nas# gpt add -s 10486224 -t swap -i 1 wd3
764nas# gpt label -i 1 -l swap_1 wd3
765partition 1 on rwd3d labeled swap_1
766nas# gpt show wd3
767       start        size  index  contents
768           0           1         PMBR
769           1           1         Pri GPT header
770           2          32         Pri GPT table
771          34    10486224      1  GPT part - NetBSD swap
772    10486258  3896542877
773  3907029135          32         Sec GPT table
774  3907029167           1         Sec GPT header
775nas# gpt show -l wd3
776       start        size  index  contents
777           0           1         PMBR
778           1           1         Pri GPT header
779           2          32         Pri GPT table
780          34    10486224      1  GPT part - "swap_1"
781    10486258  3896542877
782  3907029135          32         Sec GPT table
783  3907029167           1         Sec GPT header
784nas#
785.Ed
786.Pp
787Booting from GPT on a BIOS system: this creates a bootable partition.
788.Bd -literal
789xotica# gpt create wd1
790xotica# gpt add -b 1024 -l bootroot -t ffs -s 1g wd1
791/dev/rwd1: Partition 1 added: 49f48d5a-b10e-11dc-b99b-0019d1879648 1024 2097152
792xotica ~# dmesg | tail -2
793wd1: GPT GUID: 660e0630-0a3f-47c0-bc52-c88bcec79392
794dk0 at wd1: "bootroot", 2097152 blocks at 1024, type: ffs
795xotica# gpt biosboot -L bootroot wd1
796xotica# newfs dk0
797xotica# installboot /dev/rdk0 /usr/mdec/bootxx_ffsv1
798xotica# mount /dev/dk0 /mnt
799xotica# cp /usr/mdec/boot /mnt
800.Ed
801.Pp
802Note that
803.Ic biosboot
804is not needed for UEFI systems.
805.Sh SEE ALSO
806.Xr boot 8 ,
807.Xr dkctl 8 ,
808.Xr fdisk 8 ,
809.Xr installboot 8 ,
810.Xr mount 8 ,
811.Xr newfs 8 ,
812.Xr swapctl 8
813.Sh HISTORY
814The
815.Nm
816utility appeared in
817.Fx 5.0
818for ia64.
819.Nm
820utility first appeared in
821.Nx 5.0 .
822.Sh BUGS
823The development of the
824.Nm
825utility is still work in progress.
826Many necessary features are missing or partially implemented.
827In practice this means that the manual page, supposed to describe these
828features, is farther removed from being complete or useful.
829As such, missing functionality is not even documented as missing.
830However, it is believed that the currently present functionality is reliable
831and stable enough that this tool can be used without bullet-proof footware if
832one thinks one does not make mistakes.
833.Pp
834It is expected that the basic usage model does not change, but it is
835possible that future versions will not be compatible in the strictest sense
836of the word.
837Also, options primarily intended for diagnostic or debug purposes may be
838removed in future versions.
839.Pp
840Another possibility is that the current usage model is accompanied by
841other interfaces to make the tool usable as a back-end.
842This all depends on demand and thus feedback.
843