DOS FAT12/16/32 filesystem manager (QNX)
Fatfsys [options]... [dos_drive=host_device]... &
- -d
- Name of the directory to hold the DOS drives. (Default: /dos)
- -D
- Enable the FAT32 volume to be marked
"dirty" at mount, "clean" at
unmount. This forces Windows to do a ScanDisk the
next time it boots. (Default: disabled)
- -f
- Set the maximum number of concurrent open files. This
option also sizes the internal caches based on this value.
(Default: 128) 
- -F
- Disable usage/update of the FAT32 FSInfo
record, which contains the free cluster count and a hint of
the next free cluster. By default Fatfsys loads
and uses this information at mount, and writes back any
changes at unmount. This option disables that usage.
- -H
- Specify how to display DOS hidden files:
	
- ignore
	
- Never display hidden files.
	
- show
	
- Always display hidden files.
	
- dot
	
- Display hidden files with a leading
"." (useful with ls -a).
	
 The default is show.
 
- -i
- Set the user/group IDs to apply as the owner of all DOS
files. These may be specified as numeric values (in the form
of num:num) or as a user ID
from /etc/passwd or group ID from
etc/group. (Default: 0:0)
- -L
- Specify how to treat long filenames:
	
- ignore
	
- Never show or create long filenames; use only the corresponding short name (e.g. PROGRA~1).
	
- show
	
- Display and create long filenames where appropriate (i.e. if the filename is longer than 8.3 or is mixed-case).
	
- always
	
- Always create long filenames to preserve case.
	
 The default is show.
 
- -m
- Set mount options to apply to all subsequent DOS
filesystem mountpoints. Valid options are:
	
- ro
	
- Mark file as read-only.
	
- rw
	
- Mark file as read-write.
	
- noatime
	
- Don't record the time the file was last accessed.
	
- atime
	
- Record the access time.
	
- noexec
	
- Don't allow executable files to load.
	
- exec
	
- Allow executable files to load.
	
- nocreat
	
- Don't allow files to be created.
	
- creat
	
- Allow files to be created.
	
- async
	
- Enable asynchronous writes.
	
- sync
	
- Enable synchronous writes.
	
 The defaults are rw, noatime, exec, creat, async.
 
- -P
- Set POSIX-like emulation/checking level. Valid options are:
	
- ignore
	
- Don't do any emulation or checks.
	
- emulate
	
- Attempt to provide features not present in the DOS
filesystem (e.g. link counts on directories,
. and .. entries at the root).
	
- strict
	
- Use the emulate features, but also check
for any attribute changes that DOS can't handle (e.g. a chown() to a
user other than that specified in -i, or a
utime() to a time before 1980, the DOS epoch). If
you don't specify strict, such attribute changes
are silently ignored.
	
 The default is ignore.
 
- -s
- Toggle the automatic device scanning sequence (based on
user-specified mounts).
If any user mounts are specified on the command line, then
Fatfsys won't scan the /dev
directory. Use -s to toggle scanning on.
 If no user mounts are specified on the command line, then
Fatfsys will scan the /dev
directory. Use -s to toggle scanning off.
 
- -S
- Specify how to treat short (8.3) filenames (assuming -L ignore is specified):
	
- lower
	
- Use all lowercase.
	
- upper
	
- Use all uppercase.
	
- windows
	
- Try to behave like Windows  --  use a leading uppercase letter and the rest
lowercase, unless overridden by the case attribute in the
directory entry.
	
 The default is lower.
 
- -t
- Set the timeout for removable media. After the timeout, 
the media is assumed to be possibly stale and is
auto-remounted. (Default: 2 seconds)
- -T
- Disable silent 8.3 name truncation. This option is valid
only if long filenames are being ignored (via
-L ignore). By default, DOS truncates
filenames to fit into the 8.3 format, so the files
FILENAME.C and FILENAMETWO.C
are considered identical. The -T option will
raise an ENAMETOOLONG error rather than
truncate.
- -u
- Set a umask to apply to all DOS files. A umask specifies
a set of permission bits that should be cleared for a file.
You can specify the umask using a numeric form or a symbolic
string (of the form u=rwx,g=rwx,o=rwx) as an inverse
umask. (Default: 0)
- -v
- Increase level of verbosity for information/error messages.
- -V
- Specify how to treat the DOS volume label:
	
