Skip to content

Module 4 Summary — File Management and Permissions

Congratulations! 🎉 You have successfully completed Module 4 – File Management and Permissions. This module introduced one of the most important aspects of Linux system administration—how Linux stores, organizes, secures, and manages files. Every Linux server, cloud platform, Kubernetes cluster, and enterprise application relies on these concepts for security, stability, and efficient storage management.


Module Overview

Throughout this module, you explored the Linux filesystem in depth, learning how files are stored, protected, linked, mounted, and managed.

These concepts form the foundation for:

  • Linux System Administration
  • DevOps
  • Cloud Engineering
  • Kubernetes
  • Docker
  • Storage Management
  • Security Hardening
  • Site Reliability Engineering (SRE)
  • Infrastructure Automation

Lessons Covered

1. File Types

Learned that everything in Linux is a file.

Covered:

  • Regular files
  • Directories
  • Character devices
  • Block devices
  • Symbolic links
  • Named pipes
  • Sockets

Commands:

ls -l

file

find

Learned how Linux files use inodes and how multiple filenames can reference the same file.

Covered:

  • Inodes
  • Link count
  • Creating hard links
  • Storage efficiency

Commands:

ln

ls -li

stat

Created symbolic links used in production deployments.

Covered:

  • Soft links
  • Broken links
  • Relative links
  • Absolute links

Commands:

ln -s

readlink

unlink

4. Linux Permissions

Learned the Linux permission model.

Covered:

  • Read
  • Write
  • Execute
  • User
  • Group
  • Others
  • Numeric permissions

Examples:

755

644

600

5. Ownership

Learned how Linux assigns ownership.

Covered:

  • Owner
  • Group
  • UID
  • GID
  • Root ownership

Commands:

ls -l

id

groups

stat

6. umask

Learned how Linux assigns default permissions.

Covered:

  • Default file permissions
  • Default directory permissions
  • Permission calculation
  • Secure defaults

Commands:

umask

umask -S

7. Access Control Lists (ACL)

Extended the traditional permission model.

Covered:

  • User ACLs
  • Group ACLs
  • Default ACLs
  • ACL masks

Commands:

getfacl

setfacl

8. File Attributes

Protected files beyond standard permissions.

Covered:

  • Immutable files
  • Append-only files
  • Security hardening

Commands:

lsattr

chattr

9. Mount Points

Learned how Linux mounts storage devices.

Covered:

  • Filesystems
  • Mount points
  • UUIDs
  • /etc/fstab
  • Persistent mounts

Commands:

mount

umount

findmnt

blkid

lsblk

10. Disk Usage

Monitored filesystem utilization.

Covered:

  • Filesystem usage
  • Directory sizes
  • Inode usage
  • Storage troubleshooting

Commands:

df

du

find

sort

Skills You've Gained

By completing this module, you can now:

  • Understand Linux file types
  • Work with hard and symbolic links
  • Configure secure permissions
  • Manage file ownership
  • Configure default permissions using umask
  • Implement ACLs for fine-grained access
  • Protect critical files using file attributes
  • Mount and manage storage devices
  • Configure persistent storage
  • Monitor disk usage
  • Troubleshoot storage issues

Production Workflow Example

Imagine a new storage volume is attached to a production server.

Tasks:

  • Verify the disk
  • Create a mount point
  • Mount the filesystem
  • Configure persistent mounting
  • Set ownership
  • Configure permissions
  • Protect configuration files

Commands:

lsblk

blkid

mount

df -h

chown

chmod

chattr

lsattr

This workflow represents a common task performed by Linux administrators and cloud engineers.


Command Cheat Sheet

Command Purpose
ls -l View permissions and ownership
ls -li View inode numbers
file Identify file type
stat Display file metadata
ln Create hard links
ln -s Create symbolic links
readlink Display symbolic link target
umask View/set default permissions
getfacl View ACLs
setfacl Manage ACLs
lsattr View file attributes
chattr Modify file attributes
mount Mount filesystems
umount Unmount filesystems
findmnt Display mount tree
lsblk Display block devices
blkid Show UUIDs
df -h Filesystem usage
du -sh Directory usage

