Study guide
13.1 Create, Mount, and Use VFAT, ext4, and XFS File Systems
Red Hat Certified System Administrator RHCSA
Track your progress as you read
Finished sections get a check mark.
1 Introduction & Exam Overview
1.1 Current Exam Facts 1.2 Lab Setup & Performance-Based Study Strategy
2 Essential Tools: Shell, Redirection & Text Analysis
2.1 Shell Prompt and Command Syntax 2.2 Input-Output Redirection and Pipes 2.3 grep and Regular Expressions for Text Analysis
3 Essential Tools: Remote Access, Users & Text Editing
3.1 Access Remote Systems Using SSH 3.2 Log In and Switch Users in Multiuser Targets 3.3 Create and Edit Text Files
4 Essential Tools: Files, Links & Archives
4.1 Create, Delete, Copy, and Move Files and Directories 4.2 Hard and Soft Links 4.3 Archive and Compress with tar, gzip, and bzip2
5 Essential Tools: Permissions & System Documentation
5.1 List, Set, and Change Standard ugo/rwx Permissions 5.2 System Documentation: man, info, and /usr/share/doc
6 Manage Software: RPM and Flatpak
6.1 Configure Access to RPM Repositories 6.2 Install and Remove RPM Software Packages 6.3 Configure Access to Flatpak Repositories 6.4 Install and Remove Flatpak Software Packages
7 Create Simple Shell Scripts
7.1 Conditional Execution: if, test, and [] 7.2 Looping Constructs for Files and Input 7.3 Process Script Inputs ($1, $2, and Beyond) 7.4 Process Shell Command Output in Scripts
8 Operate Running Systems: Boot and Recovery
8.1 Boot, Reboot, and Shut Down a System Normally 8.2 Boot Systems into Different Targets Manually 8.3 Interrupt the Boot Process to Gain Access
9 Operate Running Systems: Processes and Tuning
9.1 Identify and Kill CPU/Memory Intensive Processes 9.2 Adjust Process Scheduling 9.3 Manage Tuning Profiles
10 Operate Running Systems: Logs, Services & File Transfer
10.1 Locate and Interpret System Log Files and Journals 10.2 Preserve System Journals 10.3 Start, Stop, and Check Status of Network Services 10.4 Securely Transfer Files Between Systems
11 Configure Local Storage: Partitions and LVM
11.1 List, Create, and Delete Partitions on GPT Disks 11.2 Create and Remove Physical Volumes 11.3 Assign Physical Volumes to Volume Groups 11.4 Create and Delete Logical Volumes
12 Configure Local Storage: Mounting and Expansion
12.1 Mount File Systems at Boot by UUID or Label 12.2 Add Partitions, Logical Volumes, and Swap Non-Destructively
13 Create and Configure File Systems: Local FS and Permissions
13.1 Create, Mount, and Use VFAT, ext4, and XFS File Systems 13.2 Extend Existing Logical Volumes 13.3 Diagnose and Correct File Permission Problems
14 Create and Configure File Systems: NFS and autofs
14.1 Mount and Unmount Network File Systems Using NFS 14.2 Configure autofs
15 Deploy and Maintain: Scheduling, Services & Targets
15.1 Schedule Tasks with at, cron, and systemd Timers 15.2 Start, Stop, and Enable Services at Boot 15.3 Configure Systems to Boot into a Specific Target
16 Deploy and Maintain: Time, Software Updates & Bootloader
16.1 Configure Time Service Clients 16.2 Install and Update Software from CDN, Remote Repos, and Local Files 16.3 Modify the System Bootloader
17 Manage Basic Networking
17.1 Configure IPv4 and IPv6 Addresses 17.2 Configure Hostname Resolution 17.3 Configure Network Services to Start Automatically at Boot 17.4 Restrict Network Access Using firewalld and firewall-cmd
18 Manage Users and Groups
18.1 Create, Delete, and Modify Local User Accounts 18.2 Change Passwords and Adjust Password Aging 18.3 Create, Delete, and Modify Local Groups and Memberships 18.4 Configure Privileged Access
19 Manage Security: Firewall, umask & SSH Keys
19.1 Configure Firewall Settings with firewall-cmd and firewalld 19.2 Manage Default File Permissions 19.3 Configure Key-Based Authentication for SSH
20 Manage Security: SELinux Modes and Contexts
20.1 Set Enforcing and Permissive Modes for SELinux 20.2 List and Identify SELinux File and Process Contexts 20.3 Restore Default File Contexts
21 Manage Security: SELinux Ports and Booleans
21.1 Manage SELinux Port Labels 21.2 Use Boolean Settings to Modify SELinux Settings
13.1 Create, Mount, and Use VFAT, ext4, and XFS File Systems
Key Takeaways Explain This Topic AI
Create file systems with mkfs.ext4, mkfs.xfs, and mkfs.vfat (or mkfs -t TYPE) only on the intended new partition or LV—never format live root or data you must keep.
Mount with mount [-t TYPE] DEVICE DIR; unmount with umount PATH or DEVICE; busy mounts fail until processes release the tree (lsof/fuser, leave the directory).
XFS is the common RHEL default for data volumes; ext4 remains fully supported; VFAT (vfat/msdos) is for interoperability with Windows/firmware-style media, not SELinux-rich Linux app data.
Using a file system on the exam means create → mount → read/write proof (touch, cp) → umount when required → often persist with UUID fstab (related storage objectives).
Verify with lsblk -f, blkid, findmnt, and df -h; wrong TYPE in mount/fstab or formatting the wrong device are the highest-cost mistakes.
Last updated: August 2026
13.1 Create, Mount, and Use VFAT, ext4, and XFS File Systems
Quick Answer: Format with mkfs.ext4 , mkfs.xfs , or mkfs.vfat on the correct device, mkdir a mountpoint, mount the device, prove you can create files, then umount when the task requires unmounting. Confirm TYPE/UUID with blkid / lsblk -f . On EX200, “use” means a working mounted tree—and often a reboot-safe setup via fstab from related objectives.
Official skill and exam language
Under Create and configure file systems , Red Hat expects you to create, mount, unmount, and use VFAT, ext4, and XFS file systems . Lab wording often looks like:
- “Create an XFS file system on the new LV and mount it at /data .”
- “Format /dev/sdb1 as ext4; mount it temporarily at /mnt/backup and copy files.”
- “Create a VFAT file system on the partition; ensure it can be mounted and written.”
- “Unmount /shared cleanly after the transfer.”
This section is the file-system layer : superblock and TYPE, not GPT carving (earlier storage chapters) and not solely “UUID in fstab” (mount-at-boot objective)—though real tasks chain them.
Three types you must handle
Type mkfs tool Typical use on RHEL Notes
XFS mkfs.xfs Default-style data volumes, large files Cannot shrink easily; grow with xfs_growfs after LV extend
ext4 mkfs.ext4 General Linux FS, still common in tasks Grow with resize2fs ; mature tools ( e2fsck , tune2fs , e2label )
VFAT mkfs.vfat / mkfs.fat Cross-platform sticks, some firmware/shared media Limited permissions/ownership model; no native Linux ACL/SELinux richness
RHEL 10 install media and cloud images commonly use XFS for root or large data LVs. EX200 still tests that you can create all three when asked—do not assume every disk is XFS.
- Safety: only format what you should lsblk -f
- lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINTS
- findmnt
- blkid
- sudo pvs; sudo lvs # if the target is an LV
Never mkfs a mounted root, an active PV you still need as LVM metadata only after careful planning, or a partition that already holds required exam data unless the task explicitly reformats it. mkfs is destructive to previous file-system contents.
- If the device is mounted: findmnt /dev/sdb1
- sudo umount /dev/sdb1 # or umount /mountpoint
Format only after unmount (except specialized online tools—not the EX200 create path).
- Create file systems: mkfs family
- XFS sudo mkfs.xfs /dev/sdb1
- sudo mkfs.xfs -f /dev/vgdata/lvapp # -f force if prior signature exists (only if intentional)
- sudo mkfs.xfs -L APPDATA /dev/sdb1 # set label at create time
- blkid /dev/sdb1
Default mkfs.xfs is fine for most exam sizes. Force ( -f ) only when you deliberately overwrite an old signature and the task allows it.
- ext4 sudo mkfs.ext4 /dev/sdb1
- sudo mkfs.ext4 -L BACKUP /dev/sdc1
- sudo mkfs.ext4 -m 1 /dev/sdb1 # reserved blocks % for root (optional awareness)
- blkid /dev/sdb1
Equivalents: mkfs -t ext4 /dev/sdb1 . Labels also settable later with e2label / tune2fs -L .
- VFAT sudo mkfs.vfat /dev/sdb1
- sudo mkfs.vfat -F 32 /dev/sdb1 # FAT32 when size warrants
- sudo mkfs.vfat -n SHARE /dev/sdb1 # volume name (label-like)
# sometimes written as:
- sudo mkfs -t vfat /dev/sdb1
- blkid /dev/sdb1
TYPE in blkid often shows vfat . Mount type is usually vfat .
- Generic form sudo mkfs -t xfs /dev/mapper/vg-lv
- sudo mkfs -t ext4 /dev/sdb2
- sudo mkfs -t vfat /dev/sdb3
- After mkfs, always re-read identity: lsblk -f
- blkid /dev/sdb1
You need TYPE (and later UUID ) for mount and fstab.
- Mount: make the file system usable
- Manual mount sudo mkdir -p /data
- sudo mount /dev/sdb1 /data
# or explicit type:
- sudo mount -t xfs /dev/sdb1 /data
- sudo mount -t ext4 /dev/vgdata/lv1 /mnt/ext
- sudo mount -t vfat /dev/sdb2 /mnt/winshare
- Mount by UUID or LABEL (same as fstab teaching): sudo mount UUID=a1b2c3d4-e5f6-7890-abcd-ef1234567890 /data
- sudo mount LABEL=APPDATA /data
- Prove “use”
- Graders and your own checklist should show the FS is writable (unless the task says read-only): findmnt /data
- df -h /data
- touch /data/exam_proof.txt
- echo "ok" | sudo tee /data/exam_proof.txt
- ls -la /data
- cp /etc/hosts /data/
If touch fails with “Read-only file system” or “Permission denied,” diagnose mount options, ownership, or VFAT mount options—not more mkfs .
Common mount options (awareness)
- Option Role
- defaults Standard rw mount bundle
- ro / rw Read-only / read-write
- noexec Disallow execution (sometimes security tasks)
- uid= / gid= / umask= Often relevant on vfat so Linux users can write
Example VFAT write access for a shared stick-style volume: sudo mount -t vfat -o uid=1000,gid=1000,umask=0002 /dev/sdb2 /mnt/winshare
Only add exotic options when the task needs them; many labs accept plain mount with defaults.
- Unmount: umount cleanly sudo umount /data
- sudo umount /dev/sdb1
- sudo umount -a -t vfat # all of a type—use carefully
Busy mount errors mean a process still uses the tree: # You are sitting inside the mountpoint?
- pwd
- cd /
- sudo umount /data
- # Find holders
- sudo lsof +f -- /data
- sudo fuser -vm /data
- # fuser -km /data # kills holders—last resort on exam if appropriate
Do not reboot as your first unmount strategy; leave the directory, stop the writing service, then umount .
Lazy unmount ( umount -l ) detaches when idle—know it exists; prefer a clean umount for exam clarity.
Persistence vs temporary use
- Goal What to do
- Temporary lab mount mount only; may not survive reboot
- Survive reboot /etc/fstab with UUID= or LABEL= + correct TYPE + mount -a (prior chapter skill)
- Swap Not a VFAT/ext4/XFS data FS— mkswap path
If the task says “mount at boot” or “persistently,” fstab is required . If it only says “create and mount at /data for use,” a correct live mount may be enough— read the verb carefully . When unsure and time allows, durable UUID fstab plus mount -a is safer for “configure storage” style wording on RHEL exams that always stress reboot survival.
- End-to-end exam workflows
- Workflow A — XFS on new LV at /data sudo lvs
- sudo mkfs.xfs /dev/vgstorage/data
- blkid /dev/vgstorage/data
- sudo mkdir -p /data
- sudo mount /dev/vgstorage/data /data
- touch /data/ok
- findmnt /data
# If persistence required:
- # UUID=... /data xfs defaults 0 0 in fstab; mount -a
- Workflow B — ext4 partition, temporary use, then unmount sudo mkfs.ext4 /dev/sdb1
- sudo mkdir -p /mnt/backup
- sudo mount -t ext4 /dev/sdb1 /mnt/backup
- cp -a /var/tmp/project /mnt/backup/
- sudo umount /mnt/backup
- Workflow C — VFAT share volume sudo mkfs.vfat -n EXAMSHARE /dev/sdc1
- sudo mkdir -p /mnt/share
- sudo mount -t vfat /dev/sdc1 /mnt/share
- echo test | sudo tee /mnt/share/hello.txt
- findmnt /mnt/share
- blkid /dev/sdc1
- Workflow D — Wrong type recovery sudo mount -t ext4 /dev/sdb1 /data
# mount: wrong fs type...
- blkid /dev/sdb1 # TYPE="xfs"
- sudo mount -t xfs /dev/sdb1 /data
Or omit -t and let mount use blkid helpers when the superblock is valid.
XFS vs ext4 operational differences (exam-relevant)
- Topic XFS ext4
- Create mkfs.xfs mkfs.ext4
- Label mkfs.xfs -L / xfs_admin -L mkfs.ext4 -L / e2label
- Online grow (after LV extend) xfs_growfs mountpoint resize2fs device (often after extend)
- Shrink Not a normal admin path Possible offline with care—not a typical EX200 ask
- Check FS xfs_repair (unmounted) e2fsck
For this section, creation/mount/use/unmount dominate; grow tools appear when you extend logical volumes (next section).
VFAT traps on a Linux exam host
Permissions look wrong — VFAT does not store Unix mode bits the same way; use mount uid / gid / umask if writes fail for a non-root user.
Filename case / special characters — stay with simple names in demos.
Not for /var/lib app data requiring SELinux contexts—if the task wants VFAT, use it as a portable volume , not as a substitute for ext4/XFS application FS.
TYPE spelling — vfat in mount/fstab; do not invent fat32 as the primary fstab type on RHEL teaching materials (kernel type is vfat).
Verification checklist
- Check Command
- FS exists blkid , lsblk -f shows TYPE
- Mounted where intended findmnt /path , df -h /path
- Writable touch / tee test file
- Unmounted when required findmnt no longer shows path; umount succeeded
- Correct type TYPE matches task (xfs vs ext4 vs vfat)
- Relationship to other objectives
- Skill Where
- Partitions / PV / VG / LV create Storage LVM chapters
- Mount at boot by UUID/label Storage mount chapter
- Create/mount/use VFAT, ext4, XFS This section
- Extend LV + grow FS Section 13.2
- Permission diagnosis on Linux trees Section 13.3
- Common traps
mkfs on the wrong disk — double-check lsblk size and emptiness.
Formatting while mounted — unmount first.
Creating XFS when the task required ext4 (or vice versa) — read the FS type in the prompt.
Mount succeeds but empty application path — wrong mountpoint directory.
Forgetting to create the mountpoint — mkdir -p first.
Leaving cwd inside the mount — umount fails with target busy.
Assuming VFAT preserves chmod the way ext4 does — different model.
Stopping after mkfs without mount when the task said “use” or “mount at.”
fstab TYPE mismatch after creating XFS but writing ext4 in fstab.
Using mkfs.xfs on a tiny USB-style VFAT-required partition against the task text.
Section checkpoint
You should invent nothing about mystery disks: identify the device, create ext4 , XFS , or VFAT with the matching mkfs.* tool, mount it on an existing directory, demonstrate file create/copy, unmount cleanly with umount , and verify with blkid , lsblk -f , findmnt , and df . That is the EX200 bar for creating, mounting, unmounting, and using local VFAT, ext4, and XFS file systems on RHEL 10.