🧪 Linux Proficiency Test – 3 Years Experience (90 Questions)

Vaibhav UpareVaibhav Upare
7 min read

🔹 Section 1: Command Line Basics (10 questions)

  1. What does the command pwd do?

  2. How do you list all hidden files?

  3. What is the output of echo $HOME?

  4. How do you view the last 20 lines of a file?

  5. Explain the difference between > and >>.

  6. How can you check your current shell?

  7. Which command will find the absolute path of an executable?

  8. How do you display file sizes in a human-readable format with ls?

  9. What does man do?

  10. Write a command to find the number of .conf files in /etc.


🔹 Section 2: File and Directory Operations (10 questions)

  1. How do you create a directory called projects?

  2. What is the command to remove a directory and all its contents?

  3. Explain how to use find to locate all .log files in /var/log.

  4. How can you rename a file?

  5. How do you move a file from one directory to another?

  6. What does du -sh * do?

  7. How can you compress a directory using tar and gzip?

  8. What’s the command to extract a .tar.gz file?

  9. Write a command to compare two text files.

  10. How do you delete all .tmp files recursively?


🔹 Section 3: Permissions and Ownership (10 questions)

  1. What does chmod 755 script.sh mean?

  2. How do you make a script executable?

  3. What command changes file ownership?

  4. Explain the difference between chown and chgrp.

  5. What is the output of ls -l?

  6. What are SUID, SGID, and Sticky Bit?

  7. How can you set default permissions using umask?

  8. What is the command to view ACLs of a file?

  9. How do you grant read and write permissions to the group only?

  10. What does chmod o-rwx file.txt do?


🔹 Section 4: Process Management (10 questions)

  1. How do you list all running processes?

  2. What is the function of top and htop?

  3. How do you kill a process by name?

  4. What does ps aux | grep nginx show?

  5. Explain zombie and orphan processes.

  6. What does the nice value control?

  7. How do you change the priority of a process?

  8. What command pauses a running job?

  9. How can you bring a background job to the foreground?

  10. What’s the difference between &, nohup, and disown?


🔹 Section 5: Networking (10 questions)

  1. What does ip a show?

  2. How do you test if a server is reachable on port 80?

  3. How do you display the routing table?

  4. What is the command to download a file using the terminal?

  5. How do you see your public IP address?

  6. How do you open a port using iptables?

  7. What does ss -tuln do?

  8. What’s the difference between TCP and UDP?

  9. How do you view active network interfaces?

  10. What is the use of /etc/hosts?


🔹 Section 6: Package Management (10 questions)

  1. What is the difference between apt and yum?

  2. How do you update all installed packages on a Debian-based system?

  3. How do you install a .deb file?

  4. What does yum remove do?

  5. How can you check which package provides a command?

  6. What’s the command to list installed packages?

  7. How do you upgrade a single package?

  8. How can you add a PPA repository?

  9. Explain the difference between dpkg and apt.

  10. How do you remove unused dependencies?


🔹 Section 7: Users and Groups (10 questions)

  1. How do you add a user?

  2. What’s the command to change a user’s password?

  3. How do you delete a user and their home directory?

  4. How do you add a user to a group?

  5. What’s the default shell for a new user?

  6. How do you lock/unlock a user account?

  7. What is stored in /etc/passwd?

  8. How do you list all users on the system?

  9. How can you change a user's shell?

  10. What command shows a user’s group memberships?


🔹 Section 8: Shell Scripting and Automation (10 questions)

  1. What is #!/bin/bash?

  2. How do you pass arguments to a shell script?

  3. What does $1, $2, $@ mean?

  4. Write a script to display the current date and time.

  5. How can you make a script run every hour?

  6. What’s the difference between cron and at?

  7. How do you debug a shell script?

  8. What command schedules a cron job?

  9. How do you redirect errors to a file?

  10. Write a for loop to list numbers 1 to 10.


🔹 Section 9: System Monitoring & Logs (10 questions)

  1. How do you check system load average?

  2. Where are system logs stored?

  3. What does journalctl do?

  4. How do you watch real-time logs?

  5. What command shows memory usage?

  6. How do you check disk usage?

  7. What tool can you use to monitor IO activity?

  8. What is the use of uptime?

  9. How do you track login attempts?

  10. What is the purpose of /var/log/auth.log?

