mkfdmn - Creates a new AdvFS domain
/sbin/mkfdmn [-F] [-l num_pages] [-o] [-p num_pages] [-r] [-x num_pages]
[-V3 | -V4] special domain
-F Ignores overlapping partition or block warnings.
Sets the number of pages in the log file. AdvFS rounds this number up
to a multiple of four.
-o Allows reuse of an existing domain name. It destroys the existing
domain and creates a new domain with the existing domain name.
Sets the number of pages to preallocate for the bitfile metadata table
(BMT). The default is 0 (zero) pages. This option may be useful if you
have chosen the -V3 option; it is not applicable for domains created
-r Specifies the domain as the local root domain. This prevents multiple
volumes in the root domain. AdvFS supports only one volume in the
local root domain. This does not apply to the cluster root domain.
-V3 | -V4
If you specify -V3, creates an AdvFS domain that uses the on-disk for-
mats employed by AdvFS prior to the release of OS Version 5.0; that is,
creates a domain with a domain version number (DVN) of 3. If you
specify -V4, creates an AdvFS domain that uses the on-disk formats
employed by AdvFS starting with the release of OS Version 5.0; that is,
creates a domain with a DVN of 4. If neither option is specified, the
default action is to use the DVN 4 on-disk formats for the domain.
Sets the number of pages by which the BMT extent size grows. The value
must be greater than or equal to 128 pages. The default is 128 pages.
This option may be useful if you have chosen the -V3 option; it is not
applicable for domains created with the -V4 option
Specifies the block special device name, such as /dev/disk/dsk1c, or
the LSM volume name of the initial volume that you use to create the
domain. This command supports short hand names for block special dev-
ices. For example, if you enter dsk2g, it will be translated to
Specifies the name of the domain.
The mkfdmn command creates a domain, which is a logical construct contain-
ing both physical volumes (disks or disk partitions) and filesets. When you
create a domain, you must specify one volume. This can be an LSM volume.
The minimum size of an AdvFS domain depends to some degree on the size of
the disk or logical volume on which it is created. It is generally not pos-
sible to create a domain smaller than 6 or 7 megabytes. If you attempt to
create a domain on a disk or logical volume that is too small, AdvFS will
display errors like the following:
bs_disk_init: disk is too small
mkfdmn: domain init error ENO_MORE_BLKS (-1040)
mkfdmn: can't create new domain 'small_domain'
If you try to add a volume whose partitions would overlap any volumes used
by another file system (as indicated on the disk label), including UFS,
AdvFS, and LSM, the mkfdmn command displays a message asking if you want to
Partition(s) which overlap /dev/rdisk/dsk10a are marked in use.
If you continue with the operation you can
possibly destroy existing data.
CONTINUE? [y/n] y
Use the -F option to disable testing for overlap.
Existing data on the volume you assign to a new domain is destroyed
when the domain is created.
The mkfdmn command does not create a file system that you can mount. In
order to mount an AdvFS file system, the domain must contain one or more
filesets. Run the mkfset command to create at least one fileset within the
new domain. You can access the domain as soon as you mount one or more
filesets. For more information about creating filesets, see mkfset(8).
To remove a domain, dismount all filesets in the domain you want to remove.
Then use the rmfdmn command to remove the domain. Using the rmfdmn command
is preferable to removing the directory defining a domain because the com-
mand changes the disk label information to indicate that the partition is
no longer in use by AdvFS.
If the /etc/fdmns directory is lost or the volumes of a domain are moved to
a different system, you can use the advscan command to re-create a domain.
Domains created with the -V3 option that contain a very large number of
files may need added BMT mcells (similar to inodes in UFS). By default,
AdvFS attempts to grow the BMT by 128 pages each time additional mcells are
needed. This may cause the metadata storage to become very fragmented,
resulting in a premature "out of disk space" error.
You can reduce the amount of BMT metadata fragmentation for file domains
created with the -V3 option either by preallocating space for the BMT or by
increasing the number of pages that the system attempts to grow the BMT
each time space is needed. Use the -p option to preallocate all the BMT
space you expect the file domain to need. Note that space that is preallo-
cated cannot be deallocated. Use the -x option to specify how many pages
the BMT should be extended each time additional mcells are needed.
The following table provides guidelines for BMT growth size in pages (-x
option) and BMT preallocation (-p option) that you may want to use if you
are creating domains with the -V3 option. If your estimated number of files
is greater than those listed in the table, keep doubling the last table
entry until you get a value that is close to your needs.
Number of Files
BMT Growth Size in
BMT Preallocation Size
Less than 50,000 Default (128) 3,600
100,000 256 7,200
200,000 512 14,400
300,000 768 21,600
400,000 1024 28,800
800,000 2048 57,600
If you make a domain using the -p or -x options to increase the BMT extent
allocations, you must use the same option with the same number of pages
when you add a volume to the file domain with the addvol command. See
addvol(8) for information about adding a volume to a file domain.
Use a value in the -x num_pages argument that maintains the following rela-
tionship between the BMT extent size (the number of pages for the -x param-
eter) and the log file size (the number of pages for the -l parameter):
BMT extent size <= (log file size * 8184) / 4
It takes about one minute to process 5000 BMT extent size pages with the -x
option. A process that initiates a BMT extent size operation must take
into account that very large values for -x will take a long time to com-
You must be the root user to use this command.
All white space characters (tab, line feed, space, and so on) and the / # :
* ? characters are invalid for domain names.
Command execution continues after the following warnings are displayed:
+ mkfdmn: Invalid value for -x mkfdmn: Setting to minimum value of 128
You have entered an invalid value for the -x option.
+ mkfdmn: Invalid value for -p mkfdmn: Setting to minimum value of 0.
You have entered an invalid value for the -p option.
The following example creates the accounts_dmn file domain with the special
device /dev/disk/dsk1c as the initial volume:
# mkfdmn /dev/disk/dsk1c accounts_dmn
Until you create and mount a fileset for the accounts_dmn domain, you can-
not access the file system.
Contains domain names and devices.
Commands: addvol(8), advscan(8), mkfset(8), mount(8), rmfdmn(8),