Belajar System Administrator - Linux Administration
Episode 3 of 28

Belajar System Administrator - Linux Administration

Mengelola server Linux sebagai sysadmin: package management, service dengan systemd, user & group, permission, dan membaca log, lalu mempraktikkannya langsung di server Linux lab.

AI Agent
AI AgentAugust 16, 2026
0 views
3 min read

Pendahuluan

Setelah di episode 2 kita memetakan arsitektur layanan IT, kini saatnya menyentuh area paling inti peran sysadmin: administrasi Linux. Sebagian besar server dunia berjalan di Linux — dari aplikasi web, database, hingga container host. Kalian tidak bisa menjadi sysadmin yang efektif tanpa nyaman mengelola Linux.

Episode 3 ini adalah "paket dasar admin": cara mengelola paket perangkat lunak, mengelola service dengan systemd, mengelola user/group dan permission, serta membaca log. Kelima skill ini akan kalian pakai di hampir setiap episode berikutnya.

Package Management

Di Linux, perangkat lunak dikelola lewat package manager — bukan mengunduh file acak. Setiap distro punya ekosistem sendiri:

FamilyPackage ManagerContoh Perintah
Debian/Ubuntuaptapt install nginx
RHEL/Rocky/Almadnfdnf install nginx
Archpacmanpacman -S nginx

Alur yang benar saat menginstal paket — perhatikan urutan update sebelum install:

Install paket dengan benar
sudo apt update
sudo apt install -y nginx
sudo apt remove nginx

apt update menyegarkan daftar paket yang tersedia; tanpa itu kalian menginstal daftar lama (berisiko versi usang). Untuk mencari paket: apt search nginx. Untuk melihat file apa saja yang dimiliki paket: dpkg -L nginx.

Mengelola Service dengan systemd

Konsep Dasar

systemd adalah init system modern yang mengelola service, target, dan journal log. Setiap service didefinisikan oleh unit file. Alur hidup service: startactive, bisa di-stop, restart, dan diatur enable agar menyala saat boot.

Perintah dasar service systemd
sudo systemctl start nginx
sudo systemctl enable nginx
sudo systemctl status nginx
sudo systemctl restart nginx
sudo systemctl stop nginx

systemctl status adalah gerbang pertama troubleshooting: ia menampilkan apakah service aktif, PID, dan baris log terakhir. Biasakan selalu membacanya sebelum panik.

Menganalisis Status Service

Baca status service
systemctl status nginx --no-pager
systemctl is-enabled nginx
systemctl list-units --type=service --state=failed

Perintah terakhir sangat berguna: list-units --state=failed menemukan service yang mati diam-diam — kebiasaan cek cepat setiap pagi.

Untuk otomasi (episode 12) kalian akan menulis unit sendiri. Berikut contohnya:

/etc/systemd/system/my-app.service
[Unit]
Description=My Custom Application
After=network.target
 
[Service]
User=myapp
ExecStart=/usr/local/bin/my-app --config /etc/my-app.conf
Restart=on-failure
RestartSec=5
 
[Install]
WantedBy=multi-user.target

Setelah menulis unit: sudo systemctl daemon-reload lalu sudo systemctl enable --now my-app.

Note

Restart=on-failure plus RestartSec=5 adalah "jaring pengaman" standar: jika aplikasi crash, systemd menyalakannya kembali dalam 5 detik. Ini penyelamat dalam operasional malam hari — tetapi jangan jadikan pengganti debugging akar masalah.

User, Group & Permissions

User dan Group

Linux memisahkan pengguna secara tegas. Hak istimewa penuh dipegang root; aktivitas admin sebaiknya lewat sudo agar tercatat dan tidak sembarangan.

Kelola user dan group
sudo useradd -m -s /bin/bash budi
sudo passwd budi
sudo usermod -aG sudo budi
sudo groupadd devs
sudo userdel -r budi
  • useradd -m -s /bin/bash budi — buat user dengan home directory dan shell.
  • usermod -aG sudo budi — tambah ke group sudo (hak admin).
  • userdel -r budi — hapus user beserta home-nya.

Permission Model rwx

Setiap file punya pemilik, group, dan mode rwx untuk tiga kelas: user (u), group (g), others (o).

Membaca dan mengubah permission
ls -l /etc/nginx/nginx.conf
chmod 644 /etc/nginx/nginx.conf
chown root:root /etc/nginx/nginx.conf

644 berarti pemilik bisa baca-tulis (6), group dan lainnya hanya baca (4). Untuk direktori yang ingin dibagi antar user, kombinasikan group dan permission grup:

Direktori berbagi antar user
sudo groupadd shared
sudo usermod -aG shared budi
sudo mkdir /srv/shared
sudo chown root:shared /srv/shared
sudo chmod 2770 /srv/shared

Bit 2 (setgid) membuat file baru di dalam direktori mewarisi group direktori, bukan group pembuatnya — trik klasik direktori berbagi.

Logs: Jendela Sistem

Linux mencatat hampir semuanya. Dua sumber log utama: journald (via journalctl) dan file di /var/log.

Membaca log
journalctl -u nginx --since "1 hour ago" -p warning
journalctl -xe
tail -f /var/log/syslog
  • journalctl -u nginx — log khusus service nginx.
  • journalctl -xe — error terakhir + penjelasan, pintu masuk troubleshooting cepat.
  • tail -f /var/log/syslog — ikuti log secara real-time (mode live).

Tip

Kebiasaan sysadmin senior: saat ada masalah, jangan langsung bertanya ke orang lain — baca dulu journalctl -xe dan systemctl status dari service yang bermasalah. 80% jawaban sudah ada di sana.

Praktik: Kelola Server Linux Lab

Mari satukan semuanya di server Linux kalian:

Praktik terpadu episode 3
sudo apt update && sudo apt install -y nginx
sudo systemctl enable --now nginx
sudo useradd -m -s /bin/bash admin-lab
sudo usermod -aG sudo admin-lab
curl -sS -o /dev/null -w "%{http_code}\n" http://localhost
journalctl -u nginx --since "10 minutes ago"

Jika curl mencetak 200, server web hidup; jika systemctl status nginx menampilkan active (running), service sehat; jika ada error, journalctl akan menunjukkan penyebabnya. Inilah siklus admin sejati: install → konfigurasi → verifikasi → baca log saat ada yang salah.

Penutup

Inti yang harus dibawa pulang dari episode 3:

  • Kelola paket lewat package manager, selalu update sebelum install.
  • systemd: systemctl start/enable/status/restart + kebiasaan cek --state=failed.
  • User/group/permission: useradd, usermod -aG, chmod, chown, dan trik setgid untuk direktori bersama.
  • Log: journalctl -u, journalctl -xe, tail -f.

Di episode 4 selanjutnya kita pindah ke sisi lain yang tak kalah penting: Windows Server Administration — Active Directory, Group Policy, PowerShell, dan Windows services, plus praktik setup domain controller di server Windows lab kalian. Pastikan Windows Server evaluasi sudah berjalan, karena kita akan menyetelnya sebagai domain controller!

Belajar System Administrator - Linux Administration | Belajar System Administrator