Explain Linux file permissions and chmod.
Assesses fundamental understanding of Linux Administration conventions, runtime behavior, and memory/performance considerations.
Hiring managers look for precision, avoidance of ambiguous jargon, and ability to explain trade-offs under real production conditions.
Linux permissions have three classes (user, group, other) and three bits each: read (4), write (2), and execute (1).
- ls -l shows them as rwxr-xr--. The leading character is the type: d for directory, - for file, l for symlink.
- chmod sets permissions with symbolic (u+x) or octal (755) notation.
- chown changes owner and group. Directories also have setuid, setgid, and sticky bits; the sticky bit on /tmp means only owners can delete their files.
chmod 640 config.yml # rw-r-----
chmod u+x deploy.sh
chown app:app /var/www
chmod +t /shared
Special bits: setuid runs a file as its owner, used by passwd, and setgid on a directory makes new files inherit the group. Also check ACLs with getfacl. Always apply least privilege, especially on secrets.
Candidate Response Strategy & Interview Tips
- Start with a concise one-sentence summary: Deliver a direct, confident answer first before expanding into nuances.
- Demonstrate real-world trade-offs: Discuss where this approach excels and when you would avoid it in production systems.
- Discuss complexity & edge cases: Proactively explain time/space complexity or boundary conditions (null values, scale limits).
- Prepare for interviewer follow-ups: Technical hiring panels frequently probe deeper into concurrency, backward compatibility, or alternative libraries.