ABDURROZAK
HOME ABOUT ME MICROSITE KONTAK PERSEMBAHAN HELP
ABDURROZAK.MY.ID // DEBIAN LINUX SERVER FUNDAMENTAL

FAQ LENGKAP17 VOLUME

Kumpulan FAQ komprehensif dari 17 Volume seri Debian Linux Server Fundamental. Total 255 pertanyaan dengan jawaban detail, command lengkap, dan penjelasan mendalam.

VOLUME17
FAQ255
BACA300 MENIT
COMMAND600+
ABDUR ROZAK, S.Kom.Web Developer & Network Educator - abdurrozak.my.id
VOLUME 01 / 17

MENGENAL DEBIAN

FAQ seputar Mengenal Debian di Debian Linux Server.
Q
Apa itu Debian Linux?

Debian adalah distribusi Linux yang dikembangkan secara kolaboratif oleh komunitas global melalui Debian Project. Dikenal sangat stabil dan menjadi basis Ubuntu, Linux Mint, Kali Linux, dll.

Branch utama: Stable, Testing, Unstable (Sid).

CEK VERSI
cat /etc/os-release lsb_release -a cat /etc/debian_version # ===== CONTOH OUTPUT ===== 12.5

Penjelasan command:

  • lsb_release — Menampilkan informasi distribusi Linux.
  • cat /etc/os-release — Menampilkan metadata OS (nama, versi, codename).
Q
Apa kelebihan Debian dibanding distro lain?
  • Stabilitas tinggi untuk production
  • Keamanan responsif
  • Lebih dari 59.000 paket
  • Komunitas besar & aktif
  • Komitmen free software
  • Dokumentasi lengkap
Q
Perbedaan Stable, Testing, dan Unstable?
  • Stable (Bookworm) – production ready, paling stabil
  • Testing (Trixie) – calon stable berikutnya
  • Unstable (Sid) – development, paket terbaru

Untuk server production selalu gunakan Debian Stable.

Q
Requirement minimum install Debian Server?
  • CPU: 1 GHz+ (rekomendasi 2 GHz+)
  • RAM: 512 MB (rekomendasi 2 GB+)
  • Storage: 2 GB (rekomendasi 10 GB+)
  • Network interface

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Jenis instalasi Debian?
  • Graphical Install – mudah untuk pemula
  • Install (text) – lebih cepat
  • Expert Install – kontrol penuh
  • Automated Install (preseed)
  • Live System
Q
Bagaimana cara download ISO Debian?

Download dari website resmi atau mirror Indonesia:

DOWNLOAD
# Official https://www.debian.org/CD/ # Mirror Indonesia https://kambing.ui.ac.id/debian-cd/ https://kartolo.sby.datautama.net.id/debian-cd/ # Netinst recommended debian-12.x.x-amd64-netinst.iso sha256sum debian-*.iso # ===== CONTOH OUTPUT ===== a1b2c3d4e5f6789012345678901234567890abcdef1234567890abcdef123456 debian-12.5.0-amd64-netinst.iso
Q
Bagaimana membuat bootable USB?
BOOTABLE USB
# Linux/Mac sudo dd if=debian.iso of=/dev/sdX bs=4M status=progress lsblk # Windows: gunakan Rufus (https://rufus.ie) # ===== CONTOH OUTPUT ===== NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 120G 0 disk ├─sda1 8:1 0 20G 0 part / ├─sda2 8:2 0 98G 0 part /var └─sda3 8:3 0 2G 0 part [SWAP]

Penjelasan command:

  • lsblk — Menampilkan semua block device (disk, partisi, USB) dalam bentuk tree.
Q
Apa itu APT package management?

APT (Advanced Package Tool) adalah sistem manajemen paket Debian.

APT
sudo apt update sudo apt upgrade sudo apt install package sudo apt remove package apt search keyword apt show package # ===== CONTOH OUTPUT ===== Get:1 http://deb.debian.org/debian bookworm InRelease [151 kB] Get:2 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB] Fetched 199 kB in 1s (185 kB/s) Reading package lists... Done Building dependency tree... Done

Penjelasan command:

  • apt update — Mengambil index paket terbaru dari semua repository yang dikonfigurasi. Tidak menginstal apa pun. Selalu jalankan sebelum install/upgrade.
  • apt upgrade — Meng-upgrade semua paket yang memiliki versi lebih baru. Tidak akan menghapus paket lain.
  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • apt remove — Menghapus paket, tetapi menyisakan file konfigurasi di /etc.
Q
Apa itu Debian repository?
  • Main – free software sesuai DFSG
  • Contrib – free tapi bergantung non-free
  • Non-free – proprietary
  • Non-free-firmware

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Apa itu systemd di Debian?

systemd adalah init system dan service manager modern.

SYSTEMD
systemctl start|stop|restart|status service systemctl enable|disable service systemctl list-units --type=service journalctl -u service -f # ===== CONTOH OUTPUT ===== Mar 11 09:14:22 server systemd[1]: Starting A high performance web server... Mar 11 09:14:22 server systemd[1]: Started A high performance web server. Mar 11 10:22:15 server nginx[1235]: 192.168.1.50 - - [11/Mar/2026:10:22:15] "GET / HTTP/1.1" 200

Penjelasan command:

  • systemctl start — Menjalankan service saat ini (tidak mempengaruhi boot).
  • systemctl enable — Membuat service otomatis dijalankan setiap kali sistem boot.
  • journalctl — Melihat log yang dikelola systemd-journald. Ganti tail -f /var/log/... dengan ini.
  • journalctl -u — Melihat log khusus satu service. Tambahkan -f untuk mengikuti log secara real-time.
Q
Apa itu user dan group?

Sistem multi-user. root = superuser. User biasa dibatasi. Group untuk permission bersama.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Apa itu Filesystem Hierarchy Standard (FHS)?
  • / root
  • /bin binary penting
  • /etc konfigurasi
  • /home home user
  • /var data berubah (log)
  • /usr program
  • /tmp temporary
  • /root home root

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Apa itu package .deb?

Format paket Debian berisi software + metadata + script instalasi.

DPKG
sudo dpkg -i package.deb sudo dpkg -r name dpkg -l dpkg -L name dpkg -S file # ===== CONTOH OUTPUT ===== Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-==============-============-============-================================= ii nginx 1.22.1-9 amd64 high performance web server ii openssh-server 1:9.2p1-2 amd64 secure shell (SSH) server

Penjelasan command:

  • dpkg -i — Menginstal file .deb lokal. Tidak menyelesaikan dependency secara otomatis.
  • dpkg -r — Menghapus paket (konfigurasi masih tersisa).
  • dpkg -l — Menampilkan daftar semua paket yang terinstal di sistem.
  • dpkg -L — Menampilkan semua file yang dimiliki oleh suatu paket.
  • dpkg -S — Mencari paket mana yang memiliki file tertentu.
Q
Apa itu Linux kernel di Debian?
KERNEL
uname -r uname -a lsmod sudo apt install linux-image-amd64 # ===== CONTOH OUTPUT ===== 6.1.0-18-amd64

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
Q
Apa itu security update dan backports?

Security update = patch kerentanan. Backports = software lebih baru di Stable.

SECURITY
sudo apt update && sudo apt upgrade echo "deb http://deb.debian.org/debian bookworm-backports main" | sudo tee -a /etc/apt/sources.list sudo apt install -t bookworm-backports package # ===== CONTOH OUTPUT ===== Get:1 http://deb.debian.org/debian bookworm InRelease [151 kB] Get:2 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB] Fetched 199 kB in 1s (185 kB/s) Reading package lists... Done Building dependency tree... Done

Penjelasan command:

  • apt update — Mengambil index paket terbaru dari semua repository yang dikonfigurasi. Tidak menginstal apa pun. Selalu jalankan sebelum install/upgrade.
  • apt upgrade — Meng-upgrade semua paket yang memiliki versi lebih baru. Tidak akan menghapus paket lain.
  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
VOLUME 02 / 17

INSTALASI SERVER

FAQ seputar Instalasi Server di Debian Linux Server.
Q
Bagaimana cara instalasi Debian Server?
  1. Download ISO netinst
  2. Buat bootable USB
  3. Boot dari USB
  4. Pilih Graphical/Text install
  5. Set bahasa, lokasi, keyboard
  6. Konfigurasi network
  7. Buat user & password
  8. Partisi disk
  9. Pilih software
  10. Install GRUB
  11. Reboot
Q
Rekomendasi partisi disk server?
PARTISI
/boot 500MB ext4 / 20GB+ ext4 swap 2xRAM swap /home sisa ext4 /var 50GB+ ext4 (untuk database)
Q
Apa itu LVM dan cara menggunakannya?

Logical Volume Manager memungkinkan resize volume dengan mudah.

LVM
sudo pvcreate /dev/sdb1 sudo vgcreate vg0 /dev/sdb1 sudo lvcreate -L 20G -n data vg0 sudo lvextend -L +10G /dev/vg0/data sudo resize2fs /dev/vg0/data
Q
Setup network static saat instalasi?

Pilih manual, isi IP Address, Netmask, Gateway, dan DNS (contoh 8.8.8.8 / 1.1.1.1).

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Setup user dan root password?

Set password root yang kuat. Buat user biasa lalu tambahkan ke group sudo setelah instalasi.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Apa itu GRUB bootloader?
GRUB
sudo update-grub sudo grub-install /dev/sda cat /boot/grub/grub.cfg

Penjelasan command:

  • update-grub — Memperbarui konfigurasi bootloader GRUB agar mengenali kernel baru/lama.
Q
Post-installation checklist?
POST-INSTALL
sudo apt update && sudo apt upgrade sudo apt install sudo curl wget vim nano htop sudo usermod -aG sudo username sudo apt install ufw openssh-server sudo ufw allow ssh && sudo ufw enable sudo systemctl enable ssh # ===== CONTOH OUTPUT ===== Get:1 http://deb.debian.org/debian bookworm InRelease [151 kB] Get:2 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB] Fetched 199 kB in 1s (185 kB/s) Reading package lists... Done Building dependency tree... Done

Penjelasan command:

  • apt update — Mengambil index paket terbaru dari semua repository yang dikonfigurasi. Tidak menginstal apa pun. Selalu jalankan sebelum install/upgrade.
  • apt upgrade — Meng-upgrade semua paket yang memiliki versi lebih baru. Tidak akan menghapus paket lain.
  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • ufw allow — Mengizinkan traffic masuk pada port/service yang disebutkan.
  • ufw enable — Mengaktifkan firewall. Pastikan port SSH sudah di-allow sebelum menjalankan ini agar tidak terkunci.
  • systemctl enable — Membuat service otomatis dijalankan setiap kali sistem boot.
Q
Cara update setelah instalasi?
UPDATE
sudo apt update sudo apt upgrade sudo apt full-upgrade sudo apt autoremove sudo apt clean # ===== CONTOH OUTPUT ===== Get:1 http://deb.debian.org/debian bookworm InRelease [151 kB] Get:2 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB] Fetched 199 kB in 1s (185 kB/s) Reading package lists... Done Building dependency tree... Done

Penjelasan command:

  • apt update — Mengambil index paket terbaru dari semua repository yang dikonfigurasi. Tidak menginstal apa pun. Selalu jalankan sebelum install/upgrade.
  • apt upgrade — Meng-upgrade semua paket yang memiliki versi lebih baru. Tidak akan menghapus paket lain.
  • apt full-upgrade — Seperti upgrade, tapi boleh menambah atau menghapus paket untuk menyelesaikan dependency. Lebih agresif.
  • apt autoremove — Menghapus paket yang tidak lagi dibutuhkan (dependency yatim).
  • apt clean — Menghapus file .deb yang tersimpan di cache (/var/cache/apt/archives).