- ignore
	
- Never display the volume label.
	
- show
	
- Show the label unchanged.
	
- equals
	
- Display the label with a leading = in the name.
	
 When not being ignored, the volume label (if present) will
be a name-special file with no access permissions.
 The default is equals.
 
- -w
- Specify how long to wait for devices to be set up. This
is useful in sysinit or boot files. (Default: 10 seconds)
- -X
- Control the setting of the executable bit:
	
- none
	
- No files will be executable.
	
- all
	
- All files will be executable.
	
- system
	
- Use the DOS "system" attribute to indicate an executable file.
	
- auto
	
- Let the DOS filename extension (e.g.
*.EXE, *.COM,
*.BAT) dictate if a file should be
executable.
	
 The default is auto.
 
- dos_drive
- A DOS drive name (typically a letter from a to z).
- host_device
- The name of the QNX device or file to open (e.g. /dev/hd1t6).
Fatfsys provides transparent access to DOS disks,
so you can treat DOS filesystems as though they were QNX 
filesystems.
If started with no arguments, Fatfsys will scan
the /dev directory for DOS devices to adopt.
Hard drive partitions of types 1, 4, 6, 11, 12, and 14 will
be assumed to contain a DOS filesystem. And any removable
device (floppy, LS-120, etc.) will be assumed to be capable
of having media containing a DOS filesystem inserted into
it.
You may also specify explicit mount devices on the command
line, using the form
dos_drive=host_device (e.g.
c=/dev/hd1t6). Specifying any device in this way
will suppress the default device scan, but you can re-enable
scanning by using the -s option.
You can also mount DOS filesystems at runtime using the
mount utility:
mount -t dos /dev/fd0 /dos/a
or the mount_dos utility:
mount_dos /dev/fd0 /dos/a
|  | Typically, mount_dos is invoked via the mount utility. But
if this isn't possible (e.g. if the device is being mounted
from within the boot image), then you may run the
mount_dos utility directly. | 
You can unmount a DOS filesystem at runtime using the
standard umount utility (e.g. umount /dos/c).
Note that when Fatfsys is
terminated (with a SIGTERM or simple
slay Fatfsys), all current DOS filesystems
are implicitly unmounted (this will affect FAT32 volumes;
see the -D and -F options).
Fatfsys maintains an activity timeout on
removable media. After 2 seconds (see -t) of inactivity,
the next attempted access to that filesystem will force a
relearn of the DOS filesystem.
Fatfsys relies on the volume-tracking details of
a disk to detect changes, then uses a heuristic (any open
valid FDs) to determine if the media represents the same or
a different filesystem.
Fatfsys maintains no local physical data block
cache. All reads and writes to the host device are passed
immediately to Fsys, which has a data cache.
To force Fsys to flush its cache, you may use the
fsync() routine or O_SYNC flag on
a per-FD basis, or use the -m sync option to
affect all files written to the host device.
Fatfsys does contain a number of logical data
caches (names, attributes, and cluster mappings), which are
invalidated for removable media as described above. The size
of these caches is based on the -f value.
Start Fatfsys, mounting the floppy drive as /dos/a: 
Fatfsys a=/dev/fd0 &
Start Fatfsys, mounting the floppy drive as
read-only and the hard disk as read-write: 
Fatfsys -m ro a=/dev/fd0 -m rw c=/dev/hd1t6 &
Blkfsys,
fdisk,
Fsys,
Fsys.*,
mount,
mount_dos,
textto,
tr,
umask,
umount
QNX Installation & Configuration