✅ Answer Key: Linux 90 Questions

🔹 Section 1: Command Line Basics

  1. Prints current working directory

  2. ls -a

  3. Displays the path to the user's home directory

  4. tail -n 20 filename

  5. > overwrites, >> appends

  6. echo $SHELL

  7. which

  8. ls -lh

  9. Shows manual/help pages

  10. find /etc -name "*.conf" | wc -l


🔹 Section 2: File and Directory Operations

  1. mkdir projects

  2. rm -rf directory_name

  3. find /var/log -name "*.log"

  4. mv oldname newname

  5. mv file /new/location/

  6. Shows size of each item in human-readable format

  7. tar -czvf archive.tar.gz directory/

  8. tar -xzvf archive.tar.gz

  9. diff file1 file2

  10. find . -name "*.tmp" -delete


🔹 Section 3: Permissions and Ownership

  1. rwx for owner, rx for group, r for others

  2. chmod +x script.sh

  3. chown user:group filename

  4. chown changes user & group, chgrp only group

  5. Lists permissions, owner, group, size, etc.

  6. Special permissions for exec, group files, and directories

  7. Sets default permissions mask

  8. getfacl filename

  9. chmod g+rw filename

  10. Removes all permissions from others


🔹 Section 4: Process Management

  1. ps aux or top

  2. Real-time process monitoring tools

  3. pkill processname

  4. Filters for processes named nginx

  5. Zombie: finished but not reaped; Orphan: no parent

  6. Process priority

  7. renice

  8. Ctrl + Z or kill -STOP pid

  9. fg

  10. & runs in background, nohup ignores hangups, disown removes job from shell


🔹 Section 5: Networking

  1. Shows all IP addresses and interfaces

  2. telnet host 80 or nc -zv host 80

  3. ip route or route -n

  4. wget or curl -O

  5. curl ifconfig.me

  6. iptables -A INPUT -p tcp --dport 80 -j ACCEPT

  7. Shows listening ports and services

  8. TCP = connection-based, UDP = connectionless

  9. ip link show or ifconfig

  10. Maps hostnames to IPs locally


🔹 Section 6: Package Management

  1. Different package managers: apt = Debian, yum = RHEL

  2. sudo apt update && sudo apt upgrade

  3. sudo dpkg -i package.deb

  4. Removes a package

  5. dpkg -S /path/to/file or yum provides

  6. dpkg -l or yum list installed

  7. sudo apt install package-name

  8. add-apt-repository ppa:name

  9. dpkg is low-level, apt is higher-level

  10. apt autoremove


🔹 Section 7: Users and Groups

  1. adduser username or useradd

  2. passwd username

  3. userdel -r username

  4. usermod -aG groupname username

  5. Usually /bin/bash

  6. passwd -l username / passwd -u username

  7. Basic user info and UID/GID

  8. cut -d: -f1 /etc/passwd

  9. chsh -s /bin/zsh username

  10. groups username


🔹 Section 8: Shell Scripting and Automation

  1. Shebang – tells the shell to use Bash

  2. ./script.sh arg1 arg2

  3. $0 = script name, $1 = first arg, $@ = all args

  4. echo "Today is $(date)"

  5. Cron: 0 * * * * /path/to/script.sh

  6. cron = recurring, at = one-time

  7. bash -x script.sh

  8. crontab -e

  9. command 2> error.log

  10. for i in {1..10}; do echo $i; done


🔹 Section 9: System Monitoring & Logs

  1. uptime or top

  2. /var/log

  3. Views logs from systemd journal

  4. tail -f /var/log/syslog

  5. free -h

  6. df -h

  7. iotop or iostat

  8. Shows uptime and load

  9. last or who

  10. Contains authentication logs

0
Subscribe to my newsletter

Read articles from Vaibhav Upare directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Vaibhav Upare
Vaibhav Upare

"Passionate DevOps Engineer dedicated to crafting robust, scalable, and automated solutions for seamless software delivery. With expertise in cloud technologies, CI/CD pipelines, and infrastructure as code, I thrive on optimizing workflows and driving collaboration between development and operations teams. Let's build together for continuous innovation and efficiency."