Q
Setup timezone Asia/Jakarta?
TIMEZONE
sudo timedatectl set-timezone Asia/Jakarta timedatectl timedatectl list-timezones # ===== CONTOH OUTPUT ===== Local time: Wed 2026-03-11 14:30:00 WIB Universal time: Wed 2026-03-11 07:30:00 UTC RTC time: Wed 2026-03-11 07:30:00 Time zone: Asia/Jakarta (WIB, +0700) System clock synchronized: yes NTP service: active

Penjelasan command:

  • timedatectl — Mengelola timezone dan sinkronisasi waktu sistem.
Q
Setup locale?
LOCALE
sudo dpkg-reconfigure locales sudo update-locale LANG=en_US.UTF-8 locale locale -a
Q
Update kernel?
KERNEL
sudo apt update && sudo apt upgrade sudo apt install linux-image-amd64 sudo update-grub sudo reboot uname -r # ===== CONTOH OUTPUT ===== Get:1 http://deb.debian.org/debian bookworm InRelease [151 kB] Get:2 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB] Fetched 199 kB in 1s (185 kB/s) Reading package lists... Done Building dependency tree... Done

Penjelasan command:

  • apt update — Mengambil index paket terbaru dari semua repository yang dikonfigurasi. Tidak menginstal apa pun. Selalu jalankan sebelum install/upgrade.
  • apt upgrade — Meng-upgrade semua paket yang memiliki versi lebih baru. Tidak akan menghapus paket lain.
  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • update-grub — Memperbarui konfigurasi bootloader GRUB agar mengenali kernel baru/lama.
Q
Install software dengan APT?
APT
sudo apt install package sudo apt install pkg1 pkg2 sudo apt remove package sudo apt purge package apt search keyword

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • apt remove — Menghapus paket, tetapi menyisakan file konfigurasi di /etc.
  • apt purge — Menghapus paket beserta seluruh file konfigurasinya.
Q
Install file .deb?
DPKG
sudo dpkg -i package.deb sudo apt install -f sudo dpkg -r name

Penjelasan command:

  • dpkg -i — Menginstal file .deb lokal. Tidak menyelesaikan dependency secara otomatis.
  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • dpkg -r — Menghapus paket (konfigurasi masih tersisa).
Q
Ganti hostname?
HOSTNAME
sudo hostnamectl set-hostname namaserver hostnamectl sudo nano /etc/hosts # ===== CONTOH OUTPUT ===== Static hostname: server Icon name: computer-vm Chassis: vm Machine ID: a1b2c3d4e5f6... Boot ID: 1a2b3c4d5e6f... Operating System: Debian GNU/Linux 12 (bookworm) Kernel: Linux 6.1.0-18-amd64 Architecture: x86-64

Penjelasan command:

  • hostnamectl — Mengelola hostname sistem.
Q
Disable IPv6?
IPv6
sudo nano /etc/sysctl.conf # Tambahkan: net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 sudo sysctl -p

Penjelasan command:

  • nano — Editor teks sederhana di terminal, cocok untuk pemula.
VOLUME 03 / 17

COMMAND LINE

FAQ seputar Command Line di Debian Linux Server.
Q
Command dasar Linux yang wajib dikuasai?
BASIC
ls -la cd /path pwd cp -r src dest mv src dest rm -rf dir mkdir -p path cat / less / head / tail file
Q
Bagaimana menggunakan pipe dan redirect?
PIPE & REDIRECT
cmd1 | cmd2 cmd > file cmd >> file cmd 2> error.log cmd &> all.log cmd < input.txt
Q
Bagaimana mencari file?
FIND
find / -name "*.conf" find /home -type f -mtime -7 find / -size +100M locate filename updatedb which command whereis command

Penjelasan command:

  • find — Mencari file berdasarkan nama, ukuran, waktu modifikasi, permission, dll.
Q
Bagaimana melihat dan mengelola proses?
PROCESS
ps aux ps aux --sort=-%mem | head top / htop pstree kill PID killall name pkill -f pattern # ===== CONTOH OUTPUT ===== USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1234 2.1 3.4 456789 123456 ? Ssl 09:00 0:45 /usr/sbin/mysqld www-data 1235 0.8 1.2 98765 45678 ? S 09:14 0:12 nginx: worker process root 1 0.0 0.3 168000 10240 ? Ss Mar10 0:05 /sbin/init

Penjelasan command:

  • ps aux — Menampilkan semua proses yang sedang berjalan beserta user, CPU, memory.
  • top / htop — Monitor proses secara interaktif (real-time).
Q
Bagaimana menggunakan grep, awk, sed?
TEXT PROCESSING
grep -ri "error" /var/log awk '{print $1}' file sed -i 's/old/new/g' file cut -d: -f1 /etc/passwd sort file | uniq

Penjelasan command:

  • grep — Mencari teks di dalam file. -i = case-insensitive, -r = recursive, -n = tampilkan nomor baris.
Q
Bagaimana mengatur permission file?
PERMISSION
chmod 755 file chmod -R 644 dir chown user:group file chown -R user:group dir ls -l umask

Penjelasan command:

  • chmod — Mengubah permission file/directory (read/write/execute untuk owner/group/other).
  • chown — Mengubah kepemilikan (owner dan group) file/directory.
Q
Bagaimana membuat dan extract archive?
ARCHIVE
tar -czvf archive.tar.gz /path tar -xzvf archive.tar.gz tar -tzvf archive.tar.gz gzip file / gunzip file.gz zip -r archive.zip dir unzip archive.zip

Penjelasan command:

  • tar -czvf — Membuat archive tar yang dikompresi gzip. c=create, z=gzip, v=verbose, f=file.
  • tar -xzvf — Extract archive tar.gz. x=extract, z=gzip, v=verbose, f=file.
Q
Bagaimana cek disk usage?
DISK USAGE
df -h du -sh /path du -h / | sort -hr | head -20 lsblk fdisk -l # ===== CONTOH OUTPUT ===== Filesystem Size Used Avail Use% Mounted on /dev/sda1 20G 6.2G 13G 33% / /dev/sda2 100G 45G 50G 48% /var tmpfs 1.9G 0 1.9G 0% /dev/shm

Penjelasan command:

  • df -h — Menampilkan penggunaan disk dalam format human-readable (GB/MB).
  • du -sh — Menampilkan ukuran total suatu directory.
Q
Bagaimana menggunakan history dan alias?
HISTORY & ALIAS
history history | grep apt !! (ulang command terakhir) alias ll='ls -la' alias update='sudo apt update && sudo apt upgrade' unalias ll # ===== CONTOH OUTPUT ===== Get:1 http://deb.debian.org/debian bookworm InRelease [151 kB] Get:2 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB] Fetched 199 kB in 1s (185 kB/s) Reading package lists... Done Building dependency tree... Done

Penjelasan command:

  • grep — Mencari teks di dalam file. -i = case-insensitive, -r = recursive, -n = tampilkan nomor baris.
  • apt update — Mengambil index paket terbaru dari semua repository yang dikonfigurasi. Tidak menginstal apa pun. Selalu jalankan sebelum install/upgrade.
  • apt upgrade — Meng-upgrade semua paket yang memiliki versi lebih baru. Tidak akan menghapus paket lain.
Q
Bagaimana mengelola service dari CLI?
SYSTEMCTL
systemctl status|start|stop|restart service systemctl enable|disable service systemctl list-units --failed journalctl -u service -f # ===== CONTOH OUTPUT ===== ● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; preset: enabled) Active: active (running) since Wed 2026-03-11 09:14:22 WIB; 2h 15min ago Docs: man:nginx(8) Process: 1234 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 1235 (nginx) Tasks: 3 (limit: 2215) Memory: 6.2M CPU: 45ms CGroup: /system.slice/nginx.service ├─1235 "nginx: master process /usr/sbin/nginx -g daemon on; master_process on;" └─1236 "nginx: worker process"

Penjelasan command:

  • systemctl status — Menampilkan status service (active/inactive/failed) + cuplikan log terakhir. Perintah pertama saat troubleshooting.
  • systemctl enable — Membuat service otomatis dijalankan setiap kali sistem boot.
  • journalctl — Melihat log yang dikelola systemd-journald. Ganti tail -f /var/log/... dengan ini.
  • journalctl -u — Melihat log khusus satu service. Tambahkan -f untuk mengikuti log secara real-time.
Q
Bagaimana melihat info hardware?
HARDWARE
lscpu free -h lsblk lspci lsusb dmidecode -t memory # ===== CONTOH OUTPUT ===== total used free shared buff/cache available Mem: 3.8Gi 1.2Gi 412Mi 12Mi 2.2Gi 2.4Gi Swap: 2.0Gi 0B 2.0Gi

Penjelasan command:

  • free -h — Menampilkan penggunaan RAM dan swap.
Q
Bagaimana menggunakan tmux/screen?
TMUX
sudo apt install tmux tmux new -s session tmux attach -t session Ctrl+b d → detach tmux ls

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
Q
Bagaimana transfer file dengan scp/rsync?
TRANSFER
scp file user@host:/path scp -r dir user@host:/path rsync -avz --progress source/ user@host:/dest/ rsync -avz --delete source/ dest/

Penjelasan command:

  • rsync -avz — Sinkronisasi file/directory. a=archive mode, v=verbose, z=kompresi saat transfer.
Q
Bagaimana melihat log sistem?
LOGS
journalctl -xe journalctl -f journalctl -u nginx -f tail -f /var/log/syslog tail -f /var/log/auth.log # ===== CONTOH OUTPUT ===== Mar 11 09:14:22 server systemd[1]: Starting A high performance web server... Mar 11 09:14:22 server systemd[1]: Started A high performance web server. Mar 11 10:22:15 server nginx[1235]: 192.168.1.50 - - [11/Mar/2026:10:22:15] "GET / HTTP/1.1" 200

Penjelasan command:

  • journalctl — Melihat log yang dikelola systemd-journald. Ganti tail -f /var/log/... dengan ini.
  • journalctl -u — Melihat log khusus satu service. Tambahkan -f untuk mengikuti log secara real-time.
Q
Bagaimana membuat bash script sederhana?
SCRIPT
nano script.sh #!/bin/bash echo "Hello World" chmod +x script.sh ./script.sh

Penjelasan command:

  • chmod — Mengubah permission file/directory (read/write/execute untuk owner/group/other).
VOLUME 04 / 17

BACKUP & RECOVERY

FAQ seputar Backup & Recovery di Debian Linux Server.
Q
Mengapa backup penting?

Backup melindungi data dari hardware failure, human error, ransomware, dan disaster. Tanpa backup yang baik, data hilang bisa permanen.

Q
Apa strategi backup 3-2-1?

3 salinan data, 2 media berbeda, 1 offsite. Standar industri untuk ketahanan data.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana backup dengan tar?
TAR BACKUP
tar -czvf backup-$(date +%Y%m%d).tar.gz /path/penting tar -xzvf backup.tar.gz -C /restore/path tar -tzvf backup.tar.gz

Penjelasan command:

  • tar -czvf — Membuat archive tar yang dikompresi gzip. c=create, z=gzip, v=verbose, f=file.
  • tar -xzvf — Extract archive tar.gz. x=extract, z=gzip, v=verbose, f=file.
