161 commands · 7 cheat sheets · Linux
Storage and Filesystems master quick reference
Browse 161 commands from 7 focused cheat sheets on page 1 of 1. Each example opens its matching detailed section.
Storage and Filesystems · 20 commands
ext4, XFS, and Filesystem Repair Cheat Sheet
| Use | Syntax | Examples |
|---|---|---|
| Resolve a mount source | findmnt --target /srv/data -o \
TARGET,SOURCE,FSTYPE,OPTIONS,MAJ:MIN | View examples |
| Show block topology | lsblk --fs --output \
NAME,KNAME,TYPE,FSTYPE,FSVER,LABEL,UUID,MOUNTPOINTS | View examples |
| Probe filesystem metadata | sudo blkid /dev/mapper/vg_data-lv_projects | View examples |
| Read device health | sudo smartctl --all /dev/nvme0n1 | View examples |
| Find storage errors | journalctl -k -g \
'I/O error|EXT4-fs error|XFS.*Corruption|nvme|ata' \
--since today --no-pager | View examples |
| Inspect ext metadata | sudo dumpe2fs -h /dev/mapper/vg_data-lv_projects | View examples |
| Read-only ext check | sudo e2fsck -f -n /dev/mapper/vg_data-lv_projects | View examples |
| Preen ext filesystem | sudo e2fsck -f -p /dev/mapper/vg_data-lv_projects | View examples |
| List backup superblocks | sudo mke2fs -n /dev/mapper/vg_data-lv_projects | View examples |
| Show ext parameters | sudo tune2fs -l /dev/mapper/vg_data-lv_projects | View examples |
| Show XFS geometry | sudo xfs_info /srv/data | View examples |
| Create XFS metadata image | sudo xfs_metadump /dev/mapper/vg_data-lv_projects \
/recovery/projects.metadump | View examples |
| Check XFS without changes | sudo xfs_repair -n /dev/mapper/vg_data-lv_projects | View examples |
| Repair XFS | sudo xfs_repair /dev/mapper/vg_data-lv_projects | View examples |
| Zero a corrupt XFS log | sudo xfs_repair -L /dev/mapper/vg_data-lv_projects | View examples |
| Mount read-only | sudo mount -o ro /dev/mapper/vg_data-lv_projects \
/mnt/recovery | View examples |
| Mount ext without journal replay | sudo mount -t ext4 -o ro,noload \
/dev/mapper/vg_data-lv_projects /mnt/recovery | View examples |
| Mount XFS without recovery | sudo mount -t xfs -o ro,norecovery \
/dev/mapper/vg_data-lv_projects /mnt/recovery | View examples |
| Unmount normally | sudo umount /srv/data | View examples |
| Find mount users | sudo fuser -vm /srv/data | View examples |
Storage and Filesystems · 30 commands
Linux Software RAID with mdadm Cheat Sheet
| Use | Syntax | Examples |
|---|---|---|
| List active MD arrays | cat /proc/mdstat | View examples |
| Inspect array geometry | sudo mdadm --detail /dev/md/data | View examples |
| Inventory stable identities | lsblk -o \
NAME,PATH,SIZE,MODEL,SERIAL,TYPE,FSTYPE,MOUNTPOINTS | View examples |
| Examine one MD superblock | sudo mdadm --examine /dev/disk/by-id/ATA_MEMBER_A-part1 | View examples |
| Group discovered metadata | sudo mdadm --examine --scan | View examples |
| Create a named RAID1 | sudo mdadm --create /dev/md/data -l1 -n2 -e1.2 -N data \
-b internal /dev/disk/by-id/A-part1 \
/dev/disk/by-id/B-part1 | View examples |
| Create near-layout RAID10 | sudo mdadm --create /dev/md/data -l10 -p n2 -n4 \
/dev/disk/by-id/A-part1 /dev/disk/by-id/B-part1 \
/dev/disk/by-id/C-part1 /dev/disk/by-id/D-part1 | View examples |
| Assemble configured arrays | sudo mdadm --assemble --scan | View examples |
| Assemble explicit members read-only | sudo mdadm --assemble --readonly /dev/md/data \
/dev/disk/by-id/A-part1 /dev/disk/by-id/B-part1 | View examples |
| Stop an unused array | sudo mdadm --stop /dev/md/data | View examples |
| Mark a member faulty | sudo mdadm /dev/md/data --fail \
/dev/disk/by-id/ATA_FAILED-part1 | View examples |
| Detach a failed member | sudo mdadm /dev/md/data --remove \
/dev/disk/by-id/ATA_FAILED-part1 | View examples |
| Add a replacement member | sudo mdadm /dev/md/data --add \
/dev/disk/by-id/ATA_REPLACEMENT-part1 | View examples |
| Replace while the old disk reads | sudo mdadm /dev/md/data --replace \
/dev/disk/by-id/OLD-part1 --with \
/dev/disk/by-id/SPARE-part1 | View examples |
| Watch rebuild progress | watch -n 5 cat /proc/mdstat | View examples |
| Read current sync action | cat /sys/block/md0/md/sync_action | View examples |
| Read precise sync progress | cat /sys/block/md0/md/sync_completed | View examples |
| Inspect per-array speed limits | cat /sys/block/md0/md/sync_speed_min \
/sys/block/md0/md/sync_speed_max | View examples |
| Run one monitoring pass | sudo mdadm --monitor --scan --oneshot | View examples |
| Add an internal bitmap | sudo mdadm --grow /dev/md/data --bitmap=internal | View examples |
| Remove a write-intent bitmap | sudo mdadm --grow /dev/md/data --bitmap=none | View examples |
| Start a consistency check | echo check | sudo tee /sys/block/md0/md/sync_action | View examples |
| Read mismatch count | cat /sys/block/md0/md/mismatch_cnt | View examples |
| Request consistency repair | echo repair | sudo tee /sys/block/md0/md/sync_action | View examples |
| Grow a parity array | sudo mdadm --grow /dev/md/data -n4 \
--backup-file=/mnt/rescue/md-data.reshape | View examples |
| Reassemble with reshape backup | sudo mdadm --assemble --scan \
--backup-file=/mnt/rescue/md-data.reshape | View examples |
| Print array configuration | sudo mdadm --detail --scan | View examples |
| Update Debian-family initramfs | sudo update-initramfs -u | View examples |
| Update dracut initramfs | sudo dracut --force | View examples |
| Read physical-disk SMART data | sudo smartctl -x /dev/disk/by-id/ATA_MEMBER_A | View examples |
Storage and Filesystems · 16 commands
Linux Storage and Filesystems Cheat Sheet
| Use | Syntax | Examples |
|---|---|---|
| Show block-device topology | lsblk -o \
NAME,TYPE,SIZE,FSTYPE,FSVER,LABEL,UUID,MOUNTPOINTS | View examples |
| Show filesystem overview | lsblk --fs | View examples |
| Probe a specific device | sudo blkid /dev/sdb1 | View examples |
| List mounted filesystems | findmnt --real --output TARGET,SOURCE,FSTYPE,OPTIONS | View examples |
| Resolve a path's mount | findmnt --target /var/lib/app | View examples |
| Test a mount point | mountpoint --quiet /mnt/archive | View examples |
| Show filesystem capacity | df -hT /var/lib/app | View examples |
| Show inode capacity | df -ih /var/lib/app | View examples |
| Measure one tree | du -sh -- /var/lib/app | View examples |
| Compare top-level children | du -xhd1 -- /var/lib/app | sort -h | View examples |
| Verify fstab | sudo findmnt --verify --verbose | View examples |
| Mount read-only | sudo mount --read-only --source /dev/sdb1 --target \
/mnt/review | View examples |
| Unmount by target | sudo umount -- /mnt/review | View examples |
| Synchronize one file | sync --data /var/lib/app/database.db | View examples |
| Find mount users | sudo fuser --mount --verbose /mnt/review | View examples |
| Inspect open paths | sudo lsof +D /mnt/review | View examples |
Storage and Filesystems · 35 commands
LVM Logical Volume Management Cheat Sheet
| Use | Syntax | Examples |
|---|---|---|
| Inventory physical volumes | sudo pvs -o \
pv_name,pv_uuid,vg_name,pv_size,pv_free,pv_attr,dev_size | View examples |
| Inventory volume groups | sudo vgs -o \
vg_name,vg_uuid,vg_size,vg_free,pv_count,lv_count,vg_attr | View examples |
| Inventory logical volumes | sudo lvs -a -o \
lv_full_name,lv_size,segtype,lv_attr,origin,pool_lv,data_percent,metadata_percent,devices | View examples |
| Export a structured report | sudo lvm fullreport --reportformat json_std | View examples |
| Initialize a physical volume | sudo pvcreate /dev/disk/by-id/wwn-0x5000c50012345678 | View examples |
| Create a volume group | sudo vgcreate vgdata \
/dev/disk/by-id/wwn-0x5000c50012345678 | View examples |
| Create a linear LV | sudo lvcreate --name app --size 100G vgdata | View examples |
| Extend an LV and filesystem | sudo lvextend --resizefs --size +20G /dev/vgdata/app | View examples |
| Consume remaining VG space | sudo lvextend --resizefs --extents +100%FREE \
/dev/vgdata/app | View examples |
| Grow a mounted XFS filesystem | sudo xfs_growfs /srv/app | View examples |
| Test an LV reduction plan | sudo lvreduce --test --size 80G /dev/vgdata/archive | View examples |
| Reduce an LV after its filesystem | sudo lvreduce --size 80G /dev/vgdata/archive | View examples |
| Create a thin pool | sudo lvcreate --type thin-pool --name pool0 --size 500G \
vgdata | View examples |
| Create a thin LV | sudo lvcreate --type thin --name tenant1 --virtualsize \
2T --thinpool vgdata/pool0 | View examples |
| Monitor thin-pool utilization | sudo lvs -o \
lv_full_name,segtype,lv_size,data_percent,metadata_percent,pool_lv,discards | View examples |
| Extend thin-pool data | sudo lvextend --size +100G vgdata/pool0 | View examples |
| Extend thin-pool metadata | sudo lvextend --poolmetadatasize +1G vgdata/pool0 | View examples |
| Create a COW snapshot | sudo lvcreate --snapshot --name app-prechange --size 20G \
/dev/vgdata/app | View examples |
| Monitor snapshot consumption | sudo lvs -o \
lv_full_name,origin,lv_size,data_percent,lv_attr | View examples |
| Merge a snapshot | sudo lvconvert --merge /dev/vgdata/app-prechange | View examples |
| Move extents between PVs | sudo pvmove /dev/disk/by-id/wwn-0x5000c50011111111 \
/dev/disk/by-id/wwn-0x5000c50022222222 | View examples |
| Remove an empty PV from a VG | sudo vgreduce vgdata \
/dev/disk/by-id/wwn-0x5000c50011111111 | View examples |
| Tag a logical volume | sudo lvchange --addtag production vgdata/app | View examples |
| Select LVs by tag | sudo lvs -o lv_full_name,lv_tags -S 'tags={production}' | View examples |
| Activate one LV | sudo lvchange --activate y vgdata/app | View examples |
| Deactivate one LV | sudo lvchange --activate n vgdata/app | View examples |
| Disable LV autoactivation | sudo lvchange --setautoactivation n vgdata/app | View examples |
| Back up VG metadata | sudo vgcfgbackup --file /var/backups/lvm/vgdata.conf \
vgdata | View examples |
| List metadata archives | sudo vgcfgrestore --list vgdata | View examples |
| Test metadata restoration | sudo vgcfgrestore --test --file \
/var/backups/lvm/vgdata.conf vgdata | View examples |
| List the LVM devices file | sudo lvmdevices | View examples |
| Check device-file entries | sudo lvmdevices --check | View examples |
| Set thin-pool discard mode | sudo lvchange --discards nopassdown vgdata/pool0 | View examples |
| Report VG ownership and locking | sudo vgs -o \
vg_name,vg_uuid,vg_attr,vg_systemid,vg_locktype | View examples |
| Start shared-VG locking | sudo vgchange --lockstart vgshared | View examples |
Storage and Filesystems · 20 commands
NFS and autofs Cheat Sheet
| Use | Syntax | Examples |
|---|---|---|
| List NFS mounts | findmnt -t nfs,nfs4 -o TARGET,SOURCE,FSTYPE,OPTIONS | View examples |
| Show negotiated options | nfsstat --mounts | View examples |
| Query NFSv3 exports | showmount --exports nfs1.example.net | View examples |
| List RPC services | rpcinfo -p nfs1.example.net | View examples |
| Mount NFSv4.1 | sudo mount -t nfs4 -o vers=4.1,sec=krb5p \
nfs1.example.net:/projects /srv/projects | View examples |
| Mount read-only for validation | sudo mount -t nfs4 -o ro,vers=4.1 \
nfs1.example.net:/projects /mnt/nfs-test | View examples |
| Unmount normally | sudo umount /srv/projects | View examples |
| Identify mount users | sudo fuser -vm /srv/projects | View examples |
| Show active exports | sudo exportfs -v | View examples |
| Reload exports | sudo exportfs -ra | View examples |
| Validate export syntax | sudo exportfs -rav | View examples |
| Show server statistics | nfsstat --server | View examples |
| Show client statistics | nfsstat --client | View examples |
| Inspect per-mount statistics | mountstats /srv/projects | View examples |
| Check autofs maps | sudo automount --dumpmaps | View examples |
| Reload autofs | sudo systemctl reload autofs.service | View examples |
| Show automount units | findmnt -t autofs -o TARGET,SOURCE,OPTIONS | View examples |
| Read autofs logs | journalctl -u autofs.service --since today --no-pager | View examples |
| Check NFSv4 id mapping | nfsidmap -l | View examples |
| Inspect GSS services | systemctl status rpc-gssd.service rpc-svcgssd.service \
--no-pager | View examples |
Storage and Filesystems · 20 commands
Samba File Sharing Cheat Sheet
| Use | Syntax | Examples |
|---|---|---|
| Show Samba version | smbd --version | View examples |
| Validate configuration | testparm --suppress-prompt /etc/samba/smb.conf | View examples |
| Inspect one share | testparm --suppress-prompt --section-name projects \
/etc/samba/smb.conf | View examples |
| List configured services | testparm --suppress-prompt --show-all-parameters \
/etc/samba/smb.conf | View examples |
| List server shares | smbclient --list=files1.example.net --user=alice | View examples |
| Open an SMB client | smbclient //files1.example.net/projects --user=alice | View examples |
| Connect with Kerberos | smbclient //files1.example.net/projects \
--use-kerberos=required --no-pass | View examples |
| Show active sessions | sudo smbstatus --shares | View examples |
| Show locked files | sudo smbstatus --locks | View examples |
| Reload configuration | sudo smbcontrol all reload-config | View examples |
| Add a Samba password | sudo smbpasswd -a alice | View examples |
| Disable a Samba account | sudo smbpasswd -d alice | View examples |
| Enable a Samba account | sudo smbpasswd -e alice | View examples |
| Read a share ACL | smbcacls //files1.example.net/projects / --user=alice | View examples |
| Read filesystem ACLs | getfacl --absolute-names /srv/samba/projects | View examples |
| Show protocol bounds | testparm --suppress-prompt \
--parameter-name='server min protocol' \
/etc/samba/smb.conf | View examples |
| Show signing policy | testparm --suppress-prompt \
--parameter-name='server signing' /etc/samba/smb.conf | View examples |
| Inspect SMB listeners | ss -ltnp 'sport = :445' | View examples |
| Read smbd logs | journalctl -u smb.service -u smbd.service --since today \
--no-pager | View examples |
| Mount an SMB share | sudo mount -t cifs //files1.example.net/projects \
/mnt/projects -o \
credentials=/root/.smb-projects,vers=3.1.1 | View examples |
Storage and Filesystems · 20 commands
Swap, zram, and Memory Pressure Cheat Sheet
| Use | Syntax | Examples |
|---|---|---|
| Summarize memory | free --human --wide | View examples |
| Read kernel memory counters | grep -E \
'^(MemAvailable|SwapTotal|SwapFree|Dirty|Writeback|Slab|SReclaimable):' \
/proc/meminfo | View examples |
| List swap areas | swapon --show --output=NAME,TYPE,SIZE,USED,PRIO | View examples |
| Read kernel swap table | cat /proc/swaps | View examples |
| Sample reclaim and swapping | vmstat 1 10 | View examples |
| Read memory PSI | cat /proc/pressure/memory | View examples |
| Sample swap activity | sar -W 1 10 | View examples |
| Rank processes by RSS | ps -eo pid,user,comm,rss,vsz --sort=-rss | head -20 | View examples |
| Inspect one process memory | sudo cat /proc/1234/smaps_rollup | View examples |
| Find OOM events | journalctl -k -g 'oom|Out of memory|Killed process' \
--since today --no-pager | View examples |
| Read swappiness | sysctl vm.swappiness | View examples |
| Read overcommit policy | sysctl vm.overcommit_memory vm.overcommit_ratio | View examples |
| Enable prepared swap | sudo swapon --priority 10 /swapfile | View examples |
| Disable one swap area | sudo swapoff /swapfile | View examples |
| List zram devices | zramctl --output \
NAME,ALGORITHM,DISKSIZE,DATA,COMPR,TOTAL,STREAMS,MOUNTPOINT | View examples |
| Read zram memory stats | cat /sys/block/zram0/mm_stat | View examples |
| Configure a zram device | sudo zramctl /dev/zram0 --algorithm zstd --size 4G | View examples |
| Reset an unused zram device | sudo zramctl --reset /dev/zram0 | View examples |
| Read zswap state | cat /sys/module/zswap/parameters/enabled | View examples |
| Read cgroup memory events | cat \
/sys/fs/cgroup/system.slice/example.service/memory.events | View examples |



