Version 19 (modified by 9 years ago) ( diff ) | ,
---|
Disks and File systems
File system types
HelenOS currently supports the following file systems:
File system | /srv executable | Can be initrd FS | Has mk*fs utility | Status |
TMPFS | tmpfs | yes | no | Stable |
FAT | fat | yes | yes | Stable |
locfs | locfs | no | no | Stable |
Ext2fs/Ext3fs/Ext4fs | ext4fs | yes | no | Stable |
exFAT | exfat | no | yes | Testing |
CDFS | cdfs | no | no | Testing |
MFS | mfs | no | yes | Stable |
UDF | udf | no | no | Read-only testing |
Directory structure
The file system of a running HelenOS system is roughly laid out as follows:
/app | end-user applications (see the Command Reference) |
/cfg | system-wide configuration |
/data | application data (e.g. the web root served by websrv) |
/drv | device drivers |
/inc | header files |
/lib | libraries |
/loc | location service nodes (rough analogy of /dev in UNIX) |
/src | source files |
/srv | server applications (services, e.g. console, networking - see the Command Reference) |
/tmp | temporary files |
This layout is not fixed in any way and may change in the future.
Block device drivers
Non-DDF:
file_bd | File-backed block device |
part | Disk label/partition driver - provides block devices for individual partitions |
rd | Initial ramdisk |
sata_bd | AHCI SATA |
DDF-based:
ata_bd | ATA/ATAPI |
usbmast | USB mass storage |
ddisk | msim disk driver |
Working with disk labels and file systems
You can use the interactive fdisk
utility to create and manage disk labels.
BIOS/MBR and UEFI/GPT labels are supported. When you create a partition with fdisk
,
you are also prompted for file system type (The file system will be initialized as part of
creating the partition).
If you'd like to create a file system on a raw disk, you need to do it by manually
invoking a mk*fs
utility.
Mounting file systems
In order to make use of a file system it needs to be mounted into the filesystem namespace
using the mount
command. Typing just mount<enter>
prints out a list of mounted
file systems. Te basic syntax to mount a file system is:
# mount <fstype> <service-name> <directory>
fstype
is the type of the file system (e.g. ext4
, mfs
), service-name
is
the service name of the block device (typically of a partition) and directory
is the directory path
to mount on top of.
You can find the list of available partition block devices in your system by typing:
# loc show-cat partition
Unlabeled disks will be represented by one 'fake' partition spanning the entire disk.