Difference between revisions of "OS: PRAKTIKUM — Linux Survival Lab"

From OnnoWiki
Jump to navigation Jump to search
 
Line 66: Line 66:
  
 
===Analisis Socket & Port===
 
===Analisis Socket & Port===
ss -tulpen
+
ss -tulpen
 
Digunakan untuk:
 
Digunakan untuk:
Mengetahui service apa yang listening
+
* Mengetahui service apa yang listening
Verifikasi port konflik
+
* Verifikasi port konflik
Audit exposed services
+
* Audit exposed services
Monitoring Trafik Sederhana
+
 
ip -s link
+
===Monitoring Trafik Sederhana===
 +
ip -s link
 
Perhatikan:
 
Perhatikan:
RX/TX error
+
* RX/TX error
dropped packets
+
* dropped packets
 
Tool sederhana ini sering diabaikan, padahal sangat efektif untuk troubleshooting cepat.
 
Tool sederhana ini sering diabaikan, padahal sangat efektif untuk troubleshooting cepat.
  
Service Management (systemd Survival Skills)
+
==Service Management (systemd Survival Skills)==
Filosofi systemd
+
===Filosofi systemd===
 
Di Ubuntu 24.04, semua service dikelola oleh systemd. Ini menggantikan init.d dan memberikan:
 
Di Ubuntu 24.04, semua service dikelola oleh systemd. Ini menggantikan init.d dan memberikan:
Dependency management
+
* Dependency management
Logging terintegrasi
+
* Logging terintegrasi
Kontrol service yang konsisten
+
* Kontrol service yang konsisten
Status & Kontrol Service
+
 
 +
===Status & Kontrol Service===
 
Cek status service
 
Cek status service
systemctl status ssh
+
systemctl status ssh
 
Start / Stop / Restart
 
Start / Stop / Restart
sudo systemctl start nginx
+
sudo systemctl start nginx
sudo systemctl stop nginx
+
sudo systemctl stop nginx
sudo systemctl restart nginx
+
sudo systemctl restart nginx
 
Enable saat boot
 
Enable saat boot
sudo systemctl enable nginx
+
sudo systemctl enable nginx
 
Analisis Log dengan journalctl
 
Analisis Log dengan journalctl
journalctl -u ssh --since "10 minutes ago"
+
journalctl -u ssh --since "10 minutes ago"
journalctl -xe
+
journalctl -xe
 
journalctl adalah alat forensik pertama ketika service gagal.
 
journalctl adalah alat forensik pertama ketika service gagal.
Deteksi Service Bermasalah
 
  
systemctl --failed
+
===Deteksi Service Bermasalah===
 +
systemctl --failed
 
Output ini sering menjadi jawaban tercepat saat server “tiba-tiba tidak jalan”.
 
Output ini sering menjadi jawaban tercepat saat server “tiba-tiba tidak jalan”.
  
Mini Survival Scenario (Latihan Tantangan)
+
==Mini Survival Scenario (Latihan Tantangan)==
 
Skenario:
 
Skenario:
Server terasa lambat, user mengeluh SSH delay, dan web service sering timeout.
+
Server terasa lambat, user mengeluh SSH delay, dan web service sering timeout.
 
Langkah diagnosa yang wajib berurutan:
 
Langkah diagnosa yang wajib berurutan:
top → CPU atau I/O?
+
* top → CPU atau I/O?
free -h → swap aktif?
+
* free -h → swap aktif?
iostat → disk saturated?
+
* iostat → disk saturated?
ss -tulpen → service overload?
+
* ss -tulpen → service overload?
journalctl -xe → error log
+
* journalctl -xe → error log
 
Tidak lompat langkah. Tidak menebak. Semua berbasis observasi.
 
Tidak lompat langkah. Tidak menebak. Semua berbasis observasi.
Refleksi Akademik & Relevansi OS
+
 
 +
==Refleksi Akademik & Relevansi OS==
 
Praktikum ini secara langsung menghubungkan:
 
Praktikum ini secara langsung menghubungkan:
Konsep kernel scheduling
+
* Konsep kernel scheduling
Manajemen memori
+
* Manajemen memori
I/O subsystem
+
* I/O subsystem
Networking stack
+
* Networking stack
Service orchestration
+
* Service orchestration
 
Semua topik inti sistem operasi tidak lagi abstrak, melainkan terlihat dan terukur — sesuai filosofi “OS is observable” yang ditekankan dalam buku Sistem Operasi praktis .
 
Semua topik inti sistem operasi tidak lagi abstrak, melainkan terlihat dan terukur — sesuai filosofi “OS is observable” yang ditekankan dalam buku Sistem Operasi praktis .
Output yang Diharapkan
+
 
 +
==Output yang Diharapkan==
 
Mahasiswa mampu:
 
Mahasiswa mampu:
Mendiagnosa sistem Linux tanpa GUI
+
* Mendiagnosa sistem Linux tanpa GUI
Menjelaskan sebab, bukan sekadar gejala
+
* Menjelaskan sebab, bukan sekadar gejala
Mengambil keputusan teknis berbasis data
+
* Mengambil keputusan teknis berbasis data
Siap lanjut ke Kernel & Tuning Lab
+
* Siap lanjut ke Kernel & Tuning Lab
 
 
  
 
==Pranala Menarik==
 