Real-World DevOps Examples

Secure SSH configuration.

sudo chattr +i /etc/ssh/sshd_config

Mount a new application volume.

sudo mount /dev/sdb1 /data

View filesystem usage.

df -h

Grant Jenkins access using ACL.

sudo setfacl -m u:jenkins:rwx /opt/build

Create a deployment symlink.

ln -s releases/v2 current

Protect application logs.

sudo chattr +a /var/log/app.log

Security Layers in Linux

Ownership
Permissions
umask
ACL
File Attributes

Each layer adds additional security and control over how files are accessed and managed.


Mini Project

Secure Application Deployment

Create a deployment directory:

/opt/myapp

Tasks:

  • Create a symbolic link named current
  • Configure ownership
  • Apply secure permissions
  • Set a suitable umask
  • Grant deployment access using ACL
  • Protect the configuration file using the immutable attribute
  • Verify disk usage
  • Configure a persistent mount for application data

This project combines nearly every concept learned in Module 4.


Best Practices

  • Follow the Principle of Least Privilege.
  • Avoid 777 permissions.
  • Use symbolic links for deployments.
  • Prefer UUIDs in /etc/fstab.
  • Protect critical configuration files with immutable attributes.
  • Monitor disk usage regularly.
  • Audit permissions and ownership periodically.
  • Use ACLs only when traditional permissions are insufficient.

Common Mistakes

❌ Using chmod 777 to solve permission problems.

✅ Avoid using chmod 777 to solve permission problems when a safer approach exists.


❌ Forgetting to unmount removable storage before disconnecting it.

✅ Remember to to unmount removable storage before disconnecting it.


❌ Ignoring inode usage.

✅ Always review inode usage.


❌ Editing /etc/fstab without validating it using:

✅ Use:

sudo mount -a

❌ Forgetting that immutable files cannot be modified until the attribute is removed.

✅ Remember to that immutable files cannot be modified until the attribute is removed.

Module Assessment

Before moving to Module 5, ensure you can confidently:

  • Identify Linux file types
  • Explain inodes and hard links
  • Create symbolic links
  • Read and interpret permissions
  • Configure ownership
  • Calculate umask values
  • Apply ACLs
  • Protect files using chattr
  • Mount and unmount filesystems
  • Monitor storage usage
  • Troubleshoot common permission and storage issues

If you can perform these tasks without referring to documentation, you are ready for the next module.


What's Next?

Linux Users — Understanding User Accounts in Linux

In Module 5 – Users and Groups, you'll learn how Linux manages user accounts, authentication, and access control.

Topics include:

  • Linux User Accounts
  • Root User
  • System vs Regular Users
  • User IDs (UID)
  • Group IDs (GID)
  • User Management (useradd, usermod, userdel)
  • Group Management (groupadd, groupmod, groupdel)
  • Password Management
  • /etc/passwd
  • /etc/shadow
  • /etc/group
  • /etc/gshadow
  • sudo
  • Switching Users (su)
  • Environment Profiles
  • Account Locking and Expiration
  • User Security Best Practices

These concepts are essential for Linux administration, DevOps, cloud platforms, Kubernetes, and enterprise security.


Congratulations! 🎉

You have completed one of the most important modules in Linux administration.

You now understand how Linux:

  • Stores files
  • Secures files
  • Protects files
  • Manages storage
  • Controls access
  • Organizes filesystems

These are the core skills used every day by:

  • Linux System Administrators
  • DevOps Engineers
  • Cloud Architects
  • Site Reliability Engineers (SREs)
  • Platform Engineers
  • Security Engineers
  • Infrastructure Engineers

Continue practicing these concepts in virtual machines, cloud instances, and lab environments. Strong file management skills are the foundation of becoming an expert Linux professional.

Next Module: Module 5 – Users and Groups