Q
Bagaimana backup dengan rsync?
RSYNC
rsync -avz --progress /source/ /backup/ rsync -avz -e ssh /source/ user@remote:/backup/ rsync -avz --delete /source/ /mirror/

Penjelasan command:

  • rsync -avz — Sinkronisasi file/directory. a=archive mode, v=verbose, z=kompresi saat transfer.
Q
Bagaimana backup database MariaDB/MySQL?
MYSQL DUMP
mysqldump -u root -p --all-databases > all.sql mysqldump -u root -p dbname > dbname.sql mysql -u root -p dbname < dbname.sql

Penjelasan command:

  • mysqldump — Membuat dump (backup) database MySQL/MariaDB ke file SQL.
Q
Bagaimana backup PostgreSQL?
PG DUMP
pg_dump -U postgres dbname > dbname.sql pg_dumpall -U postgres > all.sql psql -U postgres dbname < dbname.sql

Penjelasan command:

  • pg_dump — Membuat dump database PostgreSQL.
Q
Bagaimana membuat backup otomatis dengan cron?
CRON BACKUP
crontab -e 0 2 * * * /usr/local/bin/backup.sh # Isi backup.sh: #!/bin/bash tar -czvf /backup/data-$(date +\%Y\%m\%d).tar.gz /var/www

Penjelasan command:

  • tar -czvf — Membuat archive tar yang dikompresi gzip. c=create, z=gzip, v=verbose, f=file.
Q
Bagaimana restore dari tar backup?
RESTORE
tar -tzvf backup.tar.gz tar -xzvf backup.tar.gz -C /path/restore

Penjelasan command:

  • tar -xzvf — Extract archive tar.gz. x=extract, z=gzip, v=verbose, f=file.
Q
Bagaimana backup seluruh sistem?
FULL SYSTEM
rsync -aAXv --exclude={/dev,/proc,/sys,/tmp,/run,/mnt,/media,/lost+found} / /mnt/backup/

Penjelasan command:

  • rsync — Menyalin/sinkronisasi file secara efisien, mendukung transfer remote via SSH.
Q
Apa itu snapshot LVM?
LVM SNAPSHOT
sudo lvcreate -L 5G -s -n snap /dev/vg0/data sudo mount /dev/vg0/snap /mnt/snap sudo lvremove /dev/vg0/snap

Penjelasan command:

  • mount — Me-mount filesystem ke direktori tertentu.
Q
Bagaimana verifikasi integritas backup?
VERIFY
tar -tzvf backup.tar.gz > /dev/null && echo OK sha256sum backup.tar.gz > backup.sha256 sha256sum -c backup.sha256 # ===== CONTOH OUTPUT ===== a1b2c3d4e5f6789012345678901234567890abcdef1234567890abcdef123456 debian-12.5.0-amd64-netinst.iso
Q
Bagaimana backup konfigurasi penting?
CONFIG BACKUP
tar -czvf etc-backup.tar.gz /etc cp -a /etc/nginx /backup/nginx dpkg --get-selections > packages.list

Penjelasan command:

  • tar -czvf — Membuat archive tar yang dikompresi gzip. c=create, z=gzip, v=verbose, f=file.
Q
Bagaimana restore package list?
RESTORE PKG
sudo dpkg --set-selections < packages.list sudo apt-get dselect-upgrade
Q
Tools backup modern yang direkomendasikan?
  • BorgBackup – deduplication + encryption
  • Restic – mudah & encrypted
  • Duplicati – ada GUI
  • rsnapshot – berbasis rsync

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana uji restore secara berkala?

Jadwalkan uji restore minimal sebulan sekali ke environment terpisah. Backup yang tidak pernah diuji sama saja dengan tidak punya backup.

VOLUME 05 / 17

USER & GROUP

FAQ seputar User & Group di Debian Linux Server.
Q
Bagaimana membuat user baru?
ADD USER
sudo adduser username sudo useradd -m -s /bin/bash username sudo passwd username

Penjelasan command:

  • passwd — Mengubah password user.
Q
Bagaimana menghapus user?
DEL USER
sudo deluser username sudo deluser --remove-home username sudo userdel -r username
Q
Bagaimana menambah user ke group?
GROUP
sudo usermod -aG groupname username sudo usermod -aG sudo username groups username id username # ===== CONTOH OUTPUT ===== admin : admin sudo users

Penjelasan command:

  • usermod — Mengubah atribut user (group, shell, dll).
Q
Bagaimana membuat group baru?
ADD GROUP
sudo addgroup groupname sudo groupadd groupname getent group groupname
Q
Bagaimana mengatur sudo tanpa password?
SUDOERS
sudo visudo # Tambahkan di akhir: username ALL=(ALL) NOPASSWD: ALL

Penjelasan command:

  • passwd — Mengubah password user.
  • visudo — Mengedit file sudoers dengan aman (dicek syntax-nya).
Q
Bagaimana melihat daftar user?
LIST USER
cat /etc/passwd getent passwd cut -d: -f1 /etc/passwd

Penjelasan command:

  • passwd — Mengubah password user.
Q
Bagaimana ganti password user?
PASSWD
passwd # diri sendiri sudo passwd username sudo passwd -l username # lock sudo passwd -u username # unlock

Penjelasan command:

  • passwd — Mengubah password user.
Q
Bagaimana set password aging?
AGING
sudo chage -l username sudo chage -M 90 username sudo chage -W 7 username

Penjelasan command:

  • chage — Mengatur kebijakan masa berlaku password.
Q
Bagaimana membuat user system (tanpa login)?
SYS USER
sudo useradd -r -s /usr/sbin/nologin svcuser sudo useradd -r -s /bin/false svcuser
Q
Bagaimana batasi akses SSH per user?
SSH LIMIT
sudo nano /etc/ssh/sshd_config AllowUsers user1 user2 DenyUsers baduser sudo systemctl restart ssh

Penjelasan command:

  • systemctl restart — Stop lalu start ulang service. Gunakan setelah mengubah konfigurasi.
Q
Bagaimana melihat siapa yang login?
WHO
who w last lastlog whoami / id # ===== CONTOH OUTPUT ===== admin pts/0 2026-03-11 09:00 (192.168.1.50) admin pts/1 2026-03-11 10:15 (192.168.1.51)
Q
Bagaimana set umask default?
UMASK
umask umask 027 # Tambahkan ke ~/.bashrc atau /etc/profile
Q
Bagaimana transfer ownership massal?
CHOWN
sudo chown -R user:group /path sudo find /path -user olduser -exec chown newuser {} +

Penjelasan command:

  • chown — Mengubah kepemilikan (owner dan group) file/directory.
  • find — Mencari file berdasarkan nama, ukuran, waktu modifikasi, permission, dll.
Q
Bagaimana audit permission file sensitif?
AUDIT
find /etc -type f -perm -002 find / -perm -4000 ls -l /etc/shadow /etc/passwd

Penjelasan command:

  • find — Mencari file berdasarkan nama, ukuran, waktu modifikasi, permission, dll.
Q
Bagaimana disable root login langsung?
ROOT
sudo passwd -l root # Atau di sshd_config: PermitRootLogin no

Penjelasan command:

  • passwd — Mengubah password user.
VOLUME 06 / 17

PACKAGE (APT)

FAQ seputar Package (APT) di Debian Linux Server.
Q
Bagaimana update dan upgrade paket?
UPDATE
sudo apt update sudo apt upgrade sudo apt full-upgrade sudo apt autoremove --purge sudo apt clean # ===== CONTOH OUTPUT ===== Get:1 http://deb.debian.org/debian bookworm InRelease [151 kB] Get:2 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB] Fetched 199 kB in 1s (185 kB/s) Reading package lists... Done Building dependency tree... Done

Penjelasan command:

  • apt update — Mengambil index paket terbaru dari semua repository yang dikonfigurasi. Tidak menginstal apa pun. Selalu jalankan sebelum install/upgrade.
  • apt upgrade — Meng-upgrade semua paket yang memiliki versi lebih baru. Tidak akan menghapus paket lain.
  • apt full-upgrade — Seperti upgrade, tapi boleh menambah atau menghapus paket untuk menyelesaikan dependency. Lebih agresif.
  • apt autoremove — Menghapus paket yang tidak lagi dibutuhkan (dependency yatim).
  • apt clean — Menghapus file .deb yang tersimpan di cache (/var/cache/apt/archives).
Q
Bagaimana mencari dan melihat info paket?
SEARCH
apt search keyword apt show package apt-cache policy package apt-cache depends package

Penjelasan command:

  • apt search — Mencari paket berdasarkan nama atau deskripsi.
  • apt show — Menampilkan informasi detail paket (versi, dependensi, deskripsi, dll).
Q
Bagaimana install dan remove paket?
INSTALL
sudo apt install package sudo apt install package=version sudo apt remove package sudo apt purge package

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • apt remove — Menghapus paket, tetapi menyisakan file konfigurasi di /etc.
  • apt purge — Menghapus paket beserta seluruh file konfigurasinya.
Q
Bagaimana menambah repository pihak ketiga?
REPO
sudo nano /etc/apt/sources.list.d/custom.list # Format: deb http://example.com/debian bookworm main sudo apt update # ===== CONTOH OUTPUT ===== Get:1 http://deb.debian.org/debian bookworm InRelease [151 kB] Get:2 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB] Fetched 199 kB in 1s (185 kB/s) Reading package lists... Done Building dependency tree... Done

Penjelasan command:

  • apt update — Mengambil index paket terbaru dari semua repository yang dikonfigurasi. Tidak menginstal apa pun. Selalu jalankan sebelum install/upgrade.
Q
Bagaimana hold paket agar tidak ter-upgrade?
HOLD
sudo apt-mark hold package sudo apt-mark unhold package apt-mark showhold # ===== CONTOH OUTPUT ===== admin pts/0 2026-03-11 09:00 (192.168.1.50) admin pts/1 2026-03-11 10:15 (192.168.1.51)
Q
Bagaimana memperbaiki dependency broken?
FIX
sudo apt --fix-broken install sudo dpkg --configure -a sudo apt install -f

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
Q
Bagaimana melihat paket yang terinstall?
LIST
dpkg -l apt list --installed apt list --upgradable # ===== CONTOH OUTPUT ===== Listing... Done nginx/stable 1.22.1-9+deb12u1 amd64 [upgradable from: 1.22.1-9] openssl/stable 3.0.11-1~deb12u2 amd64 [upgradable from: 3.0.11-1~deb12u1]

Penjelasan command:

  • dpkg -l — Menampilkan daftar semua paket yang terinstal di sistem.
  • dpkg -L — Menampilkan semua file yang dimiliki oleh suatu paket.
Q
Bagaimana membersihkan cache APT?
CLEAN
sudo apt clean sudo apt autoclean du -sh /var/cache/apt

Penjelasan command:

  • apt clean — Menghapus file .deb yang tersimpan di cache (/var/cache/apt/archives).
  • du -sh — Menampilkan ukuran total suatu directory.
Q
Bagaimana downgrade paket?
DOWNGRADE
apt-cache policy package sudo apt install package=versi-lama sudo apt-mark hold package

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
Q
Bagaimana menggunakan aptitude?
APTITUDE
sudo apt install aptitude sudo aptitude update sudo aptitude safe-upgrade sudo aptitude install package

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
Q
Bagaimana cek paket orphan?
ORPHAN
sudo apt install deborphan deborphan sudo apt autoremove --purge

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • apt autoremove — Menghapus paket yang tidak lagi dibutuhkan (dependency yatim).
Q
Bagaimana pin prioritaskan repository?
PINNING
sudo nano /etc/apt/preferences.d/pin Package: * Pin: release a=stable Pin-Priority: 700

