Part I. File Systems

Part I. File Systems

File Systems

File system refers to the files and directories stored on a computer. A file system can have different formats called file system types. These formats determine how the information is stored as files and directories. Some file system types store redundant copies of the data, while some file system types make hard drive access faster. This part discusses the ext3, swap, RAID, and LVM file system types. It also discusses the parted utility to manage partitions and access control lists (ACLs) to customize file permissions.

Table of Contents

1. File System Structure
1.1. Why Share a Common Structure?
1.2. Overview of File System Hierarchy Standard (FHS)
1.2.1. FHS Organization
1.3. Special File Locations Under Red Hat Enterprise Linux
2. The ext3 File System
2.1. Features of ext3
2.2. Creating an ext3 File System
2.3. Converting to an ext3 File System
2.4. Reverting to an ext2 File System
3. The proc File System
3.1. A Virtual File System
3.1.1. Viewing Virtual Files
3.1.2. Changing Virtual Files
3.2. Top-level Files within the proc File System
3.2.1. /proc/apm
3.2.2. /proc/buddyinfo
3.2.3. /proc/cmdline
3.2.4. /proc/cpuinfo
3.2.5. /proc/crypto
3.2.6. /proc/devices
3.2.7. /proc/dma
3.2.8. /proc/execdomains
3.2.9. /proc/fb
3.2.10. /proc/filesystems
3.2.11. /proc/interrupts
3.2.12. /proc/iomem
3.2.13. /proc/ioports
3.2.14. /proc/kcore
3.2.15. /proc/kmsg
3.2.16. /proc/loadavg
3.2.17. /proc/locks
3.2.18. /proc/mdstat
3.2.19. /proc/meminfo
3.2.20. /proc/misc
3.2.21. /proc/modules
3.2.22. /proc/mounts
3.2.23. /proc/mtrr
3.2.24. /proc/partitions
3.2.25. /proc/pci
3.2.26. /proc/slabinfo
3.2.27. /proc/stat
3.2.28. /proc/swaps
3.2.29. /proc/sysrq-trigger
3.2.30. /proc/uptime
3.2.31. /proc/version
3.3. Directories within /proc/
3.3.1. Process Directories
3.3.2. /proc/bus/
3.3.3. /proc/driver/
3.3.4. /proc/fs
3.3.5. /proc/ide/
3.3.6. /proc/irq/
3.3.7. /proc/net/
3.3.8. /proc/scsi/
3.3.9. /proc/sys/
3.3.10. /proc/sysvipc/
3.3.11. /proc/tty/
3.4. Using the sysctl Command
3.5. Additional Resources
3.5.1. Installed Documentation
3.5.2. Useful Websites
4. Redundant Array of Independent Disks (RAID)
4.1. What is RAID?
4.2. Who Should Use RAID?
4.3. Hardware RAID versus Software RAID
4.3.1. Hardware RAID
4.3.2. Software RAID
4.4. RAID Levels and Linear Support
4.5. Configuring Software RAID
4.5.1. Creating the RAID Partitions
4.5.2. Creating the RAID Devices and Mount Points
5. Swap Space
5.1. What is Swap Space?
5.2. Adding Swap Space
5.2.1. Extending Swap on an LVM2 Logical Volume
5.2.2. Creating an LVM2 Logical Volume for Swap
5.2.3. Creating a Swap File
5.3. Removing Swap Space
5.3.1. Reducing Swap on an LVM2 Logical Volume
5.3.2. Removing an LVM2 Logical Volume for Swap
5.3.3. Removing a Swap File
5.4. Moving Swap Space
6. Managing Disk Storage
6.1. Standard Partitions using parted
6.1.1. Viewing the Partition Table
6.1.2. Creating a Partition
6.1.3. Removing a Partition
6.1.4. Resizing a Partition
6.2. LVM Partition Management
7. Implementing Disk Quotas
7.1. Configuring Disk Quotas
7.1.1. Enabling Quotas
7.1.2. Remounting the File Systems
7.1.3. Creating the Quota Database Files
7.1.4. Assigning Quotas per User
7.1.5. Assigning Quotas per Group
7.1.6. Setting the Grace Period for Soft Limits
7.2. Managing Disk Quotas
7.2.1. Enabling and Disabling
7.2.2. Reporting on Disk Quotas
7.2.3. Keeping Quotas Accurate
7.3. Additional Resources
7.3.1. Installed Documentation
7.3.2. Related Books
8. Access Control Lists
8.1. Mounting File Systems
8.1.1. NFS
8.2. Setting Access ACLs
8.3. Setting Default ACLs
8.4. Retrieving ACLs
8.5. Archiving File Systems With ACLs
8.6. Compatibility with Older Systems
8.7. Additional Resources
8.7.1. Installed Documentation
8.7.2. Useful Websites
9. LVM (Logical Volume Manager)
9.1. What is LVM?
9.1.1. What is LVM2?
9.2. LVM Configuration
9.3. Automatic Partitioning
9.4. Manual LVM Partitioning
9.4.1. Creating the /boot/ Partition
9.4.2. Creating the LVM Physical Volumes
9.4.3. Creating the LVM Volume Groups
9.4.4. Creating the LVM Logical Volumes
9.5. Using the LVM utility system-config-lvm
9.5.1. Utilizing uninitialized entities
9.5.2. Adding Unallocated Volumes to a volume group
9.5.3. Migrating extents
9.5.4. Adding a new hard disk using LVM
9.5.5. Adding a new volume group
9.5.6. Extending a volume group
9.5.7. Editing a Logical Volume
9.6. Additional Resources
9.6.1. Installed Documentation
9.6.2. Useful Websites