==Pranala Menarik==
  
 
* [[Sistem operasi]]
 
* [[Sistem operasi]]

Latest revision as of 05:41, 14 February 2026

Tujuan

Praktikum ini dirancang untuk membentuk mentalitas Linux survivor: mahasiswa tidak panik ketika sistem bermasalah, mampu mendiagnosis bottleneck, serta mengambil keputusan teknis berbasis data. Fokus utama adalah observasi sistem secara langsung, bukan sekadar teori.

Mahasiswa akan belajar bahwa Linux menyediakan semua visibility yang dibutuhkan administrator — tanpa GUI, tanpa software proprietary — cukup dengan command-line tools bawaan.

Diagnosa CPU, RAM, dan Disk

Prinsip Dasar Diagnosa Sistem

Dalam sistem operasi modern, performa buruk hampir selalu berasal dari salah satu dari tiga sumber utama:

  • CPU bottleneck
  • Memory pressure
  • I/O bottleneck (disk atau network)

Pendekatan survival yang benar adalah observasi → hipotesis → verifikasi, bukan menebak.

Diagnosa CPU Load & Scheduling

Mengamati beban CPU secara real-time

top

Fokuskan perhatian pada:

  • load average → beban sistem relatif terhadap jumlah core
  • %CPU → proses yang rakus CPU
  • us / sy / id / wa → distribusi waktu CPU

Rule of thumb:

  • load average > jumlah core → sistem mulai overloaded
  • %wa tinggi → CPU menunggu disk (I/O bound)

Alternatif yang lebih human-friendly:

htop

htop memperlihatkan core per core, sangat membantu untuk memahami scheduler behavior .

Diagnosa Memory (RAM & Swap)

Snapshot penggunaan memori

free -h

Perhatikan:

  • available memory (bukan sekadar free)
  • swap usage → indikator tekanan memori

Observasi dinamis

vmstat 2

Kolom penting:

  • si/so (swap in / swap out)
  • r (run queue)
  • wa (I/O wait)

Swap aktif + sistem lambat = memory pressure serius

Diagnosa Disk & I/O

Identifikasi partisi & kapasitas

df -h
lsblk

I/O wait & throughput

iostat -xz 2

Interpretasi:

  • %util mendekati 100% → disk saturated
  • await tinggi → latency tinggi

Ini sejalan dengan konsep I/O scheduler & monitoring pada buku Sistem Operasi klasik, tetapi kini diaplikasikan langsung .

Network Debugging (Troubleshooting Jaringan)

Verifikasi Interface & IP Address

ip a
ip route

Pastikan:

  • Interface UP
  • IP address sesuai desain lab
  • Default route tersedia

Uji Konektivitas Dasar

ping 8.8.8.8
ping google.com

Jika IP bisa diping tapi DNS gagal → masalah DNS, bukan jaringan fisik.

Analisis Socket & Port

ss -tulpen

Digunakan untuk:

  • Mengetahui service apa yang listening
  • Verifikasi port konflik
  • Audit exposed services

Monitoring Trafik Sederhana

ip -s link

Perhatikan:

  • RX/TX error
  • dropped packets

Tool sederhana ini sering diabaikan, padahal sangat efektif untuk troubleshooting cepat.

Service Management (systemd Survival Skills)

Filosofi systemd

Di Ubuntu 24.04, semua service dikelola oleh systemd. Ini menggantikan init.d dan memberikan:

  • Dependency management
  • Logging terintegrasi
  • Kontrol service yang konsisten

Status & Kontrol Service

Cek status service

systemctl status ssh

Start / Stop / Restart

sudo systemctl start nginx
sudo systemctl stop nginx
sudo systemctl restart nginx

Enable saat boot

sudo systemctl enable nginx

Analisis Log dengan journalctl

journalctl -u ssh --since "10 minutes ago"
journalctl -xe

journalctl adalah alat forensik pertama ketika service gagal.

Deteksi Service Bermasalah

systemctl --failed

Output ini sering menjadi jawaban tercepat saat server “tiba-tiba tidak jalan”.

Mini Survival Scenario (Latihan Tantangan)

Skenario:

Server terasa lambat, user mengeluh SSH delay, dan web service sering timeout.

Langkah diagnosa yang wajib berurutan:

  • top → CPU atau I/O?
  • free -h → swap aktif?
  • iostat → disk saturated?
  • ss -tulpen → service overload?
  • journalctl -xe → error log

Tidak lompat langkah. Tidak menebak. Semua berbasis observasi.

Refleksi Akademik & Relevansi OS

Praktikum ini secara langsung menghubungkan:

  • Konsep kernel scheduling
  • Manajemen memori
  • I/O subsystem
  • Networking stack
  • Service orchestration

Semua topik inti sistem operasi tidak lagi abstrak, melainkan terlihat dan terukur — sesuai filosofi “OS is observable” yang ditekankan dalam buku Sistem Operasi praktis .

Output yang Diharapkan

Mahasiswa mampu:

  • Mendiagnosa sistem Linux tanpa GUI
  • Menjelaskan sebab, bukan sekadar gejala
  • Mengambil keputusan teknis berbasis data
  • Siap lanjut ke Kernel & Tuning Lab

Pranala Menarik