Penjelasan command:

  • nano — Editor teks sederhana di terminal, cocok untuk pemula.
Q
Bagaimana download paket tanpa install?
DOWNLOAD
apt download package sudo apt install --download-only package ls *.deb

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
Q
Bagaimana reinstall paket?
REINSTALL
sudo apt install --reinstall package

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
Q
Bagaimana melihat changelog paket?
CHANGELOG
apt changelog package zcat /usr/share/doc/package/changelog.Debian.gz | less
VOLUME 07 / 17

SERVICE (SYSTEMD)

FAQ seputar Service (systemd) di Debian Linux Server.
Q
Bagaimana start/stop/restart service?
CONTROL
sudo systemctl start service sudo systemctl stop service sudo systemctl restart service sudo systemctl reload service sudo systemctl status service # ===== CONTOH OUTPUT ===== ● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; preset: enabled) Active: active (running) since Wed 2026-03-11 09:14:22 WIB; 2h 15min ago Docs: man:nginx(8) Process: 1234 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 1235 (nginx) Tasks: 3 (limit: 2215) Memory: 6.2M CPU: 45ms CGroup: /system.slice/nginx.service ├─1235 "nginx: master process /usr/sbin/nginx -g daemon on; master_process on;" └─1236 "nginx: worker process"

Penjelasan command:

  • systemctl start — Menjalankan service saat ini (tidak mempengaruhi boot).
  • systemctl stop — Menghentikan service yang sedang berjalan.
  • systemctl restart — Stop lalu start ulang service. Gunakan setelah mengubah konfigurasi.
  • systemctl reload — Memuat ulang konfigurasi tanpa memutus koneksi (jika service mendukung).
  • systemctl status — Menampilkan status service (active/inactive/failed) + cuplikan log terakhir. Perintah pertama saat troubleshooting.
Q
Bagaimana enable service agar start saat boot?
ENABLE
sudo systemctl enable service sudo systemctl disable service sudo systemctl is-enabled service systemctl list-unit-files --type=service

Penjelasan command:

  • systemctl enable — Membuat service otomatis dijalankan setiap kali sistem boot.
  • systemctl disable — Membatalkan auto-start service saat boot.
Q
Bagaimana melihat service yang failed?
FAILED
systemctl --failed systemctl list-units --state=failed journalctl -p err -b

Penjelasan command:

  • journalctl — Melihat log yang dikelola systemd-journald. Ganti tail -f /var/log/... dengan ini.
Q
Bagaimana membuat custom systemd service?
CUSTOM UNIT
sudo nano /etc/systemd/system/myapp.service [Unit] Description=My App [Service] ExecStart=/usr/bin/myapp Restart=always [Install] WantedBy=multi-user.target sudo systemctl daemon-reload sudo systemctl enable --now myapp

Penjelasan command:

  • systemctl daemon-reload — Memuat ulang unit file systemd setelah Anda mengubah/membuat file .service.
  • systemctl enable — Membuat service otomatis dijalankan setiap kali sistem boot.
Q
Bagaimana melihat log service?
JOURNAL
journalctl -u service journalctl -u service -f journalctl -u service --since "1 hour ago" # ===== CONTOH OUTPUT ===== Mar 11 09:14:22 server systemd[1]: Starting A high performance web server... Mar 11 09:14:22 server systemd[1]: Started A high performance web server. Mar 11 10:22:15 server nginx[1235]: 192.168.1.50 - - [11/Mar/2026:10:22:15] "GET / HTTP/1.1" 200

Penjelasan command:

  • journalctl — Melihat log yang dikelola systemd-journald. Ganti tail -f /var/log/... dengan ini.
  • journalctl -u — Melihat log khusus satu service. Tambahkan -f untuk mengikuti log secara real-time.
Q
Apa itu systemd target?

Target adalah group of units (mirip runlevel). Contoh: multi-user.target, graphical.target, rescue.target.

TARGET
systemctl get-default systemctl set-default multi-user.target systemctl list-units --type=target
Q
Bagaimana membuat systemd timer?
TIMER
sudo nano /etc/systemd/system/backup.timer [Timer] OnCalendar=daily Persistent=true [Install] WantedBy=timers.target sudo systemctl enable --now backup.timer

Penjelasan command:

  • systemctl enable — Membuat service otomatis dijalankan setiap kali sistem boot.
Q
Bagaimana reload daemon setelah ubah unit?
RELOAD
sudo systemctl daemon-reload sudo systemctl restart service

Penjelasan command:

  • systemctl daemon-reload — Memuat ulang unit file systemd setelah Anda mengubah/membuat file .service.
  • systemctl restart — Stop lalu start ulang service. Gunakan setelah mengubah konfigurasi.
Q
Bagaimana mask service?
MASK
sudo systemctl mask service sudo systemctl unmask service
Q
Bagaimana melihat dependency service?
DEPS
systemctl list-dependencies service systemctl show service -p Requires,Wants
Q
Bagaimana batasi resource service?
RESOURCE
[Service] CPUQuota=50% MemoryMax=512M MemoryHigh=400M
Q
Bagaimana edit unit file dengan mudah?
EDIT
sudo systemctl edit service sudo systemctl edit --full service sudo systemctl cat service
Q
Bagaimana cek waktu boot?
BOOT ANALYZE
systemd-analyze systemd-analyze blame systemd-analyze critical-chain
Q
Bagaimana kirim signal ke service?
SIGNAL
sudo systemctl kill -s SIGTERM service sudo systemctl kill -s SIGHUP service
Q
Bagaimana reset failed state?
RESET
sudo systemctl reset-failed sudo systemctl reset-failed service
VOLUME 08 / 17

NETWORK

FAQ seputar Network di Debian Linux Server.
Q
Bagaimana melihat konfigurasi network?
IP
ip addr show ip link show ip route show nmcli device status # ===== CONTOH OUTPUT ===== 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 inet 127.0.0.1/8 scope host lo 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 inet 192.168.1.100/24 brd 192.168.1.255 scope global eth0 valid_lft forever preferred_lft forever

Penjelasan command:

  • ip addr — Menampilkan alamat IP dan status network interface.
  • ip route — Menampilkan tabel routing kernel.
Q
Bagaimana set static IP?
STATIC
sudo nano /etc/network/interfaces auto eth0 iface eth0 inet static address 192.168.1.100 netmask 255.255.255.0 gateway 192.168.1.1 dns-nameservers 8.8.8.8 sudo systemctl restart networking

Penjelasan command:

  • systemctl restart — Stop lalu start ulang service. Gunakan setelah mengubah konfigurasi.
Q
Bagaimana set DNS resolver?
DNS
sudo nano /etc/resolv.conf nameserver 8.8.8.8 nameserver 1.1.1.1

Penjelasan command:

  • nano — Editor teks sederhana di terminal, cocok untuk pemula.
Q
Bagaimana cek konektivitas?
TEST
ping -c 4 8.8.8.8 ping -c 4 google.com traceroute google.com curl -I https://google.com # ===== CONTOH OUTPUT ===== PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. 64 bytes from 8.8.8.8: icmp_seq=1 ttl=117 time=12.4 ms 64 bytes from 8.8.8.8: icmp_seq=2 ttl=117 time=11.8 ms 64 bytes from 8.8.8.8: icmp_seq=3 ttl=117 time=12.1 ms 64 bytes from 8.8.8.8: icmp_seq=4 ttl=117 time=11.9 ms --- 8.8.8.8 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3005ms rtt min/avg/max/mdev = 11.8/12.0/12.4/0.2 ms

Penjelasan command:

  • ping — Menguji konektivitas jaringan ke host tertentu.
  • traceroute — Menampilkan jalur (hop) yang dilalui paket ke tujuan.
  • curl — Transfer data dari/ke server (sering dipakai untuk test HTTP).
Q
Bagaimana melihat port yang terbuka?
PORT
ss -tulpn ss -tulpn | grep :80 netstat -tulpn nmap localhost # ===== CONTOH OUTPUT ===== Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port Process tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:* users:(("sshd",pid=789,fd=3)) tcp LISTEN 0 511 0.0.0.0:80 0.0.0.0:* users:(("nginx",pid=1235,fd=6)) tcp LISTEN 0 511 0.0.0.0:443 0.0.0.0:* users:(("nginx",pid=1235,fd=7))

Penjelasan command:

  • ss -tulpn — Menampilkan socket yang listening (TCP/UDP) beserta proses yang menggunakannya. Pengganti netstat modern.
  • grep — Mencari teks di dalam file. -i = case-insensitive, -r = recursive, -n = tampilkan nomor baris.
Q
Bagaimana setup UFW firewall?
UFW
sudo apt install ufw sudo ufw default deny incoming sudo ufw default allow outgoing sudo ufw allow ssh sudo ufw allow 80,443/tcp sudo ufw enable sudo ufw status verbose # ===== CONTOH OUTPUT ===== Status: active To Action From -- ------ ---- 22/tcp ALLOW Anywhere 80/tcp ALLOW Anywhere 443/tcp ALLOW Anywhere

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • ufw allow — Mengizinkan traffic masuk pada port/service yang disebutkan.
  • ufw enable — Mengaktifkan firewall. Pastikan port SSH sudah di-allow sebelum menjalankan ini agar tidak terkunci.
  • ufw status — Menampilkan status firewall dan daftar rules yang aktif.
Q
Bagaimana melihat routing table?
ROUTE
ip route route -n ip route get 8.8.8.8 # ===== CONTOH OUTPUT ===== default via 192.168.1.1 dev eth0 proto static 192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.100

Penjelasan command:

  • ip route — Menampilkan tabel routing kernel.
Q
Bagaimana menambah route static?
ADD ROUTE
sudo ip route add 10.0.0.0/24 via 192.168.1.1 sudo ip route del 10.0.0.0/24 # ===== CONTOH OUTPUT ===== default via 192.168.1.1 dev eth0 proto static 192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.100

Penjelasan command:

  • ip route — Menampilkan tabel routing kernel.
Q
Bagaimana setup network bonding?

Bonding menggabungkan beberapa NIC untuk redundancy atau throughput lebih tinggi. Konfigurasi via /etc/network/interfaces atau NetworkManager.

Q
Bagaimana troubleshoot DNS?
DNS TROUBLE
cat /etc/resolv.conf nslookup google.com dig google.com host google.com

Penjelasan command:

  • dig — Tool query DNS yang powerful.
  • nslookup — Tool query DNS klasik.
Q
Bagaimana capture packet dengan tcpdump?
TCPDUMP
sudo tcpdump -i eth0 sudo tcpdump -i eth0 port 80 sudo tcpdump -i eth0 -w capture.pcap

Penjelasan command:

  • tcpdump — Menangkap dan menganalisis paket jaringan.
Q
Bagaimana setup hostname resolution lokal?
HOSTS
sudo nano /etc/hosts 192.168.1.100 server.local server

Penjelasan command:

  • nano — Editor teks sederhana di terminal, cocok untuk pemula.
Q
Bagaimana cek bandwidth dan traffic?
TRAFFIC
sudo apt install iftop nethogs nload iftop -i eth0 nethogs nload eth0

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
Q
Bagaimana restart network service?
RESTART NET
sudo systemctl restart networking sudo systemctl restart NetworkManager sudo ifdown eth0 && sudo ifup eth0

Penjelasan command:

  • systemctl restart — Stop lalu start ulang service. Gunakan setelah mengubah konfigurasi.
