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