Everything in Linux is a file. Understanding filesystems helps debug storage issues.
Key concepts:
- Inode: Metadata storing file attributes (permissions, timestamps, block pointers). Doesn't store filename.
- Hard link: Multiple names pointing to same inode. Deleting one doesn't delete data.
- Symbolic link: Path to another file. Breaks if target deleted.
- File descriptors: Integer handles for open files. Limits via
ulimit -n.
The /proc filesystem: Virtual filesystem exposing kernel and process info.
Interview question: "Difference between hard and symbolic links?"