Q
Bagaimana setup bridge network?
BRIDGE
sudo apt install bridge-utils sudo brctl addbr br0 sudo brctl addif br0 eth0 sudo ip link set br0 up

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
VOLUME 09 / 17

STORAGE

FAQ seputar Storage di Debian Linux Server.
Q
Bagaimana melihat disk dan partisi?
DISK
lsblk -f fdisk -l parted -l df -hT blkid # ===== CONTOH OUTPUT ===== Filesystem Size Used Avail Use% Mounted on /dev/sda1 20G 6.2G 13G 33% / /dev/sda2 100G 45G 50G 48% /var tmpfs 1.9G 0 1.9G 0% /dev/shm

Penjelasan command:

  • df -h — Menampilkan penggunaan disk dalam format human-readable (GB/MB).
Q
Bagaimana membuat partisi baru?
FDISK
sudo fdisk /dev/sdb n (new), p (primary), w (write) sudo partprobe /dev/sdb

Penjelasan command:

  • fdisk — Tool partisi disk klasik.
Q
Bagaimana format filesystem?
MKFS
sudo mkfs.ext4 /dev/sdb1 sudo mkfs.xfs /dev/sdb1 sudo mkfs.btrfs /dev/sdb1

Penjelasan command:

  • mkfs.ext4 — Membuat filesystem ext4 pada partisi/device.
Q
Bagaimana mount dan umount?
MOUNT
sudo mount /dev/sdb1 /mnt/data sudo umount /mnt/data mount | column -t findmnt

Penjelasan command:

  • find — Mencari file berdasarkan nama, ukuran, waktu modifikasi, permission, dll.
Q
Bagaimana set auto-mount di fstab?
FSTAB
sudo nano /etc/fstab /dev/sdb1 /mnt/data ext4 defaults 0 2 sudo mount -a sudo findmnt --verify

Penjelasan command:

  • find — Mencari file berdasarkan nama, ukuran, waktu modifikasi, permission, dll.
Q
Bagaimana extend LVM volume?
LV EXTEND
sudo lvextend -L +20G /dev/vg0/data sudo resize2fs /dev/vg0/data # Atau XFS: sudo xfs_growfs /mountpoint

Penjelasan command:

  • mount — Me-mount filesystem ke direktori tertentu.
Q
Bagaimana cek kesehatan disk (SMART)?
SMART
sudo apt install smartmontools sudo smartctl -a /dev/sda sudo smartctl -t short /dev/sda # ===== CONTOH OUTPUT ===== === START OF INFORMATION SECTION === Model Family: Samsung based SSDs Device Model: Samsung SSD 870 Serial Number: S1234ABC === START OF READ SMART DATA SECTION === SMART overall-health self-assessment test result: PASSED

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • smartctl — Membaca data SMART dari hard disk/SSD untuk deteksi dini kerusakan.
Q
Bagaimana membuat swap file?
SWAP
sudo fallocate -l 2G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

Penjelasan command:

  • chmod — Mengubah permission file/directory (read/write/execute untuk owner/group/other).
Q
Bagaimana monitoring I/O disk?
IO
sudo apt install iotop sysstat iotop iostat -xz 1

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
Q
Bagaimana encrypt disk dengan LUKS?
LUKS
sudo cryptsetup luksFormat /dev/sdb1 sudo cryptsetup open /dev/sdb1 securedata sudo mkfs.ext4 /dev/mapper/securedata

Penjelasan command:

  • mkfs.ext4 — Membuat filesystem ext4 pada partisi/device.
Q
Bagaimana cek inode usage?
INODE
df -i find / -xdev -printf '%h\n' | sort | uniq -c | sort -nr | head

Penjelasan command:

  • find — Mencari file berdasarkan nama, ukuran, waktu modifikasi, permission, dll.
Q
Bagaimana resize partisi non-LVM?

Gunakan gparted (GUI) atau parted + resize2fs. Selalu backup dulu sebelum resize.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana setup software RAID (mdadm)?
RAID
sudo apt install mdadm sudo mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1 cat /proc/mdstat

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
Q
Bagaimana membersihkan disk space?
CLEAN
sudo apt autoremove --purge sudo journalctl --vacuum-time=7d sudo find /var/log -name "*.gz" -delete du -xh / | sort -hr | head -20

Penjelasan command:

  • apt autoremove — Menghapus paket yang tidak lagi dibutuhkan (dependency yatim).
  • journalctl — Melihat log yang dikelola systemd-journald. Ganti tail -f /var/log/... dengan ini.
  • find — Mencari file berdasarkan nama, ukuran, waktu modifikasi, permission, dll.
Q
Bagaimana bind mount?
BIND
sudo mount --bind /source /target # Di fstab: /source /target none bind 0 0

Penjelasan command:

  • mount — Me-mount filesystem ke direktori tertentu.
VOLUME 10 / 17

WEB SERVER

FAQ seputar Web Server di Debian Linux Server.
Q
Bagaimana install Apache?
APACHE
sudo apt install apache2 sudo systemctl enable --now apache2 sudo systemctl status apache2 # ===== CONTOH OUTPUT ===== ● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; preset: enabled) Active: active (running) since Wed 2026-03-11 09:14:22 WIB; 2h 15min ago Docs: man:nginx(8) Process: 1234 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 1235 (nginx) Tasks: 3 (limit: 2215) Memory: 6.2M CPU: 45ms CGroup: /system.slice/nginx.service ├─1235 "nginx: master process /usr/sbin/nginx -g daemon on; master_process on;" └─1236 "nginx: worker process"

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • systemctl enable — Membuat service otomatis dijalankan setiap kali sistem boot.
  • systemctl status — Menampilkan status service (active/inactive/failed) + cuplikan log terakhir. Perintah pertama saat troubleshooting.
Q
Bagaimana install Nginx?
NGINX
sudo apt install nginx sudo systemctl enable --now nginx sudo systemctl status nginx # ===== CONTOH OUTPUT ===== ● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; preset: enabled) Active: active (running) since Wed 2026-03-11 09:14:22 WIB; 2h 15min ago Docs: man:nginx(8) Process: 1234 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 1235 (nginx) Tasks: 3 (limit: 2215) Memory: 6.2M CPU: 45ms CGroup: /system.slice/nginx.service ├─1235 "nginx: master process /usr/sbin/nginx -g daemon on; master_process on;" └─1236 "nginx: worker process"

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • systemctl enable — Membuat service otomatis dijalankan setiap kali sistem boot.
  • systemctl status — Menampilkan status service (active/inactive/failed) + cuplikan log terakhir. Perintah pertama saat troubleshooting.
Q
Bagaimana setup virtual host Apache?
VHOST APACHE
sudo nano /etc/apache2/sites-available/example.com.conf <VirtualHost *:80> ServerName example.com DocumentRoot /var/www/example.com </VirtualHost> sudo a2ensite example.com.conf sudo systemctl reload apache2

Penjelasan command:

  • systemctl reload — Memuat ulang konfigurasi tanpa memutus koneksi (jika service mendukung).
Q
Bagaimana setup virtual host Nginx?
VHOST NGINX
sudo nano /etc/nginx/sites-available/example.com server { listen 80; server_name example.com; root /var/www/example.com; } sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/ sudo nginx -t && sudo systemctl reload nginx # ===== CONTOH OUTPUT ===== nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful

Penjelasan command:

  • systemctl reload — Memuat ulang konfigurasi tanpa memutus koneksi (jika service mendukung).
  • nginx -t — Menguji konfigurasi Nginx. Selalu jalankan sebelum reload/restart.
Q
Bagaimana install LAMP stack?
LAMP
sudo apt install apache2 mariadb-server php libapache2-mod-php php-mysql sudo mysql_secure_installation sudo systemctl restart apache2

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • systemctl restart — Stop lalu start ulang service. Gunakan setelah mengubah konfigurasi.
Q
Bagaimana install LEMP stack?
LEMP
sudo apt install nginx mariadb-server php-fpm php-mysql sudo mysql_secure_installation sudo systemctl restart nginx php*-fpm

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • systemctl restart — Stop lalu start ulang service. Gunakan setelah mengubah konfigurasi.
Q
Bagaimana install SSL Let's Encrypt?
SSL
sudo apt install certbot python3-certbot-apache sudo certbot --apache -d example.com # Nginx: sudo apt install python3-certbot-nginx sudo certbot --nginx -d example.com

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • certbot — Client resmi Let's Encrypt untuk mendapatkan dan memperbarui sertifikat SSL gratis.
Q
Bagaimana auto-renew SSL?
RENEW
sudo certbot renew --dry-run sudo crontab -e 0 3 * * * certbot renew --quiet

Penjelasan command:

  • certbot — Client resmi Let's Encrypt untuk mendapatkan dan memperbarui sertifikat SSL gratis.
Q
Bagaimana enable modul Apache?
A2ENMOD
sudo a2enmod rewrite ssl headers sudo a2dismod status sudo systemctl restart apache2

Penjelasan command:

  • systemctl restart — Stop lalu start ulang service. Gunakan setelah mengubah konfigurasi.
