newfs(1M) System Administration Commands newfs(1M)
NAME
newfs - construct a UFS file system
SYNOPSIS
newfs [-NSBTv] [mkfs-options] raw-device
DESCRIPTION
newfs is a "friendly" front-end to the mkfs(1M) program for making UFS file systems on disk partitions. newfs calculates the appropriate
parameters to use and calls mkfs.
If run interactively (that is, standard input is a tty), newfs prompts for confirmation before making the file system.
If the -N option is not specified and the inodes of the device are not randomized, newfs calls fsirand(1M).
You must be super-user or have appropriate write privileges to use this command, except when creating a UFS file system on a diskette. See
EXAMPLES.
Creating a Multiterabyte UFS File System
Keep the following limitations in mind when creating a multiterabyte UFS file system:
o nbpi is set to 1 Mbyte unless you specifically set it higher. You cannot set nbpi lower than 1 Mbyte on a multiterabyte UFS file
system.
o fragsize is set equal to bsize.
OPTIONS
The following options are supported:
-N
Print out the file system parameters that would be used to create the file system without actually creating the file system. fsir-
and(1M) is not called here.
-S
Sends to stdout a human-readable version of the superblock that would be used to create a filesystem with the specified configuration
parameters.
-B
Sends to stdout a binary (machine-readable) version of the superblock that would be used to create a filesystem with the specified con-
figuration parameters.
-T
Set the parameters of the file system to allow eventual growth to over a terabyte in total file system size. This option sets fragsize
to be the same as bsize, and sets nbpi to 1 Mbyte, unless the -i option is used to make it even larger. If you use the -f or -i options
to specify a fragsize or nbpi that is incompatible with this option, the user-supplied value of fragsize or nbpi is ignored.
-v
Verbose. newfs prints out its actions, including the parameters passed to mkfs.
mkfs-options
Options that override the default parameters are:
-a apc
The number of alternate sectors per cylinder to reserve for bad block replacement for SCSI devices only. The default is 0.
This option is not applicable for disks with EFI labels and is ignored.
-b bsize
The logical block size of the file system in bytes, either 4096 or 8192. The default is 8192. The sun4u architecture does not sup-
port the 4096 block size.
-c cgsize
The number of cylinders per cylinder group, ranging from 16 to 256. The default is calculated by dividing the number of sectors in
the file system by the number of sectors in a gigabyte. Then, the result is multiplied by 32. The default value is always between
16 and 256.
mkfs can override this value. See mkfs_ufs(1M) for details.
This option is not applicable for disks with EFI labels and is ignored.
-C maxcontig
The maximum number of logical blocks, belonging to one file, that are allocated contiguously. The default is calculated as follows:
maxcontig = disk drive maximum transfer size / disk block size
If the disk drive's maximum transfer size cannot be determined, the default value for maxcontig is calculated from kernel parame-
ters as follows:
If maxphys is less than ufs_maxmaxphys, which is typically 1 Mbyte, then maxcontig is set to maxphys. Otherwise, maxcontig is set
to ufs_maxmaxphys.
You can set maxcontig to any positive integer value.
The actual value will be the lesser of what has been specified and what the hardware supports.
You can subsequently change this parameter by using tunefs(1M).
-d gap
Rotational delay. This option is obsolete in the Solaris 10 release. The value is always set to 0, regardless of the input value.
-f fragsize
The smallest amount of disk space in bytes that can be allocated to a file. fragsize must be a power of 2 divisor of bsize, where:
bsize / fragsize is 1, 2, 4, or 8.
This means that if the logical block size is 4096, legal values for fragsize are 512, 1024, 2048, and 4096. When the logical block
size is 8192, legal values are 1024, 2048, 4096, and 8192. The default value is 1024.
For file systems greater than 1 terabyte or for file systems created with the -T option, fragsize is forced to match block size
(bsize).
-i nbpi
The number of bytes per inode, which specifies the density of inodes in the file system. The number is divided into the total size
of the file system to determine the number of inodes to create.
This value should reflect the expected average size of files in the file system. If fewer inodes are desired, a larger number
should be used. To create more inodes, a smaller number should be given. The default for nbpi is as follows:
Disk size Density
Less than 1GB 2048
Less than 2GB 4096
Less than 3GB 6144
3GB to 1 Tbyte 8192
Greater than 1 Tbyte
or created with -T 1048576
The number of inodes can increase if the file system is expanded with the growfs command.
-m free
The minimum percentage of free space to maintain in the file system, between 0% and 99%, inclusively. This space is off-limits to
users. Once the file system is filled to this threshold, only the super-user can continue writing to the file system.
The default is ((64 Mbytes/partition size) * 100), rounded down to the nearest integer and limited between 1% and 10%, inclusively.
This parameter can be subsequently changed using the tunefs(1M) command.
-n nrpos
The number of different rotational positions in which to divide a cylinder group. The default is 8.
This option is not applicable for disks with EFI labels and is ignored.
-o space|time
The file system can either be instructed to try to minimize the time spent allocating blocks, or to try to minimize the space frag-
mentation on the disk. The default is time.
This parameter can subsequently be changed with the tunefs(1M) command.
-r rpm
The rotational speed of the disk in revolutions per minute. The default is driver- or device-specific.
Note that you specify rpm for newfs and rps for mkfs.
This option is not applicable for disks with EFI labels and is ignored.
-s size
The size of the file system in sectors. The default is to use the entire partition.
-t ntrack
The number of tracks per cylinder on the disk. The default is taken from the disk label.
This option is not applicable for disks with EFI labels and is ignored.
OPERANDS
The following operands are supported:
raw-device
The name of a raw special device residing in the /dev directory (for example, /dev/rdsk/c0t0d0s6) on which to create the file system.
USAGE
See largefile(5) for the description of the behavior of newfs when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
EXAMPLES
Example 1 Displaying the Parameters for the Raw Special Device
The following example verbosely displays the parameters for the raw special device, c0t0d0s6. It does not actually create a new file sys-
tem:
example# newfs -Nv /dev/rdsk/c0t0d0s6
mkfs -F ufs -o N /dev/rdsk/c0t0d0s6 1112940 54 15 8192 1024 16 10 60
2048 t 0 -1 8 /dev/rdsk/c0t0d0s6: 1112940 sectors in
1374 cylinders of 15 tracks, 54 sectors 569.8MB in 86 cyl
groups (16 c/g, 6.64MB/g, 3072 i/g) super-block backups
(for fsck -b #) at:
32, 13056, 26080, 39104, 52128, 65152, 78176, 91200, 104224, ...
Example 2 Creating a UFS File System
The following example creates a UFS file system on a diskette that is managed by a volume manager that makes use of the mount point /vol.
example% newfs /vol/dev/aliases/floppy0
newfs: construct a new file system /vol/dev/aliases/floppy0: (y/n)? y
/vol/dev/aliases/floppy0: 2880 sectors in 80 cylinders of 2 tracks,
18 sectors 1.4MB in 5 cyl groups (16 c/g, 0.28MB/g, 128 i/g)
super-block backups (for fsck -F ufs -o b=#) at:
32, 640, 1184, 1792, 2336, ...
Example 3 Creating a UFS File System That Will Eventually Be Grown to a Multiterabyte UFS File System
The following example creates a UFS file system that will eventually be grown to a multiterabyte UFS file system.
This command creates a 800-Gbyte file system on the volume, /dev/md/rdsk/d99.
# newfs -T /dev/md/rdsk/d99
newfs: construct a new file system /dev/md/rdsk/d99: (y/n)? y
/dev/md/rdsk/d99: 1677754368 sectors in 45512 cylinders of
144 tracks, 256 sectors
819216.0MB in 1821 cyl groups (25 c/g, 450.00MB/g, 448 i/g) ...
Then, if you increase the volume size for this file system, you can use the growfs command to expand the file system. The file system is
grown to 1.2 terabytes in this example:
# growfs -v /dev/md/rdsk/d99
/usr/lib/fs/ufs/mkfs -G /dev/md/rdsk/d99 2516631552 /dev/md/rdsk/d99:
2516631552 sectors in 68268 cylinders of 144 tracks, 256 sectors
1228824.0MB in 2731 cyl groups (25 c/g, 450.00MB/g, 448 i/g)...
EXIT STATUS
The following exit values are returned:
0
The operation was successful.
1, 10
Usage error or internal error. A message is output to STDERR explaining the error.
Other exit values may be returned by mkfs(1M), which is called by newfs.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWcsu |
+-----------------------------+-----------------------------+
SEE ALSO
fsck(1M), fsck_ufs(1M), fsirand(1M), mkfs(1M), mkfs_ufs(1M), tunefs(1M), attributes(5), largefile(5), ufs(7FS)
DIAGNOSTICS
newfs: No such file or directory
The device specified does not exist, or a disk partition was not specified.
special: cannot open
You must write access to the device to use this command.
SunOS 5.11 1 Mar 2007 newfs(1M)