archlinux
debian
free operating system
linux
ubuntu
ubuntu server
automation, bash, centos, commandline, cybersecurity, debian, devops, infosec, itadmin, itops, linux, linuxadmin, linuxbasics, linuxcommands, linuxserver, networking, opensource, scripting, servermanagement, shell, SysAdmin, systemadministration, systemmonitoring, tech, terminal, ubuntu
9M2PJU
0 Comments
Essential Linux Commands Every System Administrator Should Know
As a system administrator, mastering the command line is critical. Whether you’re maintaining servers, managing users, monitoring performance, or securing your system, knowing the right tools can make your job faster, easier, and more efficient.
Here’s a comprehensive list of the most important Linux commands every sysadmin should know — organized by category, explained in plain language, and ready to turn you into a command-line ninja 🥷.
🖥️ System Monitoring & Performance
Keeping your system healthy starts with knowing what’s going on behind the scenes.
top
/htop
View real-time system processes, CPU, and memory usage.htop
is an enhanced version oftop
with a cleaner UI.uptime
Shows how long the system has been running and the average load.vmstat
Displays information about memory, processes, I/O, and CPU.iostat
Useful for monitoring disk I/O stats and CPU load.free -h
Human-readable memory usage summary (RAM + swap).sar
Historical system activity reports — useful for spotting trends.ps aux
List all running processes with their CPU and memory usage.lsof
List open files. Great for checking what’s locking a file or port.strace
Debugging tool to trace system calls and signals.
📁 Filesystem & Disk Usage
Disk space issues are common — be ready to investigate and clean up.
df -h
Shows disk usage for all mounted filesystems in human-readable form.du -sh *
Quickly estimate the size of directories/files in the current folder.lsblk
Displays block devices and their mount points.mount
/umount
Mount or unmount filesystems.fdisk -l
/parted -l
Inspect disk partitions.blkid
Shows UUIDs and labels of block devices — handy for/etc/fstab
.find / -name filename
Searches the entire system for a file.file
Determines a file’s type — especially useful for unknown extensions.stat
Displays detailed file metadata including timestamps and permissions.
🧑💻 User & Permission Management
Managing users and access rights is at the heart of system security.
adduser
/useradd
Create new users (note:adduser
is more user-friendly).passwd
Set or change a user’s password.usermod
Modify a user’s attributes, like group or shell.deluser
/userdel
Remove users from the system.groupadd
,groupdel
,gpasswd
Manage user groups.chmod
Change file permissions (e.g.chmod 755
).chown
/chgrp
Change file owner or group.id
Show a user’s UID, GID, and group memberships.who
,w
,last
Show active users and login history.sudo
Run commands with elevated (root) privileges.
🌐 Networking
Networking is critical on any server. These tools help diagnose and configure network connections.
ip a
/ip link
Show all network interfaces and IP addresses.ip r
View the routing table.ss -tuln
/netstat -tuln
Show open ports and listening services.ping
/traceroute
Test network connectivity and route paths.dig
/nslookup
Perform DNS lookups to debug name resolution.curl
/wget
Download files or make web/API requests from the command line.nmap
Network scanner for discovering hosts and open ports.tcpdump
Capture and inspect network packets.hostname
View or set the system’s hostname.
🔐 Security & Access Control
Security is non-negotiable. These commands help you lock things down.
ufw
/iptables
Configure and manage firewall rules.fail2ban-client
Control Fail2Ban — protects against brute-force attacks.auditctl
,ausearch
View or search audit logs to monitor system access.getenforce
,setenforce
Manage SELinux modes.ssh
/sshd
Secure shell access and SSH server management.scp
,rsync
Securely copy files between systems.
📦 Package Management
Installing and managing software is essential. Use the right tool based on your distro:
Debian/Ubuntu
apt
,dpkg
,apt-cache
RedHat/CentOS
yum
,dnf
,rpm
Arch Linux
pacman
Universal
snap
,flatpak
Examples:
apt update && apt upgrade
dnf install nginx
pacman -S htop
🛠️ System Maintenance & Logs
Keep your system running smoothly by managing services and watching logs.
journalctl
Viewsystemd
logs.dmesg
Kernel ring buffer — shows hardware and boot messages.systemctl
Manage services onsystemd
systems (start, stop, enable, etc.).service
Older init-based service management.crontab -e
Edit scheduled tasks (cron jobs).at
Run one-off tasks at a specific time.logrotate
Manages log file rotation to prevent disk overuse.shutdown
,reboot
Schedule or perform system reboots/shutdowns.
🔄 Backup & Automation
Protect data and automate your tasks for efficiency.
rsync -avh
Sync directories or backup data.tar -czf archive.tar.gz folder/
Create compressed archive.scp user@host:file .
Secure file copy over SSH.cron
,anacron
Automate repetitive tasks.bash
/sh
Write scripts to automate system administration tasks.
📎 Bonus Tools & Utilities
tmux
/screen
Terminal multiplexers — resume sessions, split terminals.ncdu
Disk usage visualizer. Much better thandu
for quick inspection.glances
Real-time monitoring of CPU, RAM, disk, and more.nc
(netcat)
Versatile networking tool — useful for debugging or testing.alias
Create custom shortcuts for your most used commands.
📝 Final Thoughts
These Linux commands are not just helpful — they’re the foundation of any good system administrator’s toolbox. Mastering them will give you confidence to manage, troubleshoot, and optimize Linux systems whether you’re working with a single server or an entire fleet of machines.
Post Comment