Linux

0%

    Memory Management

    • A server reports 1GB of free memory via free -h, but a process fails to allocate a 1GB block. Why might this happen in a Linux environment?

      Senior
    • Explain how Linux uses page tables and the MMU to provide each process with its own virtual address space.

      Senior
    • Explain the difference between Resident Set Size (RSS) and Virtual Memory Size (VSZ) when looking at process memory.

      Mid
    • Explain the difference between virtual memory and physical memory in Linux.

      Mid
    • How does mmap work conceptually, and why might a developer use it instead of standard file I/O (read/write)?

      Senior
    • What are Huge Pages in Linux, and in what specific scenarios would a software engineer enable them for their application?

      Senior
    • What is the Out-Of-Memory Killer, and how does the kernel decide which process to sacrifice when the system runs out of RAM?

      Senior
    • What is the vm.swappiness parameter, and what are the trade-offs of setting it very low versus very high?

      Senior

    Boot Process & Init Systems

    • Describe the Linux boot process from the moment the power button is pressed until the login prompt appears.

      Senior
    • How do you enable a service to start at boot versus just starting it now with systemctl?

      Junior
    • What is a unit in systemd, and what is the difference between a service unit and a target unit?

      Mid
    • What is systemd and how does it differ from the legacy SysVinit (runlevels)?

      Mid
    • What is the difference between systemd targets and traditional SysV runlevels?

      Mid
    • What is the role of GRUB and the initramfs/initrd in the Linux boot process?

      Mid
    • What is the role of PID 1 (systemd/init) in the Linux process tree, and what happens to a process's children if the parent dies unexpectedly?

      Mid

    Processes Signals & Scheduling

    • Explain copy-on-write (COW) in the context of the fork() system call.

      Senior
    • Explain the concept of load average in Linux. What do the three numbers (1, 5, 15 minutes) actually represent in terms of CPU and I/O?

      Senior
    • Explain the difference between SIGTERM and SIGKILL. When would you use one over the other?

      Junior
    • How do you move a running foreground process to the background without stopping it? Explain the roles of Ctrl-Z, bg, and fg.

      Junior
    • In tools like top, you might see a process consuming 150% or 400% CPU. How is this possible, and what does it tell you about the hardware?

      Junior
    • What does it mean when a process is in 'Uninterruptible Sleep' (D state) in top, and why can't you kill a process in this state?

      Senior
    • What does nohup and disown do, and how do they keep a job running after you log out?

      Mid
    • What is 'niceness' in Linux process scheduling, and how does a high nice value affect a process's priority relative to the CFS?

      Mid
    • What is a zombie process? Why can't you kill it with SIGKILL, and how do you actually remove it from the process table?

      Mid
    • What is SIGHUP, and why do daemons often use it to reload their configuration?

      Mid
    • What is the difference between an orphan process and a zombie process, and who becomes the parent of an orphan process in a modern systemd-based system?

      Mid
    • What is the difference between fork() and exec()? What happens to the process ID and memory space during each?

      Mid
    • What is the difference between kill, pkill, and killall?

      Junior
    • What is the difference between SIGINT (Ctrl+C) and SIGTSTP (Ctrl+Z)?

      Mid
    • Why can't a process ignore or catch a SIGKILL (9) signal?

      Mid

    Networking

    • Explain how an SSH tunnel works for port forwarding.

      Mid
    • Explain the role of /etc/hosts versus /etc/resolv.conf. Which one does the system check first by default, and where is that order configured?

      Mid
    • How do dig, nslookup, and host help troubleshoot DNS resolution on Linux?

      Mid
    • How would you use ss or netstat to find which specific process is listening on port 8080?

      Junior
    • What is netcat used for in Linux networking and troubleshooting?

      Mid
    • What is nsswitch.conf and how does it control the order of name resolution sources?

      Senior
    • What is rsync, and what advantages does it have over scp for transferring files?

      Mid
    • What is the difference between curl and wget?

      Junior
    • What is the difference between iptables and nftables, and how do firewall rules filter traffic?

      Senior
    • What is the difference between ping and traceroute? How does traceroute use TTL to map a network path?

      Mid
    • What is the difference between the ip command and the older ifconfig/route commands?

      Mid
    • What is the difference between the netstat and ss commands?

      Mid
    • What is the purpose of the lo (loopback) interface, and can a Linux system function correctly if it is disabled?

      Mid

    Permissions & Access Control

    • Explain how the umask value affects the default permissions of newly created files and directories.

      Mid
    • Explain the difference between DAC (Discretionary Access Control) and MAC (Mandatory Access Control) like SELinux.

      Senior
    • Explain the rwx permission model and how octal notation like 755 maps to symbolic permissions.

      Junior
    • How does the /etc/sudoers file control what commands users can run, and why edit it with visudo?

      Mid
    • What are POSIX ACLs, and how do getfacl and setfacl extend the traditional permission model?

      Mid
    • What are the setuid and setgid bits, and what are the security implications of using them?

      Mid
    • What is the 'sticky bit' on a directory like /tmp, and what specific security problem does it solve?

      Mid
    • What is the difference between chmod, chown, and chgrp?

      Junior
    • What is the difference between su and sudo? Why is sudo generally preferred in a production environment?

      Junior
    • What is the principle of least privilege as it applies to Linux user accounts?

      Junior

    I/O Redirection & Pipes

    • Explain stdin, stdout, and stderr. How do you redirect only the errors of a command to a file while keeping normal output on screen?

      Junior
    • How do pipes work internally, and what happens to the first process if the second process in the pipe stops reading data?

      Senior
    • What does '2>&1' signify at the end of a command?

      Junior
    • What does the tee command do and when is it useful in a pipeline?

      Junior
    • What is the difference between a pipe (|) and a redirection (>)? Explain how the shell handles data flow in cat file | grep 'error' > log.txt.

      Junior

    Containers Isolation & Hardening

    • Explain the concept of a chroot jail.

      Mid
    • What are Linux Capabilities (e.g., CAP_NET_ADMIN), and how do they allow for more granular security than the traditional root/user model?

      Senior
    • What are Linux namespaces and what specific types of isolation do they provide (e.g., PID, Net, Mount)?

      Senior
    • What are Namespaces and Cgroups? Explain how these two specific kernel features provide the isolation needed for containers.

      Senior
    • What is AppArmor and how does it compare to SELinux as a mandatory access control system?

      Senior
    • What is fail2ban and how does it help protect a Linux server from brute-force attacks?

      Mid
    • What is overlayfs (a union filesystem), and how do container images use it for layered storage?

      Senior

    Filesystems & Storage

    • Explain the difference between a hard link and a symbolic (soft) link. What happens to the file data if the original file is deleted in both cases?

      Junior
    • Explain the role of the /etc/fstab file.

      Junior
    • How does a Bind Mount differ from a regular mount in the context of Linux filesystems?

      Mid
    • What are the differences between ext4, XFS, and Btrfs filesystems, and when might you choose one over another?

      Senior
    • What are the different file types in Linux (regular, directory, symlink, socket, FIFO, device), and how do you identify them with ls -l?

      Junior
    • What does the fsck utility do, and when is it run?

      Mid
    • What does the mount command do, and how do you mount a filesystem manually versus persistently?

      Junior
    • What happens to a file's inode when you move it within the same filesystem versus across different filesystems?

      Mid
    • What is a journaling filesystem like ext4, and how does it help prevent data corruption during a sudden power loss?

      Mid
    • What is an inode? If a disk has 50GB free but you get a 'No space left on device' error creating a tiny file, what is the likely cause?

      Mid
    • What is an inode? If I rename a file, does its inode number change, and why or why not?

      Mid
    • What is an inode? What information is stored in an inode, and what is specifically NOT stored there?

      Mid
    • What is the /proc directory, and why are the files in it reported as 0 bytes in size even though they contain data?

      Mid
    • What is the difference between du and df, and why might their reported values disagree?

      Mid
    • What is the Filesystem Hierarchy Standard (FHS), and what is typically stored in /etc vs /var?

      Junior
    • What is the purpose of the /proc and /sys virtual filesystems? Give an example of a piece of information you would look for there.

      Mid
    • What is the Virtual File System, and how does it allow Linux to support multiple filesystem types simultaneously?

      Senior
    • What is tmpfs, and how does it differ from a disk-backed filesystem?

      Mid
    • When a large log file is deleted while a process is still writing to it, why is the disk space not reclaimed, and how do you fix it without a reboot?

      Senior
    • Why can't hard links span across different filesystems or point to directories?

      Mid

    Shells & Command Execution

    • Explain the difference between running 'source script.sh' and executing it via './script.sh'.

      Junior
    • How do globbing and wildcards work in the shell, and how do they differ from regular expressions?

      Junior
    • How does command substitution using backticks or $() work?

      Junior
    • How does the PATH environment variable influence how the shell finds executables?

      Junior
    • What happens behind the scenes when you type 'ls' in a shell and hit Enter?

      Mid
    • What is a TTY, and what is the difference between a terminal, a pseudo-terminal, and a console?

      Senior
    • What is the $EDITOR variable, and how do vi/vim differ from nano for editing files?

      Junior
    • What is the difference between a login shell and a non-login shell, and which configuration files are loaded in each?

      Mid
    • What is the difference between a shell variable and an environment variable?

      Junior
    • What is the difference between the various shells like bash, zsh, sh, and fish?

      Junior
    • What is the exit status ($?) of a command and what conventions govern its values?

      Junior
    • When you run a command in the shell, which environment variables are inherited by the child process, and how does the export command change this?

      Mid

    Kernel Architecture & Fundamentals

    • Explain the difference between User Space and Kernel Space. Why does this separation exist, and how does a process move between them?

      Junior
    • Explain the Linux philosophy that 'Everything is a file.' Give examples of how this applies to hardware devices and network sockets.

      Junior
    • Linux is described as a monolithic kernel. What does that mean in practice, and how do Loadable Kernel Modules change that definition?

      Senior
    • What are system calls and how do they act as an interface between applications and the kernel?

      Mid
    • What does the GPL license mean for the Linux kernel, and why is it significant?

      Mid
    • What does uname tell you, and how do you interpret a Linux kernel version number?

      Junior
    • What is a context switch in the context of the Linux kernel?

      Mid
    • What is a system call, and how does it differ from a standard library function call?

      Mid
    • What is the difference between a block device and a character device?

      Mid
    • What is the difference between a process and a thread in the Linux kernel?

      Mid
    • What is the difference between Linux and Unix?

      Mid
    • What is the difference between the Linux kernel and a Linux distribution?

      Junior

    Package Management & Software Installation

    • How do package management systems differ between Debian-based (apt/dpkg) and RHEL-based (dnf/yum/rpm) distributions?

      Mid
    • How would you compile and install software from source, and what does './configure && make && make install' actually do?

      Mid
    • What is the difference between apt and dpkg, and when would you use each?

      Junior

    Users Authentication & SSH

    • How do you generate and use SSH key pairs, and why is key-based authentication preferred over passwords?

      Junior
    • What are common practices for hardening SSH access on a production Linux server?

      Senior
    • What information is stored in /etc/passwd versus /etc/shadow?

      Junior
    • What is PAM (Pluggable Authentication Modules) and what role does it play in Linux authentication?

      Senior
    • What is the difference between useradd and adduser, and how do you add a user to a group?

      Junior
    • What is the role of ssh-agent and the ~/.ssh/config file?

      Mid

    System Services Logging & Scheduling

    • How do you set the system timezone and locale on Linux, and what does timedatectl do?

      Junior
    • How do you use journalctl to investigate why a service failed to start?

      Mid
    • What is cron, and how do you read a crontab schedule expression?

      Junior
    • What is logrotate, and why is it important for long-running servers?

      Mid
    • What is stored under /var/log, and what is the role of rsyslog?

      Junior
    • What is the difference between cron, at, and systemd timers for scheduling tasks?

      Mid
    • What is the purpose of the journald daemon compared to traditional syslog?

      Mid

    Text Processing & Search

    • How does the find command work, and how do you combine it with xargs to act on the results?

      Mid
    • How would you use grep, and what is the difference between grep, egrep, and using -E for extended regex?

      Junior
    • What is awk and what kind of text-processing problems is it best suited for?

      Mid
    • What is sed used for, and can you explain a basic substitution command?

      Mid
    • What is the difference between the tar, gzip, and zip formats, and why is tar often combined with gzip?

      Junior

    Performance Diagnostics & Troubleshooting

    • How would you diagnose a system that is running out of file descriptors, and how do you raise the limit?

      Senior
    • What do vmstat, iostat, and free tell you when diagnosing system performance?

      Mid
    • What does strace do, and how would you use it to debug a misbehaving process?

      Senior
    • What is lsof and what kinds of problems does it help you diagnose?

      Mid
    • What is the difference between a soft and hard limit in ulimit, specifically regarding open files/sockets?

      Mid

    Volume Management & RAID

    • What advantages does LVM provide over using raw partitions directly?

      Senior
    • What is disk quota management on Linux, and how would you limit how much space a user can consume?

      Senior
    • What is LVM, and how do physical volumes, volume groups, and logical volumes relate to each other?

      Mid
    • What is software RAID via mdadm, and how do RAID levels 0, 1, 5, and 10 differ in terms of redundancy and performance?

      Senior
    • What is the process of adding and enabling swap space using mkswap and swapon?

      Mid

    Kernel Modules Tuning & Devices

    • What are loadable kernel modules, and what do lsmod, modprobe, and rmmod do?

      Mid
    • What is dmesg and the kernel ring buffer, and what kind of information does it contain?

      Junior
    • What is sysctl, and how does it let you tune kernel parameters at runtime versus persistently?

      Mid
    • What is udev, and how does it manage device files under /dev dynamically?

      Senior