mkqnx6fs

Format a Power-Safe filesystem (QNX Neutrino)


Note: You must be logged in as root to run this utility.

Syntax:

mkqnx6fs [-Bq] [-b blocksize] [-e endian] [-g groups]
         [-i inodes] [-n blocks] [-O options] [-o options]
         [-r percent] [-T type] [-u uuid] [-v vol_name] host

Runs on:

Neutrino

Options:

-B
Rewrite only the boot loader; don't touch anything in the filesystem (in particular don't reformat it). You would use this to upgrade to new boot loader code.
-b blocksize
Set the logical blocksize of the filesystem. You can specify the size in bytes or in kilobytes, as follows:
Bytes Kilobytes
512
1024 1k
2048 2k
4096 4k

The default is 1024; the case of the “k” is ignored. Varying the blocksize can control various types of fragmentation as well as determine the maximum file size supported.

-e endian
Set the endian layout of the on-disk filesystem. Valid values are big or little; by default the filesystem uses the native endian-ness of the CPU.
-g groups
Set the number of allocation groups to subdivide the filesystem; by default a value (from 1 to 16) is selected based on filesystem size. An allocation group is a logical concept, not a physical segregation.
-i inodes
Set the maximum number of inodes in the filesystem. Each unique file or directory requires an inode.
-n blocks
Set the number of logical blocks in the filesystem. This is the total size of the filesystem, from which space is first allocated to the system bitmap and inodes files (so the number of user-accessible blocks will be slightly less than the specified value).

By default, mkqnx6fs makes the filesystem fully occupy the specified host (e.g. it determines the number of blocks from the size of the disk partition).

-O options
(“Oh”) Set(+) or unset(-) boot options:

The default is -O-quiet,-cls.

You can use this option with -B to just update the loader and options.

-o options
Set(+) or unset(-) filesystem options:

The default is -o+lfncksum.


Caution: This default is incompatible with the 6.4.0 version of the Power-Safe filesystem. If you wish to format a filesystem that can be mounted read-write by 6.4.0, you must specify -o-lfncksum; otherwise it will allow only read-only mounting.

-q
Operate quietly; don't prompt for confirmation and don't display the resulting configuration of the new filesystem. Without this option, mkqnx6fs will confirm that you meant to format if the host is a block-special device or is currently mounted.
-r percent
Set the percentage of the filesystem to reserve to prevent it from becoming completely full. In general, filesystem performace degrades when the disk is nearly full; this option just makes ENOSPC happen prematurely to stop this. The default is 3%.
-T type
Set the expected usage type of the filesystem; valid values are desktop, runtime, and media. This type is used to pick the appropriate blocksize, number of allocation groups, and number of inodes. It's a hint that's intended to replace explicit -b, -g, -i, and -r values.
-u uuid
Specify a 128-bit UUID for the filesystem, in the UUID “8-4-4-4-12” format. If you don't specify a UUID, mkqnx6fs generates a random, time-based (version 4 UUID) value.
-v vol_name
Specify a volume name of up to 16 characters.

Note: You can't specify both the -u and -v options.

host
The host of the new filesystem. You can specify this as a block-special device or partition (e.g. /dev/hd0t76), as a regular file, or as the root directory of a mounted fs-qnx6 filesystem (which will be resolved to the real host device).

Description:

The mkqnx6fs utility creates a fresh fs-qnx6 filesystem on the specified host (typically a hard disk partition, although you can create an image inside a regular file).

The integer fields of the filesystem are maintained as either all little-endian or all big-endian, as dictated by the -e option. Thus no CPU architecture pays a byte-swapping penalty for local disks. The filesystem detects the endian-ness and swaps if necessary, so you can move a disk across platforms (with a slight penalty in performance).

Summary of filesystem commands

The following table shows the shared objects and related commands for the filesystems:

Partition type Filesystem Shared object Initialize with: Check with:
1, 4, or 6 DOS fs-dos.so mkdosfs chkdosfs
7 Windows NTa fs-nt.so N/A N/A
11, 12, or 14 FAT32 fs-dos.so mkdosfs chkdosfs
77, 78, or 79 QNX 4 fs-qnx4.so dinit chkfsys
131 Linux (Ext2) fs-ext2.so N/A N/A
175 Apple Macintosh HFS or HFS Plusa fs-mac.so N/A N/A
177, 178, or 179 Power-Safe fs-qnx6.so mkqnx6fs chkqnx6fsb

a Read-only.

b Not usually necessary.

For more information, see the Filesystems chapter of the System Architecture guide.

Examples:

# mkqnx6fs /dev/hd0t76
All files on /dev/hd0t76 will be lost!
Confirm filesystem re-format (y) or (n): y
Format fs-qnx6: 8040524 blocks, 62816 inodes, 8 groups

Exit status:

0
The filesystem was formatted successfully.
1
An error occurred (a descriptive message is written to stderr).

See also:

chkqnx6fs, devb-*, dinit, fs-qnx6.so, mkdosfs

Power-Safe filesystem in the Filesystems chapter of the System Architecture guide

Power-Safe filesystem in the Filesystems chapter of the Neutrino User's Guide