Q
Bagaimana set PHP configuration?
PHP
php -v php -m sudo nano /etc/php/*/apache2/php.ini upload_max_filesize = 64M post_max_size = 64M # ===== CONTOH OUTPUT ===== PHP 8.2.7 (cli) (built: Jun 9 2023 12:00:00) (NTS) Copyright (c) The PHP Group Zend Engine v4.2.7, Copyright (c) Zend Technologies

Penjelasan command:

  • nano — Editor teks sederhana di terminal, cocok untuk pemula.
Q
Bagaimana test konfigurasi web server?
TEST
sudo nginx -t sudo apache2ctl configtest sudo apache2ctl -S # ===== CONTOH OUTPUT ===== nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful

Penjelasan command:

  • nginx -t — Menguji konfigurasi Nginx. Selalu jalankan sebelum reload/restart.
  • apache2ctl configtest — Menguji konfigurasi Apache.
Q
Bagaimana melihat log web server?
WEB LOG
sudo tail -f /var/log/apache2/error.log sudo tail -f /var/log/nginx/error.log sudo tail -f /var/log/nginx/access.log
Q
Bagaimana set permission web root yang aman?
PERM WEB
sudo chown -R www-data:www-data /var/www sudo find /var/www -type d -exec chmod 755 {} \; sudo find /var/www -type f -exec chmod 644 {} \;

Penjelasan command:

  • chown — Mengubah kepemilikan (owner dan group) file/directory.
  • chmod — Mengubah permission file/directory (read/write/execute untuk owner/group/other).
  • find — Mencari file berdasarkan nama, ukuran, waktu modifikasi, permission, dll.
Q
Bagaimana force HTTPS redirect?

Nginx: return 301 https://$host$request_uri;

Apache: RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana enable HTTP/2?

Pastikan SSL aktif. Nginx: listen 443 ssl http2;. Apache: enable modul http2.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

VOLUME 11 / 17

DATABASE SERVER

FAQ seputar Database Server di Debian Linux Server.
Q
Bagaimana install MariaDB?
MARIADB
sudo apt install mariadb-server mariadb-client sudo systemctl enable --now mariadb sudo mysql_secure_installation

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • systemctl enable — Membuat service otomatis dijalankan setiap kali sistem boot.
Q
Bagaimana install PostgreSQL?
POSTGRES
sudo apt install postgresql postgresql-contrib sudo systemctl enable --now postgresql sudo -u postgres psql

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • systemctl enable — Membuat service otomatis dijalankan setiap kali sistem boot.
Q
Bagaimana membuat database & user MariaDB?
MYSQL USER
sudo mysql CREATE DATABASE mydb; CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'localhost'; FLUSH PRIVILEGES; EXIT;
Q
Bagaimana membuat database & user PostgreSQL?
PG USER
sudo -u postgres psql CREATE DATABASE mydb; CREATE USER myuser WITH PASSWORD 'password'; GRANT ALL PRIVILEGES ON DATABASE mydb TO myuser; \q
Q
Bagaimana backup database?
DB BACKUP
mysqldump -u root -p mydb > mydb.sql pg_dump -U postgres mydb > mydb.sql mysqldump -u root -p --all-databases > all.sql

Penjelasan command:

  • mysqldump — Membuat dump (backup) database MySQL/MariaDB ke file SQL.
  • pg_dump — Membuat dump database PostgreSQL.
Q
Bagaimana restore database?
DB RESTORE
mysql -u root -p mydb < mydb.sql psql -U postgres mydb < mydb.sql
Q
Bagaimana remote access MariaDB?
REMOTE
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf # bind-address = 0.0.0.0 CREATE USER 'user'@'%' IDENTIFIED BY 'pass'; GRANT ALL ON *.* TO 'user'@'%';

Penjelasan command:

  • nano — Editor teks sederhana di terminal, cocok untuk pemula.
Q
Bagaimana cek status database?
STATUS
sudo systemctl status mariadb mysqladmin -u root -p status mysql -e "SHOW PROCESSLIST;" # ===== CONTOH OUTPUT ===== ● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; preset: enabled) Active: active (running) since Wed 2026-03-11 09:14:22 WIB; 2h 15min ago Docs: man:nginx(8) Process: 1234 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 1235 (nginx) Tasks: 3 (limit: 2215) Memory: 6.2M CPU: 45ms CGroup: /system.slice/nginx.service ├─1235 "nginx: master process /usr/sbin/nginx -g daemon on; master_process on;" └─1236 "nginx: worker process"

Penjelasan command:

  • systemctl status — Menampilkan status service (active/inactive/failed) + cuplikan log terakhir. Perintah pertama saat troubleshooting.
Q
Bagaimana tuning dasar MariaDB?

Edit my.cnf: innodb_buffer_pool_size, max_connections. Monitor dengan mysqltuner.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana install phpMyAdmin?
PHPMYADMIN
sudo apt install phpmyadmin # Pilih apache2, ikuti prompt konfigurasi

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
Q
Bagaimana reset password root MariaDB?
RESET ROOT
sudo systemctl stop mariadb sudo mysqld_safe --skip-grant-tables & mysql -u root FLUSH PRIVILEGES; ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpass';

Penjelasan command:

  • systemctl stop — Menghentikan service yang sedang berjalan.
Q
Bagaimana melihat ukuran database?
SIZE
SELECT table_schema AS db, ROUND(SUM(data_length+index_length)/1024/1024,2) AS MB FROM information_schema.tables GROUP BY table_schema;
Q
Bagaimana enable slow query log?

Di my.cnf: slow_query_log = 1, long_query_time = 2, slow_query_log_file = /var/log/mysql/slow.log

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana koneksi dari aplikasi?

Gunakan host=localhost (socket) atau 127.0.0.1 (TCP). Pastikan user punya privilege yang sesuai.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana monitoring database?

Tools: mytop, pg_stat_activity, Prometheus + mysqld_exporter / postgres_exporter, Grafana.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

VOLUME 12 / 17

SSH SERVER

FAQ seputar SSH Server di Debian Linux Server.
Q
Bagaimana install SSH server?
SSH INSTALL
sudo apt install openssh-server sudo systemctl enable --now ssh sudo systemctl status ssh # ===== CONTOH OUTPUT ===== ● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; preset: enabled) Active: active (running) since Wed 2026-03-11 09:14:22 WIB; 2h 15min ago Docs: man:nginx(8) Process: 1234 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 1235 (nginx) Tasks: 3 (limit: 2215) Memory: 6.2M CPU: 45ms CGroup: /system.slice/nginx.service ├─1235 "nginx: master process /usr/sbin/nginx -g daemon on; master_process on;" └─1236 "nginx: worker process"

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • systemctl enable — Membuat service otomatis dijalankan setiap kali sistem boot.
  • systemctl status — Menampilkan status service (active/inactive/failed) + cuplikan log terakhir. Perintah pertama saat troubleshooting.
Q
Bagaimana generate SSH key?
KEYGEN
ssh-keygen -t ed25519 -C "email@example.com" ssh-keygen -t rsa -b 4096 ls ~/.ssh/

Penjelasan command:

  • ssh-keygen — Membuat pasangan kunci SSH (private + public). Gunakan ed25519 untuk keamanan modern.
Q
Bagaimana copy public key ke server?
COPY KEY
ssh-copy-id user@server cat ~/.ssh/id_ed25519.pub | ssh user@server "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys" # ===== CONTOH OUTPUT ===== uid=1000(admin) gid=1000(admin) groups=1000(admin),27(sudo),100(users)

Penjelasan command:

  • ssh-copy-id — Menyalin public key ke server remote agar bisa login tanpa password.
Q
Bagaimana hardening SSH?
HARDENING
sudo nano /etc/ssh/sshd_config Port 2222 PermitRootLogin no PasswordAuthentication no PubkeyAuthentication yes MaxAuthTries 3 AllowUsers user1 sudo systemctl restart ssh

Penjelasan command:

  • systemctl restart — Stop lalu start ulang service. Gunakan setelah mengubah konfigurasi.
Q
Bagaimana ganti port SSH?

Ubah Port di sshd_config, restart ssh, dan izinkan port baru di firewall (ufw allow 2222/tcp).

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana disable password authentication?

Set PasswordAuthentication no di sshd_config setelah memastikan key authentication sudah bekerja.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana SSH tunneling?
TUNNEL
# Local forward ssh -L 8080:localhost:80 user@server # Remote forward ssh -R 8080:localhost:80 user@server # Dynamic SOCKS ssh -D 1080 user@server
Q
Bagaimana menggunakan SSH config?
CONFIG
nano ~/.ssh/config Host myserver HostName 192.168.1.100 User admin Port 2222 IdentityFile ~/.ssh/id_ed25519

Penjelasan command:

  • nano — Editor teks sederhana di terminal, cocok untuk pemula.
Q
Bagaimana batasi akses dengan Fail2ban?
FAIL2BAN
sudo apt install fail2ban sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local sudo systemctl enable --now fail2ban sudo fail2ban-client status sshd # ===== CONTOH OUTPUT ===== Status for the jail: sshd |- Filter | |- Currently failed: 2 | |- Total failed: 47 | `- File list: /var/log/auth.log `- Actions |- Currently banned: 1 |- Total banned: 5 `- Banned IP list: 203.0.113.45

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • systemctl enable — Membuat service otomatis dijalankan setiap kali sistem boot.
  • fail2ban-client — Mengelola Fail2ban (status jail, unban IP, dll).
Q
Bagaimana cek log SSH?
SSH LOG
sudo journalctl -u ssh sudo tail -f /var/log/auth.log sudo grep "Failed password" /var/log/auth.log # ===== CONTOH OUTPUT ===== Mar 11 09:14:22 server systemd[1]: Starting A high performance web server... Mar 11 09:14:22 server systemd[1]: Started A high performance web server. Mar 11 10:22:15 server nginx[1235]: 192.168.1.50 - - [11/Mar/2026:10:22:15] "GET / HTTP/1.1" 200

Penjelasan command:

  • journalctl — Melihat log yang dikelola systemd-journald. Ganti tail -f /var/log/... dengan ini.
  • journalctl -u — Melihat log khusus satu service. Tambahkan -f untuk mengikuti log secara real-time.
  • grep — Mencari teks di dalam file. -i = case-insensitive, -r = recursive, -n = tampilkan nomor baris.
Q
Bagaimana multiple key dan agent?
AGENT
eval $(ssh-agent) ssh-add ~/.ssh/id_ed25519 ssh-add -l
Q
Bagaimana scp dan sftp?
SCP SFTP
scp file user@host:/path sftp user@host rsync -avz -e ssh source/ user@host:/dest/

Penjelasan command:

  • rsync -avz — Sinkronisasi file/directory. a=archive mode, v=verbose, z=kompresi saat transfer.
Q
Bagaimana disable root login via SSH?

Set PermitRootLogin no di sshd_config. Gunakan user biasa + sudo.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana set idle timeout SSH?
TIMEOUT
ClientAliveInterval 300 ClientAliveCountMax 2 # Di sshd_config
Q
Bagaimana troubleshoot koneksi SSH?
TROUBLE
ssh -vvv user@host sudo systemctl status ssh sudo ss -tlnp | grep ssh sudo ufw status # ===== CONTOH OUTPUT ===== ● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; preset: enabled) Active: active (running) since Wed 2026-03-11 09:14:22 WIB; 2h 15min ago Docs: man:nginx(8) Process: 1234 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 1235 (nginx) Tasks: 3 (limit: 2215) Memory: 6.2M CPU: 45ms CGroup: /system.slice/nginx.service ├─1235 "nginx: master process /usr/sbin/nginx -g daemon on; master_process on;" └─1236 "nginx: worker process"

Penjelasan command:

  • systemctl status — Menampilkan status service (active/inactive/failed) + cuplikan log terakhir. Perintah pertama saat troubleshooting.
  • grep — Mencari teks di dalam file. -i = case-insensitive, -r = recursive, -n = tampilkan nomor baris.
  • ufw status — Menampilkan status firewall dan daftar rules yang aktif.
VOLUME 13 / 17

MAIL SERVER

FAQ seputar Mail Server di Debian Linux Server.
Q
Bagaimana install Postfix?
POSTFIX
sudo apt install postfix # Pilih Internet Site sudo systemctl enable --now postfix

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • systemctl enable — Membuat service otomatis dijalankan setiap kali sistem boot.
Q
Bagaimana install Dovecot?
DOVECOT
sudo apt install dovecot-core dovecot-imapd dovecot-pop3d sudo systemctl enable --now dovecot

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • systemctl enable — Membuat service otomatis dijalankan setiap kali sistem boot.
Q
Bagaimana konfigurasi dasar Postfix?
MAIN.CF
sudo nano /etc/postfix/main.cf myhostname = mail.example.com mydestination = $myhostname, localhost inet_interfaces = all

Penjelasan command:

  • nano — Editor teks sederhana di terminal, cocok untuk pemula.
Q
Bagaimana test kirim email dari CLI?
SENDMAIL
echo "Test body" | mail -s "Test subject" user@example.com sudo apt install mailutils

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
Q
Bagaimana melihat antrian mail?
QUEUE
mailq postqueue -p sudo postsuper -d ALL
Q
Bagaimana setup mailbox user?

Buat system user, pastikan home directory ada, dan Dovecot dikonfigurasi untuk Maildir atau mbox.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana enable SASL authentication?

Integrasikan Postfix dengan Dovecot SASL agar user bisa authenticate saat kirim email outbound.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana set reverse DNS (PTR)?

Hubungi provider VPS untuk set PTR record IP server ke hostname mail. Sangat penting agar tidak dianggap spam.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana cek reputasi IP mail server?

Gunakan mxtoolbox.com, multiRBL, atau senderbase.org untuk cek blacklist.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana install OpenDKIM?
DKIM
sudo apt install opendkim opendkim-tools # Generate key & konfigurasi di /etc/opendkim.conf

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
Q
Bagaimana setup SPF record?

Tambahkan TXT record di DNS: v=spf1 mx a ip4:YOUR.IP -all

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana setup DMARC?

TXT record: v=DMARC1; p=quarantine; rua=mailto:dmarc@example.com

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana log mail server?
MAIL LOG
sudo tail -f /var/log/mail.log sudo journalctl -u postfix -f sudo journalctl -u dovecot -f # ===== CONTOH OUTPUT ===== Mar 11 09:14:22 server systemd[1]: Starting A high performance web server... Mar 11 09:14:22 server systemd[1]: Started A high performance web server. Mar 11 10:22:15 server nginx[1235]: 192.168.1.50 - - [11/Mar/2026:10:22:15] "GET / HTTP/1.1" 200

Penjelasan command:

  • journalctl — Melihat log yang dikelola systemd-journald. Ganti tail -f /var/log/... dengan ini.
  • journalctl -u — Melihat log khusus satu service. Tambahkan -f untuk mengikuti log secara real-time.
Q
Bagaimana batasi relay Postfix?

Set mynetworks dan smtpd_recipient_restrictions agar tidak menjadi open relay.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana test konfigurasi mail?
TEST
sudo postfix check sudo doveconf -n telnet localhost 25
VOLUME 14 / 17

FILE SERVER

FAQ seputar File Server di Debian Linux Server.
Q
Bagaimana install Samba?
SAMBA
sudo apt install samba samba-common-bin sudo systemctl enable --now smbd nmbd

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • systemctl enable — Membuat service otomatis dijalankan setiap kali sistem boot.
Q
Bagaimana konfigurasi share Samba?
SMB.CONF
sudo nano /etc/samba/smb.conf [share] path = /srv/samba/share browseable = yes read only = no valid users = username sudo smbpasswd -a username sudo systemctl restart smbd # ===== CONTOH OUTPUT ===== uid=1000(admin) gid=1000(admin) groups=1000(admin),27(sudo),100(users)

Penjelasan command:

  • systemctl restart — Stop lalu start ulang service. Gunakan setelah mengubah konfigurasi.
Q
Bagaimana install NFS server?
NFS
sudo apt install nfs-kernel-server sudo nano /etc/exports /srv/nfs 192.168.1.0/24(rw,sync,no_subtree_check) sudo exportfs -a sudo systemctl enable --now nfs-kernel-server

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • systemctl enable — Membuat service otomatis dijalankan setiap kali sistem boot.
Q
Bagaimana mount Samba dari client Linux?
MOUNT CIFS
sudo apt install cifs-utils sudo mount -t cifs //server/share /mnt -o username=user

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
Q
Bagaimana mount NFS dari client?
MOUNT NFS
sudo mount -t nfs server:/srv/nfs /mnt/nfs # fstab: server:/srv/nfs /mnt/nfs nfs defaults 0 0

Penjelasan command:

  • mount — Me-mount filesystem ke direktori tertentu.
Q
Bagaimana set permission share yang aman?

Gunakan valid users, jangan guest ok = yes kecuali diperlukan. Set permission directory dengan chown/chmod yang tepat.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana melihat status Samba?
SMB STATUS
sudo smbstatus sudo systemctl status smbd testparm # ===== CONTOH OUTPUT ===== ● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; preset: enabled) Active: active (running) since Wed 2026-03-11 09:14:22 WIB; 2h 15min ago Docs: man:nginx(8) Process: 1234 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 1235 (nginx) Tasks: 3 (limit: 2215) Memory: 6.2M CPU: 45ms CGroup: /system.slice/nginx.service ├─1235 "nginx: master process /usr/sbin/nginx -g daemon on; master_process on;" └─1236 "nginx: worker process"

Penjelasan command:

  • systemctl status — Menampilkan status service (active/inactive/failed) + cuplikan log terakhir. Perintah pertama saat troubleshooting.
Q
Bagaimana backup konfigurasi Samba/NFS?
BACKUP CFG
sudo cp /etc/samba/smb.conf /backup/ sudo cp /etc/exports /backup/
Q
Bagaimana troubleshooting Samba?
SMB TROUBLE
sudo tail -f /var/log/samba/log.smbd testparm -s sudo smbclient -L localhost -U%

Penjelasan command:

  • testparm — Menguji konfigurasi Samba.
Q
Bagaimana set quota pada share?

Gunakan project quota (XFS) atau user quota + tools Samba dengan vfs objects.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana akses Samba dari Windows?

Di File Explorer ketik \\IP-SERVER\sharename lalu masukkan credential.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana akses NFS dari Windows?

Windows 10/11 Pro mendukung NFS client (enable via Windows Features).

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana set AppArmor untuk file server?

Debian default AppArmor. Pastikan profile Samba/NFS mengizinkan path yang digunakan.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana monitoring koneksi file server?
MONITOR
sudo smbstatus -b ss -tn | grep :445 ss -tn | grep :2049

Penjelasan command:

  • grep — Mencari teks di dalam file. -i = case-insensitive, -r = recursive, -n = tampilkan nomor baris.
Q
Bagaimana membuat share read-only?

Di smb.conf set read only = yes. Di exports set (ro,sync).

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

VOLUME 15 / 17

DNS SERVER

FAQ seputar DNS Server di Debian Linux Server.
Q
Bagaimana install BIND9?
BIND9
sudo apt install bind9 bind9utils bind9-doc sudo systemctl enable --now bind9

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • systemctl enable — Membuat service otomatis dijalankan setiap kali sistem boot.
Q
Bagaimana konfigurasi forwarder?
FORWARDER
sudo nano /etc/bind/named.conf.options forwarders { 8.8.8.8; 1.1.1.1; };

Penjelasan command:

  • nano — Editor teks sederhana di terminal, cocok untuk pemula.
Q
Bagaimana membuat zone file?
ZONE
sudo nano /etc/bind/named.conf.local zone "example.com" { type master; file "/etc/bind/db.example.com"; };

Penjelasan command:

  • nano — Editor teks sederhana di terminal, cocok untuk pemula.
Q
Bagaimana isi zone file dasar?
DB FILE
$TTL 86400 @ IN SOA ns1.example.com. admin.example.com. ( 2024010101 ; serial 3600 ; refresh 1800 ; retry 604800 ; expire 86400 ) @ IN NS ns1.example.com. @ IN A 192.168.1.10 www IN A 192.168.1.10
Q
Bagaimana setup reverse DNS zone?

Buat zone 1.168.192.in-addr.arpa dan PTR record yang mengarah ke hostname.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana reload BIND9?
RELOAD
sudo named-checkconf sudo named-checkzone example.com /etc/bind/db.example.com sudo systemctl reload bind9

Penjelasan command:

  • named-checkconf — Menguji konfigurasi BIND9 (syntax).
  • named-checkzone — Menguji zone file DNS (syntax + logic).
  • systemctl reload — Memuat ulang konfigurasi tanpa memutus koneksi (jika service mendukung).
Q
Bagaimana test DNS resolution?
DIG
dig @localhost example.com dig @localhost www.example.com nslookup example.com localhost host example.com # ===== CONTOH OUTPUT ===== ; <<>> DiG 9.18.24 <<>> @localhost example.com ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 ;; ANSWER SECTION: example.com. 86400 IN A 192.168.1.10

Penjelasan command:

  • dig — Tool query DNS yang powerful.
  • nslookup — Tool query DNS klasik.
Q
Bagaimana set DNS server di client?
CLIENT DNS
sudo nano /etc/resolv.conf nameserver 192.168.1.10

Penjelasan command:

  • nano — Editor teks sederhana di terminal, cocok untuk pemula.
Q
Bagaimana view query log BIND9?
QUERY LOG
sudo nano /etc/bind/named.conf.options logging { ... }; sudo tail -f /var/log/named/query.log

Penjelasan command:

  • nano — Editor teks sederhana di terminal, cocok untuk pemula.
Q
Bagaimana setup secondary (slave) DNS?

Di master izinkan transfer, di slave set type slave dan masters { IP-master; };

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana batasi recursive query?

Set allow-recursion { localnets; }; agar tidak terbuka untuk publik.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana troubleshooting DNS?
TROUBLE DNS
sudo systemctl status bind9 sudo journalctl -u bind9 sudo named-checkconf -z dig +trace example.com # ===== CONTOH OUTPUT ===== ● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; preset: enabled) Active: active (running) since Wed 2026-03-11 09:14:22 WIB; 2h 15min ago Docs: man:nginx(8) Process: 1234 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 1235 (nginx) Tasks: 3 (limit: 2215) Memory: 6.2M CPU: 45ms CGroup: /system.slice/nginx.service ├─1235 "nginx: master process /usr/sbin/nginx -g daemon on; master_process on;" └─1236 "nginx: worker process"

Penjelasan command:

  • systemctl status — Menampilkan status service (active/inactive/failed) + cuplikan log terakhir. Perintah pertama saat troubleshooting.
  • journalctl — Melihat log yang dikelola systemd-journald. Ganti tail -f /var/log/... dengan ini.
  • journalctl -u — Melihat log khusus satu service. Tambahkan -f untuk mengikuti log secara real-time.
  • named-checkconf — Menguji konfigurasi BIND9 (syntax).
Q
Bagaimana update serial zone?

Gunakan format YYYYMMDDNN. Setiap ubah zone, naikkan serial agar secondary tahu ada perubahan.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana set TTL yang tepat?

TTL rendah (300-3600) untuk record yang sering berubah, TTL tinggi (86400) untuk record stabil.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana integrasi dengan DHCP?

Gunakan ISC DHCP + BIND dynamic update atau dnsmasq untuk lingkungan kecil.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

VOLUME 16 / 17

SECURITY

FAQ seputar Security di Debian Linux Server.
Q
Apa langkah hardening dasar Debian server?
  1. Update sistem
  2. Setup firewall (UFW)
  3. Hardening SSH
  4. Install Fail2ban
  5. Disable service tidak perlu
  6. Setup automatic security update
Q
Bagaimana setup UFW secara aman?
UFW SECURE
sudo ufw default deny incoming sudo ufw default allow outgoing sudo ufw allow ssh sudo ufw allow 80/tcp sudo ufw allow 443/tcp sudo ufw enable

Penjelasan command:

  • ufw allow — Mengizinkan traffic masuk pada port/service yang disebutkan.
  • ufw enable — Mengaktifkan firewall. Pastikan port SSH sudah di-allow sebelum menjalankan ini agar tidak terkunci.
Q
Bagaimana install dan konfigurasi Fail2ban?
FAIL2BAN
sudo apt install fail2ban sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local sudo nano /etc/fail2ban/jail.local [sshd] enabled = true maxretry = 3 bantime = 1h sudo systemctl enable --now fail2ban

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
  • systemctl enable — Membuat service otomatis dijalankan setiap kali sistem boot.
Q
Bagaimana enable unattended-upgrades?
AUTO UPDATE
sudo apt install unattended-upgrades sudo dpkg-reconfigure -plow unattended-upgrades

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
Q
Bagaimana audit security dengan lynis?
LYNIS
sudo apt install lynis sudo lynis audit system

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
Q
Bagaimana cek open port yang tidak perlu?
PORTS
ss -tulpn sudo nmap -sT -O localhost # ===== CONTOH OUTPUT ===== Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port Process tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:* users:(("sshd",pid=789,fd=3)) tcp LISTEN 0 511 0.0.0.0:80 0.0.0.0:* users:(("nginx",pid=1235,fd=6)) tcp LISTEN 0 511 0.0.0.0:443 0.0.0.0:* users:(("nginx",pid=1235,fd=7))

Penjelasan command:

  • ss -tulpn — Menampilkan socket yang listening (TCP/UDP) beserta proses yang menggunakannya. Pengganti netstat modern.
Q
Bagaimana disable service yang tidak digunakan?
DISABLE
systemctl list-unit-files --type=service --state=enabled sudo systemctl disable --now bluetooth.service

Penjelasan command:

  • systemctl disable — Membatalkan auto-start service saat boot.
Q
Bagaimana setup AppArmor?
APPARMOR
sudo aa-status sudo aa-enforce /etc/apparmor.d/*
Q
Bagaimana cek rootkit?
ROOTKIT
sudo apt install rkhunter chkrootkit sudo rkhunter --check sudo chkrootkit

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
Q
Bagaimana set password policy yang kuat?
PASSWORD
sudo apt install libpam-pwquality sudo nano /etc/security/pwquality.conf minlen = 12 minclass = 3

Penjelasan command:

  • apt install — Menginstal paket beserta semua dependency yang dibutuhkan secara otomatis.
Q
Bagaimana monitor login gagal?
AUTH LOG
sudo grep "Failed password" /var/log/auth.log sudo lastb

Penjelasan command:

  • grep — Mencari teks di dalam file. -i = case-insensitive, -r = recursive, -n = tampilkan nomor baris.
Q
Bagaimana encrypt home directory?

Gunakan ecryptfs atau LUKS full disk encryption saat instalasi untuk proteksi data at rest.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana batasi akses cron?
CRON SECURE
sudo nano /etc/cron.allow # Isi hanya user yang diizinkan sudo chmod 600 /etc/cron.allow

Penjelasan command:

  • chmod — Mengubah permission file/directory (read/write/execute untuk owner/group/other).
Q
Bagaimana security header untuk web server?

Tambahkan: Strict-Transport-Security, X-Frame-Options, X-Content-Type-Options, Content-Security-Policy, Referrer-Policy.

Q
Bagaimana checklist security berkala?
  • Update sistem
  • Review firewall rules
  • Cek Fail2ban status
  • Review user & sudoers
  • Cek listening ports
  • Review log auth
  • Backup verification
VOLUME 17 / 17

TROUBLESHOOTING

FAQ seputar Troubleshooting di Debian Linux Server.
Q
Bagaimana troubleshoot server tidak bisa diakses?
ACCESS
ping server-ip traceroute server-ip nmap -p 22,80,443 server-ip ssh -vvv user@server sudo ufw status sudo systemctl status ssh # ===== CONTOH OUTPUT ===== ● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; preset: enabled) Active: active (running) since Wed 2026-03-11 09:14:22 WIB; 2h 15min ago Docs: man:nginx(8) Process: 1234 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 1235 (nginx) Tasks: 3 (limit: 2215) Memory: 6.2M CPU: 45ms CGroup: /system.slice/nginx.service ├─1235 "nginx: master process /usr/sbin/nginx -g daemon on; master_process on;" └─1236 "nginx: worker process"

Penjelasan command:

  • ufw status — Menampilkan status firewall dan daftar rules yang aktif.
  • systemctl status — Menampilkan status service (active/inactive/failed) + cuplikan log terakhir. Perintah pertama saat troubleshooting.
Q
Bagaimana troubleshoot disk penuh?
DISK FULL
df -h du -xh / | sort -hr | head -20 sudo apt clean && sudo apt autoremove sudo journalctl --vacuum-time=3d sudo find /var/log -name "*.gz" -delete # ===== CONTOH OUTPUT ===== Filesystem Size Used Avail Use% Mounted on /dev/sda1 20G 6.2G 13G 33% / /dev/sda2 100G 45G 50G 48% /var tmpfs 1.9G 0 1.9G 0% /dev/shm

Penjelasan command:

  • df -h — Menampilkan penggunaan disk dalam format human-readable (GB/MB).
  • apt autoremove — Menghapus paket yang tidak lagi dibutuhkan (dependency yatim).
  • apt clean — Menghapus file .deb yang tersimpan di cache (/var/cache/apt/archives).
  • journalctl — Melihat log yang dikelola systemd-journald. Ganti tail -f /var/log/... dengan ini.
  • find — Mencari file berdasarkan nama, ukuran, waktu modifikasi, permission, dll.
Q
Bagaimana troubleshoot memory tinggi?
MEMORY
free -h ps aux --sort=-%mem | head -15 top / htop sudo sync; sudo sysctl vm.drop_caches=3 # ===== CONTOH OUTPUT ===== USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1234 2.1 3.4 456789 123456 ? Ssl 09:00 0:45 /usr/sbin/mysqld www-data 1235 0.8 1.2 98765 45678 ? S 09:14 0:12 nginx: worker process root 1 0.0 0.3 168000 10240 ? Ss Mar10 0:05 /sbin/init

Penjelasan command:

  • free -h — Menampilkan penggunaan RAM dan swap.
  • ps aux — Menampilkan semua proses yang sedang berjalan beserta user, CPU, memory.
  • top / htop — Monitor proses secara interaktif (real-time).
Q
Bagaimana troubleshoot CPU tinggi?
CPU
top / htop ps aux --sort=-%cpu | head -15 uptime mpstat 1 5 # ===== CONTOH OUTPUT ===== USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1234 2.1 3.4 456789 123456 ? Ssl 09:00 0:45 /usr/sbin/mysqld www-data 1235 0.8 1.2 98765 45678 ? S 09:14 0:12 nginx: worker process root 1 0.0 0.3 168000 10240 ? Ss Mar10 0:05 /sbin/init

Penjelasan command:

  • top / htop — Monitor proses secara interaktif (real-time).
  • ps aux — Menampilkan semua proses yang sedang berjalan beserta user, CPU, memory.
Q
Bagaimana troubleshoot service tidak jalan?
SERVICE
sudo systemctl status service sudo journalctl -u service -xe sudo systemctl restart service sudo systemctl reset-failed service # ===== CONTOH OUTPUT ===== ● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; preset: enabled) Active: active (running) since Wed 2026-03-11 09:14:22 WIB; 2h 15min ago Docs: man:nginx(8) Process: 1234 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 1235 (nginx) Tasks: 3 (limit: 2215) Memory: 6.2M CPU: 45ms CGroup: /system.slice/nginx.service ├─1235 "nginx: master process /usr/sbin/nginx -g daemon on; master_process on;" └─1236 "nginx: worker process"

Penjelasan command:

  • systemctl status — Menampilkan status service (active/inactive/failed) + cuplikan log terakhir. Perintah pertama saat troubleshooting.
  • journalctl — Melihat log yang dikelola systemd-journald. Ganti tail -f /var/log/... dengan ini.
  • journalctl -u — Melihat log khusus satu service. Tambahkan -f untuk mengikuti log secara real-time.
  • systemctl restart — Stop lalu start ulang service. Gunakan setelah mengubah konfigurasi.
Q
Bagaimana troubleshoot network?
NETWORK
ip a ip r ping 8.8.8.8 dig google.com ss -tulpn sudo ufw status verbose # ===== CONTOH OUTPUT ===== Status: active To Action From -- ------ ---- 22/tcp ALLOW Anywhere 80/tcp ALLOW Anywhere 443/tcp ALLOW Anywhere

Penjelasan command:

  • ss -tulpn — Menampilkan socket yang listening (TCP/UDP) beserta proses yang menggunakannya. Pengganti netstat modern.
  • ufw status — Menampilkan status firewall dan daftar rules yang aktif.
Q
Bagaimana troubleshoot boot problem?
BOOT
Boot ke recovery mode dari GRUB journalctl -b -p err systemd-analyze blame sudo fsck -f /dev/sdXN

Penjelasan command:

  • journalctl — Melihat log yang dikelola systemd-journald. Ganti tail -f /var/log/... dengan ini.
  • fsck — Memeriksa dan memperbaiki filesystem yang corrupt. Jangan dijalankan pada partisi yang sedang di-mount.
Q
Bagaimana recovery password root?

Boot ke recovery/single user mode, lalu jalankan passwd root. Atau boot dari live USB dan chroot.

Tip: Gunakan man <command> atau <command> --help di terminal untuk melihat dokumentasi lengkap setiap perintah.

Q
Bagaimana cek log error sistem?
LOGS
journalctl -p err -b journalctl -xe sudo tail -100 /var/log/syslog dmesg | grep -i error

Penjelasan command:

  • journalctl — Melihat log yang dikelola systemd-journald. Ganti tail -f /var/log/... dengan ini.
  • grep — Mencari teks di dalam file. -i = case-insensitive, -r = recursive, -n = tampilkan nomor baris.
Q
Bagaimana troubleshoot permission denied?
PERM
ls -la file namei -l /path/to/file getfacl file sudo ls -la
Q
Bagaimana cek hardware error?
HW ERR
dmesg | grep -i error sudo smartctl -a /dev/sda sudo journalctl -b | grep -i fail # ===== CONTOH OUTPUT ===== === START OF INFORMATION SECTION === Model Family: Samsung based SSDs Device Model: Samsung SSD 870 Serial Number: S1234ABC === START OF READ SMART DATA SECTION === SMART overall-health self-assessment test result: PASSED

Penjelasan command:

  • grep — Mencari teks di dalam file. -i = case-insensitive, -r = recursive, -n = tampilkan nomor baris.
  • smartctl — Membaca data SMART dari hard disk/SSD untuk deteksi dini kerusakan.
  • journalctl — Melihat log yang dikelola systemd-journald. Ganti tail -f /var/log/... dengan ini.
Q
Bagaimana recovery dari filesystem corrupt?
FSCK
sudo umount /dev/sdXN sudo fsck -f -y /dev/sdXN sudo mount /dev/sdXN /mnt

Penjelasan command:

  • fsck — Memeriksa dan memperbaiki filesystem yang corrupt. Jangan dijalankan pada partisi yang sedang di-mount.
Q
Bagaimana cek apakah kehabisan inode?
INODE
df -i find / -xdev -printf '%h\n' | sort | uniq -c | sort -nr | head

Penjelasan command:

  • find — Mencari file berdasarkan nama, ukuran, waktu modifikasi, permission, dll.
Q
Bagaimana troubleshoot apt yang error?
APT ERR
sudo apt --fix-broken install sudo dpkg --configure -a sudo rm -vf /var/lib/apt/lists/* sudo apt update # ===== CONTOH OUTPUT ===== Get:1 http://deb.debian.org/debian bookworm InRelease [151 kB] Get:2 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB] Fetched 199 kB in 1s (185 kB/s) Reading package lists... Done Building dependency tree... Done

Penjelasan command:

  • apt update — Mengambil index paket terbaru dari semua repository yang dikonfigurasi. Tidak menginstal apa pun. Selalu jalankan sebelum install/upgrade.
Q
Bagaimana membuat laporan diagnostik cepat?
DIAG
uname -a uptime free -h df -h systemctl --failed journalctl -p err -b --no-pager | tail -50 # ===== CONTOH OUTPUT ===== Linux server 6.1.0-18-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.76-1 (2024-02-01) x86_64 GNU/Linux

Penjelasan command:

  • free -h — Menampilkan penggunaan RAM dan swap.
  • df -h — Menampilkan penggunaan disk dalam format human-readable (GB/MB).
  • journalctl — Melihat log yang dikelola systemd-journald. Ganti tail -f /var/log/... dengan ini.
ABDURROZAK.MY.ID // TERHUBUNG

JARINGAN SOSIAL

Temukan saya di berbagai platform digital