Materi course ini lambat laun akan menua: versi distro berganti, tool menambah opsi baru, dan praktik terbaik direvisi. Keterampilan yang tidak menua adalah membaca dokumentasi resmi — halaman manual dan panduan yang ditulis pengembangnya sendiri. Chapter penutup ini memetakan sumber-sumber tepercaya per kategori — man pages, kernel, distro, hingga tool khusus — lengkap dengan kapan masing-masing paling tepat dikonsultasi. Tutup chapter ini dengan satu kebiasaan baru: sebelum menyalin perintah dari forum, cari dulu bentuk resminya di salah satu sumber berikut.
Manual dan Man Pages #
Halaman manual (man) adalah sumber pertama: terpasang di sistem, bisa dibaca tanpa jaringan, dan ditulis oleh pengelola paketnya. Tiga situs berikut adalah cermin daringnya, dan ketiganya saling melengkapi karena versi paket yang dimuat berbeda-beda.
| Sumber | Keistimewaan | Kapan dikonsultasi |
|---|---|---|
| man7.org | Proyek man-pages upstream Linux, format konsisten | Rujukan pertama sintaks perintah dan syscall |
| man.archlinux.org | Selalu memuat versi terbaru paket | Mengecek perilaku versi baru sebelum masuk distro stabil |
| manpages.debian.org | Versi sesuai rilis Debian | Saat distro kita adalah Debian atau turunannya |
Untuk distro kita, Debian 13, manpages.debian.org adalah yang paling representatif karena halamannya persis seperti yang terbaca dari man lokal. Cermin man pages Arch berganti peran saat kita butuh perilaku versi terbaru — Arch bersifat rolling release sehingga halamannya selalu segar. Satu kebiasaan yang juga perlu dibawa: perhatikan angka seksi pada nama man page, misalnya crontab(1) untuk perintah dan crontab(5) untuk format file — keduanya halaman yang berbeda untuk topik yang sama.
Kernel dan Internal Linux #
Dokumentasi kernel resmi tinggal di docs.kernel.org
— pohon Documentation/ yang dikirim bersama source code kernel, sehingga isinya sejalan dengan kernel yang benar-benar berjalan di mesin kita. Beberapa bagian yang paling sering dikunjungi administrator:
| Bagian | Isi |
|---|---|
admin-guide/ | Panduan administrasi: parameter boot, sysctl, partisi, dm-crypt |
admin-guide/cgroup-v2 | Kendali resource cgroup versi 2 |
filesystems/ | Perilaku ext4, XFS, btrfs, dan filesystem lainnya |
networking/ | Konfigurasi jaringan level kernel, termasuk netfilter |
Materi Section Advanced Linux — procfs, sysfs, cgroups, hingga namespaces — seluruhnya bersumber dari pohon dokumentasi ini. Ketika chapter course merujuk “perilaku default kernel”, docs.kernel.org adalah tempat memverifikasinya.
Dokumentasi Distro #
Dua distro bisa memaketkan software yang sama dengan cara berbeda: lokasi file, service bawaan, sampai patch eksklusif. Karena itu masalah yang menyangkut paket sebaiknya dicari di dokumentasi distro kita lebih dulu, baru ke dokumentasi upstream-nya.
| Sumber | Karakter | Cocok untuk |
|---|---|---|
| www.debian.org/doc | Handbook resmi Debian | Administrasi mesin keluarga Debian |
| wiki.debian.org | Solusi komunitas per paket | Masalah spesifik paket di Debian |
| docs.fedoraproject.org | Dokumentasi resmi Fedora | Pengguna Fedora |
| wiki.archlinux.org | Artikel paling rinci, sering lintas distro | Konfigurasi tingkat lanjut apa pun |
| ubuntu.com/server/docs | Panduan server Ubuntu LTS | Administrator server Ubuntu |
Wiki Arch layak dapat catatan khusus: artikelnya kerap menjadi prosedur paling rinci untuk sebuah topik, tetapi perintahnya mengasumsikan paket dan penamaan khas Arch. Terjemahkan ke konteks distro kita — nama paket, lokasi file, service manager — sebelum menyalin perintahnya.
Dokumentasi Tool Khusus #
Sebagian tool cukup besar hingga dokumentasinya menjadi situs tersendiri. Tabel berikut adalah alamat-alamat yang layak di-bookmark, satu baris per tool.
| Tool | Alamat | Untuk apa |
|---|---|---|
| systemd | systemd.io | Unit, journal, target, timer |
| ShellCheck | www.shellcheck.net | Menganalisis dan menilai skrip bash |
| Git | git-scm.com | Buku Pro Git dan referensi lengkap |
| jq | jqlang.github.io | Manual filter jq |
| rsync | rsync.samba.org | Opsi dan pola sinkronisasi |
| Docker | docs.docker.com | Engine, CLI, dan Compose |
| Podman | podman.io | Container rootless |
| OpenSSH | www.openssh.com | Konfigurasi ssh, sshd, dan kuncinya |
| nftables | netfilter.org | Firewall; rincian aturan di wiki.nftables.org |
| nginx | nginx.org | Directive dan modul web server |
| Apache httpd | httpd.apache.org | Directive dan modul httpd |
| cloud-init | cloud-init.io | Inisialisasi instance di cloud |
Semua alamat di atas adalah dokumentasi resmi dari proyek yang bersangkutan, bukan cerapan pihak ketiga. Itu penting karena dokumentasi resmi ikut diperbarui bersama rilis — tutorial pihak ketiga sering tertinggal beberapa versi.
Cara Membaca Dokumentasi dengan Efektif #
Selain memastikan versi, beberapa kebiasaan berikut membuat membaca dokumentasi jauh lebih efisien. Semuanya murah tetapi jarang dilakukan orang:
- Kenali seksi man page. Angka pada
crontab(5)adalah seksi: 1 untuk perintah user, 5 untuk format file, 8 untuk administrasi. Perintahman 5 crontabmembuka format file, bukan cara memakai perintahnya. - Baca catatan rilis sebelum upgrade besar. Perubahan perilaku selalu dicatat di release notes distro; kejutan pasca-upgrade hampir selalu sudah tertulis di sana.
- Perhatikan tanggal di wiki. Artikel tahun 2016 tentang bootloader bisa masih relevan — atau tidak. Tanggal suntingan terakhir adalah petunjuk pertama.
- Mulai dari bagian contoh. Man page dan dokumentasi resmi umumnya menutup dengan contoh jadi; sering kali jawaban yang dicari sudah ada di sana, lengkap dengan bentuk pemakaiannya.
Peta Sumber dalam Satu File #
Daftar panjang di atas mudah sekali dilupakan tepat saat dibutuhkan. Solusinya sederhana: simpan peta sumber favorit sebagai file JSON dan olah dengan jq — dua materi yang sudah kita kuasai dari Section Text Processing. Fixture berikut meniru bentuk peta semacam itu:
cat > sumber.json <<'BATEK'
[
{"kategori": "manual", "sumber": "man7.org", "guna": "halaman manual upstream"},
{"kategori": "manual", "sumber": "manpages.debian.org", "guna": "man pages sesuai rilis Debian"},
{"kategori": "distro", "sumber": "wiki.archlinux.org", "guna": "panduan konfigurasi terkini"},
{"kategori": "alat", "sumber": "www.shellcheck.net", "guna": "pemeriksa kualitas skrip"}
]
BATEK
jq -r 'group_by(.kategori)[] | "\(.[0].kategori): \(map(.sumber) | join(", "))"' sumber.jsonOutput yang Dihasilkan:
alat: www.shellcheck.net
distro: wiki.archlinux.org
manual: man7.org, manpages.debian.orgMari kita bedah baris per barisnya:
- Baris 1–8 (heredoc
cat > sumber.json, termasuk penutupBATEK): menulis fixture JSON — satu objek per sumber dengan tiga field tetap:kategori,sumber, danguna. Struktur inilah yang membuatjqdapat mengelompokkan isinya. - Baris 9 (
jq -r ...):group_by(.kategori)mengurutkan lalu mengelompokkan objek berdasarkan kategori; setiap kelompok dicetak satu baris — nama kategori diikuti seluruh anggotanya yang dirangkaijoin(", ")— dan opsi-rmencetak string apa adanya tanpa tanda kutip JSON.
Peta dua belas alamat pada tabel sebelumnya bisa disimpan dengan cara yang sama, atau diperingkas hanya ke sumber yang benar-benar dipakai sehari-hari. Menuliskannya sendiri adalah bentuk pembelajaran terakhir: kita dipaksa memutuskan sumber mana yang layak masuk daftar.
Dengan tabel perintah, panduan diagnosis, lembar contekan, dan peta dokumentasi di tangan, perlengkapan referensi kita kini lengkap. Satu hal yang belum kita lakukan: memakai semuanya untuk membangun sesuatu yang utuh. Section berikutnya, Proyek
, mengajak menyusun sembilan proyek praktis — dimulai dari skrip backup otomatis yang menggabungkan tar, rsync, dan seluruh kebiasaan baik yang kita latih sepanjang course ini.