Cheat Sheet Perintah Linux Sysadmin: 50+ Command yang Paling Sering Dipakai Sehari-hari
Cheat Sheet Perintah Linux Sysadmin yang Wajib Dikuasai
Bagi seorang system administrator, Linux bukan sekadar sistem operasi. Linux adalah lingkungan kerja utama untuk mengelola server, jaringan, aplikasi, database, container, hingga sistem monitoring.
Dalam pekerjaan sehari-hari, sysadmin hampir selalu berhadapan dengan pertanyaan seperti:
- Apakah server sedang kehabisan RAM?
- Proses apa yang menggunakan CPU paling tinggi?
- Berapa kapasitas disk yang tersisa?
- Service tertentu sedang berjalan atau tidak?
- Port apa saja yang sedang terbuka?
- Siapa saja yang sedang login?
- Bagaimana mengetahui IP address server?
- Apakah koneksi ke server lain bermasalah?
- Mengapa aplikasi tiba-tiba tidak dapat diakses?
- Di mana lokasi file konfigurasi sebuah service?
Pada kondisi seperti itu, kemampuan mengingat perintah Linux menjadi sangat membantu.
Namun, sysadmin profesional tidak harus menghafal ratusan command. Yang lebih penting adalah memahami kelompok perintah, fungsi masing-masing command, dan kapan harus menggunakannya.
Artikel ini merupakan cheat sheet Linux untuk sysadmin yang dapat disimpan, di-bookmark, atau bahkan di-screenshot untuk referensi cepat ketika bekerja di terminal.
1. Navigasi Direktori
Sebelum melakukan administrasi server, kemampuan berpindah dan memahami struktur direktori Linux merupakan dasar yang wajib dikuasai.
pwd
Menampilkan direktori aktif saat ini.
pwd
Contoh:
/home/walid
ls
Melihat isi direktori.
ls
Untuk melihat informasi lebih lengkap:
ls -lah
Keterangan:
-l→ format detail-a→ termasuk file tersembunyi-h→ ukuran lebih mudah dibaca
cd
Berpindah direktori.
cd /var/log
Kembali ke home:
cd ~
Kembali ke direktori sebelumnya:
cd -
Naik satu tingkat:
cd ..
2. Mengelola File dan Direktori
Sysadmin hampir setiap hari membuat, memindahkan, menyalin, atau menghapus file.
mkdir
Membuat direktori.
mkdir backup
Membuat struktur direktori sekaligus:
mkdir -p /backup/server/2026
touch
Membuat file kosong.
touch konfigurasi.txt
cp
Menyalin file.
cp file.txt /backup/
Menyalin direktori:
cp -r website/ /backup/
mv
Memindahkan atau mengganti nama file.
mv file.txt /backup/
Rename:
mv lama.conf baru.conf
rm
Menghapus file.
rm file.txt
Menghapus direktori beserta isinya:
rm -r folder/
Perintah seperti rm -rf harus digunakan dengan sangat hati-hati karena dapat menghapus data secara rekursif tanpa meminta konfirmasi.
3. Membaca dan Mencari Isi File
Ketika troubleshooting, membaca log dan konfigurasi merupakan pekerjaan rutin.
cat
Menampilkan isi file.
cat /etc/hostname
less
Membaca file panjang secara interaktif.
less /var/log/syslog
Gunakan q untuk keluar.
head
Menampilkan bagian awal file.
head -n 20 file.log
tail
Menampilkan bagian akhir file.
tail -n 50 file.log
Untuk mengikuti log secara realtime:
tail -f /var/log/syslog
Ini sangat berguna ketika sedang melakukan troubleshooting aplikasi atau service.
grep
Mencari teks tertentu.
grep "error" application.log
Pencarian tanpa membedakan huruf besar dan kecil:
grep -i "error" application.log
Pencarian rekursif:
grep -R "Listen" /etc/nginx/
4. Mencari File
find
Mencari file berdasarkan nama.
find /var/log -name "*.log"
Mencari file tertentu:
find /etc -name "nginx.conf"
Mencari file berdasarkan ukuran:
find /var -type f -size +500M
Perintah ini sangat berguna ketika disk server tiba-tiba penuh.
locate
Jika database locate tersedia:
locate nginx.conf
Biasanya lebih cepat daripada find, tetapi database indeksnya harus diperbarui.
5. Monitoring CPU dan RAM
Monitoring resource merupakan pekerjaan inti sysadmin.
top
Monitoring proses secara realtime.
top
Alternatif yang lebih interaktif:
htop
Jika htop belum tersedia, dapat dipasang melalui package manager sesuai distribusi Linux.
free
Melihat penggunaan RAM.
free -h
Contoh informasi yang diperoleh:
Mem: total used free shared buff/cache available
Swap: total used free
Perhatikan terutama nilai available, bukan hanya free.
uptime
Melihat uptime dan load average.
uptime
Contoh:
up 12 days, 4:32, load average: 0.30, 0.45, 0.40
Load average menunjukkan beban sistem dalam interval 1, 5, dan 15 menit.
vmstat
Melihat statistik sistem secara ringkas.
vmstat 1
Perintah ini berguna untuk melihat CPU, memory, proses, dan aktivitas I/O secara berkala.
6. Monitoring Disk
df
Melihat kapasitas filesystem.
df -h
Untuk mengetahui filesystem mana yang hampir penuh:
df -h
Perhatikan terutama:
Use%
Jika / sudah mendekati 100%, aplikasi dapat mulai mengalami berbagai masalah.
du
Melihat penggunaan storage berdasarkan direktori.
du -sh /var/*
Mencari direktori terbesar:
du -h --max-depth=1 /var | sort -h
ncdu
Untuk analisis disk yang lebih nyaman:
ncdu /
ncdu sangat berguna ketika mencari penyebab disk penuh.
7. Monitoring Proses
ps
Menampilkan proses.
ps aux
Mencari proses tertentu:
ps aux | grep nginx
pgrep
Mencari PID berdasarkan nama proses.
pgrep nginx
pkill
Menghentikan proses berdasarkan nama.
pkill nginx
Gunakan dengan hati-hati karena dapat menghentikan beberapa proses dengan nama yang sama.
kill
Mengirim signal kepada proses.
kill PID
Jika proses tidak merespons:
kill -9 PID
SIGKILL sebaiknya menjadi pilihan terakhir karena proses tidak mendapatkan kesempatan melakukan cleanup.
8. Mengelola Service dengan systemd
Pada banyak distribusi Linux modern, systemd digunakan untuk mengelola service.
Mengecek status service
systemctl status nginx
Menjalankan service
sudo systemctl start nginx
Menghentikan service
sudo systemctl stop nginx
Restart
sudo systemctl restart nginx
Reload konfigurasi
sudo systemctl reload nginx
Reload berbeda dengan restart.
Reload biasanya memuat konfigurasi baru tanpa benar-benar menghentikan service.
Mengaktifkan service saat boot
sudo systemctl enable nginx
Sekaligus enable dan start:
sudo systemctl enable --now nginx
Melihat service yang gagal
systemctl --failed
9. Membaca Log dengan journalctl
Jika service bermasalah, jangan langsung restart berkali-kali.
Lihat log terlebih dahulu.
journalctl -u nginx
Log terbaru:
journalctl -u nginx -n 50
Mengikuti log secara realtime:
journalctl -u nginx -f
Log sejak boot terakhir:
journalctl -b
Log dengan prioritas error:
journalctl -p err
Inilah salah satu kebiasaan penting sysadmin: diagnosis dahulu, tindakan kemudian.
10. Networking Command
Server tanpa networking ibarat server yang sedang menjalani kehidupan sebagai kalkulator mahal.
ip addr
Melihat interface dan IP address.
ip addr
Versi singkat:
ip -br addr
ip route
Melihat routing table.
ip route
Contoh:
default via 192.168.1.1 dev eth0
ping
Menguji konektivitas.
ping 8.8.8.8
Menggunakan jumlah paket tertentu:
ping -c 4 8.8.8.8
Perlu diingat bahwa kegagalan ping tidak selalu berarti server tujuan mati. ICMP dapat diblokir oleh firewall.
11. DNS Troubleshooting
nslookup
nslookup example.com
Menggunakan DNS tertentu:
nslookup example.com 8.8.8.8
dig
Untuk troubleshooting DNS yang lebih detail:
dig example.com
Melihat record A:
dig example.com A
Melihat MX:
dig example.com MX
Melihat nameserver:
dig example.com NS
12. Mengecek Port dan Socket
ss
Salah satu command yang sangat penting bagi sysadmin.
Melihat listening TCP:
ss -lnt
Melihat listening UDP:
ss -lnu
Melihat proses yang menggunakan socket:
sudo ss -lntup
Mencari port tertentu:
sudo ss -lntup | grep :80
Jika website tidak dapat diakses, pemeriksaan port adalah salah satu langkah awal yang masuk akal.
13. Menguji Koneksi dengan curl
HTTP request
curl https://example.com
Melihat header HTTP:
curl -I https://example.com
Mengikuti redirect:
curl -IL https://example.com
Menguji API:
curl https://api.example.com/status
curl sangat berguna untuk membedakan masalah aplikasi, DNS, jaringan, reverse proxy, dan TLS.
14. Troubleshooting Jaringan dengan traceroute dan mtr
traceroute
Melihat jalur paket menuju tujuan:
traceroute 8.8.8.8
Pada beberapa sistem, tool perlu dipasang terlebih dahulu.
mtr
Menggabungkan konsep ping dan traceroute:
mtr 8.8.8.8
Untuk troubleshooting jaringan, mtr sangat berguna untuk melihat latency dan packet loss pada jalur tertentu.
15. Monitoring Traffic dengan tcpdump
Ketika troubleshooting jaringan sudah masuk level lebih dalam, gunakan:
sudo tcpdump -i eth0
Capture traffic HTTP:
sudo tcpdump -i eth0 port 80
Capture traffic dari host tertentu:
sudo tcpdump -i eth0 host 192.168.1.10
Simpan capture:
sudo tcpdump -i eth0 -w capture.pcap
File .pcap kemudian dapat dianalisis menggunakan Wireshark.
16. Monitoring Bandwidth dengan iftop
sudo iftop -i eth0
iftop dapat membantu melihat host mana yang menggunakan bandwidth secara aktif.
Alternatif lain untuk kebutuhan tertentu adalah nload atau tools monitoring berbasis Prometheus.
17. User dan Permission
who
Melihat user yang sedang login.
who
w
Melihat user beserta aktivitasnya.
w
id
Melihat UID, GID, dan group user.
id walid
chmod
Mengubah permission.
chmod 644 file.txt
chown
Mengubah owner dan group.
sudo chown www-data:www-data file.txt
Untuk direktori beserta isinya:
sudo chown -R www-data:www-data /var/www/html
Gunakan opsi -R secara hati-hati karena perubahan berlaku secara rekursif.
18. Manajemen Package
Pada Debian/Ubuntu:
sudo apt update
Upgrade:
sudo apt upgrade
Install:
sudo apt install nginx
Menghapus package:
sudo apt remove nginx
Pada Rocky Linux/RHEL modern:
sudo dnf install nginx
Memperbarui package:
sudo dnf update
Sysadmin sebaiknya memahami package manager sesuai distro yang digunakan.
19. Arsip dan Kompresi
Membuat tar.gz
tar -czvf backup.tar.gz /data
Ekstrak
tar -xzvf backup.tar.gz
Melihat isi archive
tar -tzf backup.tar.gz
Untuk backup dan migrasi server, pemahaman tar sangat penting.
20. SSH
SSH merupakan salah satu tool paling fundamental dalam administrasi server Linux.
Login:
ssh user@192.168.1.10
Menggunakan port berbeda:
ssh -p 2222 user@192.168.1.10
Copy file ke server:
scp file.txt user@192.168.1.10:/tmp/
Copy direktori:
scp -r website/ user@192.168.1.10:/var/www/
Untuk transfer data yang lebih kompleks, rsync sering menjadi pilihan yang lebih fleksibel.
21. Sinkronisasi Data dengan rsync
rsync -av source/ destination/
Sinkronisasi ke server:
rsync -avz website/ user@server:/backup/website/
Dengan progress:
rsync -avh --progress source/ destination/
Untuk backup server, rsync sangat populer karena efisien dan hanya mentransfer perubahan yang diperlukan.
Cheat Sheet Ringkas
Berikut kelompok command yang layak diingat:
| Kebutuhan | Command |
|---|---|
| Direktori aktif | pwd |
| Lihat file | ls -lah |
| Pindah direktori | cd |
| Buat direktori | mkdir |
| Copy | cp |
| Move/Rename | mv |
| Hapus | rm |
| Baca file | cat |
| Baca file panjang | less |
| Log terakhir | tail |
| Cari teks | grep |
| Cari file | find |
| CPU/process | top |
| RAM | free -h |
| Load | uptime |
| Resource detail | vmstat |
| Disk | df -h |
| Folder terbesar | du |
| Disk analyzer | ncdu |
| Process | ps |
| Cari PID | pgrep |
| Kill process | kill |
| Service | systemctl |
| Log service | journalctl |
| IP address | ip addr |
| Routing | ip route |
| Connectivity | ping |
| DNS | dig |
| Socket/port | ss |
| HTTP testing | curl |
| Network path | traceroute |
| Network diagnosis | mtr |
| Packet capture | tcpdump |
| Bandwidth | iftop |
| User login | who |
| User detail | id |
| Permission | chmod |
| Ownership | chown |
| Package Debian | apt |
| Package RHEL | dnf |
| Archive | tar |
| Remote login | ssh |
| Copy remote | scp |
| Sync data | rsync |
Tutorial Step-by-Step: Troubleshooting Server Linux
Bayangkan sebuah website tiba-tiba tidak dapat diakses.
Jangan langsung restart server.
Gunakan pendekatan sistematis.
Langkah 1 — Periksa kondisi server
uptime
free -h
df -h
Tujuannya memastikan server tidak mengalami masalah resource dasar.
Langkah 2 — Periksa service
Misalnya menggunakan Nginx:
systemctl status nginx
Jika service gagal:
systemctl --failed
Langkah 3 — Periksa log
journalctl -u nginx -n 100
Jika perlu realtime:
journalctl -u nginx -f
Langkah 4 — Periksa port
sudo ss -lntup | grep :80
Pastikan service memang melakukan listening pada port yang diharapkan.
Langkah 5 — Uji aplikasi dari server
curl -I http://localhost
Jika localhost berhasil tetapi akses dari jaringan gagal, masalah kemungkinan berada pada jaringan, firewall, reverse proxy, DNS, atau konfigurasi binding.
Langkah 6 — Periksa DNS
dig example.com
Bandingkan IP hasil DNS dengan alamat server yang sebenarnya.
Langkah 7 — Uji dari sisi jaringan
ping server-ip
Kemudian:
mtr server-ip
Langkah 8 — Jika masih belum jelas
Gunakan packet capture:
sudo tcpdump -i eth0 port 80
Pendekatan ini jauh lebih efektif dibanding melakukan restart berulang-ulang tanpa mengetahui akar masalah.
Best Practice Menggunakan Command Linux
Jangan menghafal command secara membabi buta
Fokus pada konsep.
Misalnya:
Resource → top/free/vmstat
Disk → df/du/ncdu
Process → ps/pgrep/kill
Service → systemctl
Log → journalctl
Network → ip/ss/ping
DNS → dig
HTTP → curl
Packet → tcpdump
File → find/grep
Dengan pola tersebut, troubleshooting menjadi lebih terstruktur.
Gunakan man
Jika lupa parameter:
man ss
atau:
man systemctl
Gunakan --help
rsync --help
Jangan langsung menggunakan sudo
Gunakan privilege hanya ketika memang diperlukan.
Selalu pahami command sebelum menjalankannya
Terutama command destruktif seperti:
rm
dan command yang mengubah permission atau ownership secara rekursif.
Kesalahan yang Sering Terjadi
Hanya menggunakan ping
Ping berhasil tidak berarti aplikasi berhasil.
Server bisa merespons ICMP tetapi port HTTP, SSH, database, atau service tertentu dapat tetap bermasalah.
Gunakan kombinasi:
ping
ss
curl
dig
mtr
sesuai kebutuhan.
Menganggap free kecil berarti RAM habis
Linux menggunakan RAM untuk cache. Gunakan:
free -h
dan perhatikan available.
Langsung restart service
Restart mungkin membuat masalah terlihat hilang sementara, tetapi akar masalah bisa tetap ada.
Periksa:
systemctl status
journalctl
terlebih dahulu.
Tidak memeriksa disk
Server dapat mengalami masalah bukan karena CPU atau RAM, tetapi karena filesystem penuh.
Gunakan:
df -h
du -sh
Menggunakan kill -9 sebagai langkah pertama
SIGKILL menghentikan proses secara paksa. Gunakan setelah pendekatan normal tidak berhasil.
Menggunakan rm -rf tanpa verifikasi
Kesalahan satu karakter dalam path dapat berakibat fatal.
Biasakan memeriksa:
pwd
ls
sebelum melakukan operasi destruktif.
Tips Profesional untuk Sysadmin
Buatlah cheat sheet pribadi berdasarkan server yang benar-benar Anda kelola.
Misalnya:
SERVER WEB
IP : 192.168.10.20
OS : Ubuntu Server
WEB : Nginx
DATABASE : PostgreSQL
MONITOR : Prometheus
LOG : journald
Kemudian simpan command penting:
systemctl status nginx
journalctl -u nginx -f
ss -lntup
df -h
free -h
Dengan begitu, saat terjadi insiden, Anda tidak perlu mengandalkan ingatan sepenuhnya.
Untuk lingkungan produksi, command Linux juga sebaiknya dikombinasikan dengan monitoring seperti Prometheus, Grafana, Loki, Icinga, atau sistem observability lain. Terminal sangat kuat untuk diagnosis langsung, sedangkan monitoring membantu menemukan masalah sebelum pengguna melaporkannya.

Kesimpulan
Menguasai Linux sebagai sysadmin bukan berarti harus menghafal ratusan perintah.
Yang jauh lebih penting adalah memahami hubungan antara command dan masalah yang sedang dihadapi.
Jika server bermasalah, pikirkan berdasarkan kategori:
CPU/RAM → top, free, vmstat
Disk → df, du, ncdu
Process → ps, pgrep, kill
Service → systemctl
Log → journalctl, tail, grep
Network → ip, ss, ping, mtr
DNS → dig, nslookup
HTTP/API → curl
Packet → tcpdump
File → find, grep, cat, less
Remote administration → ssh, scp, rsync
Inilah pola berpikir yang membuat seorang pengguna Linux berkembang menjadi sysadmin: bukan sekadar mengetahui command, tetapi mengetahui command mana yang digunakan, kapan digunakan, dan informasi apa yang harus dicari dari hasilnya.
Simpan cheat sheet ini. Saat server mulai “berulah”, terminal biasanya sudah memberikan petunjuk. Tinggal kita tahu cara membacanya.
FAQ
Pertanyaan: Apa perintah Linux yang paling penting untuk sysadmin?
Jawaban: Beberapa yang sangat sering digunakan adalah ls, cd, grep, find, top, free, df, systemctl, journalctl, ip, ss, ping, dig, curl, ssh, dan rsync.
Pertanyaan: Apa command untuk melihat penggunaan RAM Linux?
Jawaban: Gunakan free -h. Untuk monitoring realtime, gunakan top atau htop.
Pertanyaan: Bagaimana mengetahui port yang sedang terbuka di Linux?
Jawaban: Gunakan ss -lntup untuk melihat socket dan proses yang sedang listening.
Pertanyaan: Bagaimana melihat log service Linux?
Jawaban: Jika service menggunakan systemd, gunakan journalctl -u nama-service, misalnya journalctl -u nginx.
Pertanyaan: Bagaimana mengecek disk Linux yang penuh?
Jawaban: Gunakan df -h untuk filesystem dan du -sh atau ncdu untuk mencari direktori yang menggunakan banyak ruang.
Pertanyaan: Apa perbedaan systemctl restart dan systemctl reload?
Jawaban: Restart menghentikan dan menjalankan kembali service, sedangkan reload meminta service memuat ulang konfigurasi tanpa melakukan restart penuh jika service mendukungnya.
Pertanyaan: Apakah ping cukup untuk troubleshooting jaringan?
Jawaban: Tidak. Ping hanya menguji ICMP. Gunakan ip, ss, dig, curl, mtr, atau tcpdump sesuai jenis masalah.
Jika cheat sheet ini membantu pekerjaan Anda, simpan artikel ini sebagai referensi dan bagikan kepada teman, siswa, rekan sysadmin, atau administrator jaringan lainnya.
Punya command Linux favorit yang sering digunakan tetapi belum masuk dalam daftar ini? Tulis di kolom komentar.
Mari berbagi pengalaman troubleshooting, command, dan best practice Linux agar semakin banyak orang tidak hanya bisa mengetik command, tetapi juga memahami apa yang sebenarnya terjadi di balik terminal.
Jangan lupa jelajahi artikel teknologi lainnya seputar Linux Server, Networking, MikroTik, Cisco, Virtualisasi, Cloud Computing, DevOps, Cybersecurity, Monitoring, dan System Administration.
Dukung kami dengan Subscribe & Join Membership channel YouTube | Walid Umar
Akses video pembelajaran eksklusif, materi persiapan UKK (Uji Kompetensi Siswa) dan Penyelesaian Soal LKS ITNSA