Difference between revisions of "OS: Instalasi Ubuntu Server 24.04"

From OnnoWiki
Jump to navigation Jump to search
 
Line 1: Line 1:
Bab ini membahas proses instalasi Ubuntu Server 24.04 secara sistematis, reproducible, dan engineering-oriented, bukan sekadar “klik next”. Pendekatan ini selaras dengan semangat buku Sistem Operasi karya Onno W. Purbo yang menekankan bahwa sistem operasi harus dipahami sebagai sistem yang bisa dikonfigurasi, diutak-atik, dan direkayasa, bukan kotak hitam .
+
Bab ini membahas proses instalasi Ubuntu Server 24.04 secara sistematis, reproducible, dan engineering-oriented, bukan sekadar “klik next”. Pendekatan ini selaras dengan semangat buku Sistem Operasi karya Onno W. Purbo yang menekankan bahwa sistem operasi harus dipahami sebagai sistem yang bisa dikonfigurasi, diutak-atik, dan direkayasa, bukan kotak hitam.
 +
 
 
Ubuntu Server 24.04 dipilih sebagai core platform karena:
 
Ubuntu Server 24.04 dipilih sebagai core platform karena:
Stabil (LTS) dan cocok untuk eksperimen jangka panjang
+
* Stabil (LTS) dan cocok untuk eksperimen jangka panjang
Kernel Linux modern yang mendukung container, networking advanced, dan kernel tuning
+
* Kernel Linux modern yang mendukung container, networking advanced, dan kernel tuning
Ekosistem open source lengkap, tanpa ketergantungan proprietary software
+
* Ekosistem open source lengkap, tanpa ketergantungan proprietary software
Menjadi basis untuk OpenWRT build, kernel compile, dan Android x86 build pada bab selanjutnya
+
* Menjadi basis untuk OpenWRT build, kernel compile, dan Android x86 build pada bab selanjutnya
ISO Image, UEFI, dan Disk Layout
+
 
Pemilihan ISO Ubuntu Server 24.04
+
==ISO Image, UEFI, dan Disk Layout==
 +
===Pemilihan ISO Ubuntu Server 24.04===
 
Ubuntu Server menggunakan installer berbasis Subiquity yang ringan dan cocok untuk server maupun VM. ISO dapat diunduh dalam arsitektur x86_64 (amd64).
 
Ubuntu Server menggunakan installer berbasis Subiquity yang ringan dan cocok untuk server maupun VM. ISO dapat diunduh dalam arsitektur x86_64 (amd64).
 +
 
Prinsip penting:
 
Prinsip penting:
Gunakan Server ISO, bukan Desktop
+
* Gunakan Server ISO, bukan Desktop
Instalasi berbasis CLI-first, GUI bukan prioritas
+
* Instalasi berbasis CLI-first, GUI bukan prioritas
Cocok untuk virtual machine (VirtualBox, KVM, GNS3) dan bare-metal
+
* Cocok untuk virtual machine (VirtualBox, KVM, GNS3) dan bare-metal
 
Filosofi: belajar OS dimulai dari text mode, bukan GUI .
 
Filosofi: belajar OS dimulai dari text mode, bukan GUI .
UEFI vs Legacy BIOS
+
 
 +
===UEFI vs Legacy BIOS===
 
Ubuntu Server 24.04 secara default menggunakan UEFI, yang lebih modern dan konsisten.
 
Ubuntu Server 24.04 secara default menggunakan UEFI, yang lebih modern dan konsisten.
 
Perbedaan penting:
 
Perbedaan penting:
UEFI menggunakan GPT partition table
+
* UEFI menggunakan GPT partition table
Mendukung secure boot (opsional)
+
* Mendukung secure boot (opsional)
Lebih stabil untuk multi-OS dan disk besar
+
* Lebih stabil untuk multi-OS dan disk besar
 
Rekomendasi lab:
 
Rekomendasi lab:
Aktifkan UEFI di VirtualBox
+
* Aktifkan UEFI di VirtualBox
Nonaktifkan Secure Boot untuk kemudahan eksperimen kernel
+
* Nonaktifkan Secure Boot untuk kemudahan eksperimen kernel
Disk Layout (Partitioning Strategy)
+
 
 +
===Disk Layout (Partitioning Strategy)===
 
Mengacu pada konsep file system & storage di buku Sistem Operasi, disk layout harus mencerminkan tujuan sistem .
 
Mengacu pada konsep file system & storage di buku Sistem Operasi, disk layout harus mencerminkan tujuan sistem .
 +
 
Skema minimal (lab & VM):
 
Skema minimal (lab & VM):
/ (root): 20–40 GB
+
* / (root): 20–40 GB
swap: 2–4 GB (atau swapfile)
+
* swap: 2–4 GB (atau swapfile)
Filesystem: ext4
+
* Filesystem: ext4
 +
 
 
Skema engineering (direkomendasikan):
 
Skema engineering (direkomendasikan):
/ → OS inti
+
* / → OS inti
/home → eksperimen user & source code
+
* /home → eksperimen user & source code
/var → log, container, package cache
+
* /var → log, container, package cache
 
Pisahkan data dari OS agar eksperimen kernel & tuning tidak merusak sistem utama.
 
Pisahkan data dari OS agar eksperimen kernel & tuning tidak merusak sistem utama.
Network Configuration dengan Netplan
+
 
 +
==Network Configuration dengan Netplan==
 
Ubuntu modern menggunakan Netplan sebagai abstraction layer konfigurasi jaringan, menggantikan ifconfig dan interfaces lama.
 
Ubuntu modern menggunakan Netplan sebagai abstraction layer konfigurasi jaringan, menggantikan ifconfig dan interfaces lama.
Konsep Netplan
+
===Konsep Netplan===
 
Netplan adalah YAML-based network configuration system yang:
 
Netplan adalah YAML-based network configuration system yang:
Menghasilkan konfigurasi untuk systemd-networkd atau NetworkManager
+
* Menghasilkan konfigurasi untuk systemd-networkd atau NetworkManager
Cocok untuk server, VM, cloud, dan lab networking
+
* Cocok untuk server, VM, cloud, dan lab networking
Mendukung static IP, routing, VLAN, bridge
+
* Mendukung static IP, routing, VLAN, bridge
 
Ini sejalan dengan pembahasan networking stack dan routing di buku Sistem Operasi dan OpenWRT .
 
Ini sejalan dengan pembahasan networking stack dan routing di buku Sistem Operasi dan OpenWRT .
  
 
Contoh Static IP (Server Lab)
 
Contoh Static IP (Server Lab)
# /etc/netplan/01-lab.yaml
+
# /etc/netplan/01-lab.yaml
network:
+
network:
  version: 2
+
  version: 2
  ethernets:
+
  ethernets:
    enp0s3:
+
    enp0s3:
      dhcp4: no
+
      dhcp4: no
      addresses:
+
      addresses:
        - 192.168.100.10/24
+
        - 192.168.100.10/24
      gateway4: 192.168.100.1
+
      gateway4: 192.168.100.1
      nameservers:
+
      nameservers:
        addresses:
+
        addresses:
          - 8.8.8.8
+
          - 8.8.8.8
          - 1.1.1.1
+
          - 1.1.1.1
 +
 
 
Aktifkan konfigurasi:
 
Aktifkan konfigurasi:
sudo netplan apply
+
sudo netplan apply
 +
 
 
Langkah verifikasi:
 
Langkah verifikasi:
ip addr
+
ip addr
ip route
+
ip route
ping 8.8.8.8
+
ping 8.8.8.8
 +
 
 
Networking bukan sekadar “tersambung internet”, tetapi fondasi untuk routing, mesh, dan distributed system.
 
Networking bukan sekadar “tersambung internet”, tetapi fondasi untuk routing, mesh, dan distributed system.
SSH dan User Hardening
+
 
Instalasi dan Akses SSH
+
==SSH dan User Hardening==
 +
===Instalasi dan Akses SSH===
 
Ubuntu Server otomatis menyediakan OpenSSH Server. Akses awal:
 
Ubuntu Server otomatis menyediakan OpenSSH Server. Akses awal:
ssh user@192.168.100.10
+
ssh user@192.168.100.10
 
SSH adalah gerbang utama administrasi sistem, sehingga harus diamankan sejak awal.
 
SSH adalah gerbang utama administrasi sistem, sehingga harus diamankan sejak awal.
User & Privilege Separation
+
 
 +
===User & Privilege Separation===
 
Mengikuti prinsip security & isolation dalam sistem operasi modern :
 
Mengikuti prinsip security & isolation dalam sistem operasi modern :
Login sebagai user biasa
+
* Login sebagai user biasa
Gunakan sudo untuk administrasi
+
* Gunakan sudo untuk administrasi
Hindari login root langsung
+
* Hindari login root langsung
 
Nonaktifkan root login SSH:
 
Nonaktifkan root login SSH:
sudo nano /etc/ssh/sshd_config
+
sudo nano /etc/ssh/sshd_config
 +
 
 +
PermitRootLogin no
 +
PasswordAuthentication yes
  
PermitRootLogin no
 
PasswordAuthentication yes
 
 
Restart SSH:
 
Restart SSH:
sudo systemctl restart ssh
+
sudo systemctl restart ssh
  
 
Basic Hardening (Minimal tapi Penting)
 
Basic Hardening (Minimal tapi Penting)
sudo apt install ufw
+
sudo apt install ufw
sudo ufw allow ssh
+
sudo ufw allow ssh
sudo ufw enable
+
sudo ufw enable
 +
 
 
Hardening bukan paranoia, tetapi kontrol minimum agar eksperimen OS tidak berakhir dengan sistem rusak atau disusupi.
 
Hardening bukan paranoia, tetapi kontrol minimum agar eksperimen OS tidak berakhir dengan sistem rusak atau disusupi.
Package Management Modern (APT, Snap, Flatpak)
+
 
 +
==Package Management Modern (APT, Snap, Flatpak)==
 
Ubuntu 24.04 mendukung tiga paradigma manajemen paket, dan mahasiswa perlu memahami kapan menggunakan masing-masing.
 
Ubuntu 24.04 mendukung tiga paradigma manajemen paket, dan mahasiswa perlu memahami kapan menggunakan masing-masing.
APT (Advanced Package Tool)
+
 
 +
===APT (Advanced Package Tool)===
 
APT adalah tulang punggung sistem Linux.
 
APT adalah tulang punggung sistem Linux.
sudo apt update
+
sudo apt update
sudo apt upgrade
+
sudo apt upgrade
sudo apt install build-essential git curl
+
sudo apt install build-essential git curl
 +
 
 
Digunakan untuk:
 
Digunakan untuk:
Library sistem
+
* Library sistem
Kernel headers
+
* Kernel headers
Tool CLI
+
* Tool CLI
Build environment
+
* Build environment
 
Semua eksperimen kernel, OpenWRT, dan Android bergantung pada APT .
 
Semua eksperimen kernel, OpenWRT, dan Android bergantung pada APT .
Snap
+
 
 +
===Snap===
 
Snap bersifat containerized package:
 
Snap bersifat containerized package:
Cocok untuk aplikasi siap pakai
+
* Cocok untuk aplikasi siap pakai
Isolasi lebih baik
+
* Isolasi lebih baik
Update otomatis
+
* Update otomatis
sudo snap install htop
+
sudo snap install htop
 
Gunakan Snap hanya jika tidak mengganggu eksperimen low-level.
 
Gunakan Snap hanya jika tidak mengganggu eksperimen low-level.
Flatpak (Opsional)
+
 
 +
===Flatpak (Opsional)===
 
Flatpak lebih sering digunakan di desktop, jarang dipakai di server, namun penting dikenalkan sebagai konsep application sandboxing.
 
Flatpak lebih sering digunakan di desktop, jarang dipakai di server, namun penting dikenalkan sebagai konsep application sandboxing.
 +
 
Ini relevan dengan security & isolation di OS modern.
 
Ini relevan dengan security & isolation di OS modern.
Penutup
+
 
 +
==Penutup==
 
Setelah menyelesaikan bab ini, mahasiswa tidak hanya mampu menginstal Ubuntu, tetapi:
 
Setelah menyelesaikan bab ini, mahasiswa tidak hanya mampu menginstal Ubuntu, tetapi:
Memahami disk, boot, dan filesystem
+
* Memahami disk, boot, dan filesystem
Mengkonfigurasi network secara deterministik
+
* Mengkonfigurasi network secara deterministik
Menerapkan security dasar berbasis OS
+
* Menerapkan security dasar berbasis OS
Mengelola paket secara engineering-aware
+
* Mengelola paket secara engineering-aware
 
Bab ini adalah pondasi wajib sebelum masuk ke:
 
Bab ini adalah pondasi wajib sebelum masuk ke:
Linux CLI survival
+
* Linux CLI survival
Kernel compile
+
* Kernel compile
OpenWRT x86
+
* OpenWRT x86
Android x86 build
+
* Android x86 build
 
Filosofi:
 
Filosofi:
Kalau instalasi OS saja tidak dipahami, jangan berharap bisa membuat dan men-tune OS sendiri.
+
Kalau instalasi OS saja tidak dipahami, jangan berharap bisa membuat dan men-tune OS sendiri.
  
 
==Pranala Menarik==
 
==Pranala Menarik==
  
 
* [[Sistem operasi]]
 
* [[Sistem operasi]]

Latest revision as of 02:40, 14 February 2026

Bab ini membahas proses instalasi Ubuntu Server 24.04 secara sistematis, reproducible, dan engineering-oriented, bukan sekadar “klik next”. Pendekatan ini selaras dengan semangat buku Sistem Operasi karya Onno W. Purbo yang menekankan bahwa sistem operasi harus dipahami sebagai sistem yang bisa dikonfigurasi, diutak-atik, dan direkayasa, bukan kotak hitam.

Ubuntu Server 24.04 dipilih sebagai core platform karena:

  • Stabil (LTS) dan cocok untuk eksperimen jangka panjang
  • Kernel Linux modern yang mendukung container, networking advanced, dan kernel tuning
  • Ekosistem open source lengkap, tanpa ketergantungan proprietary software
  • Menjadi basis untuk OpenWRT build, kernel compile, dan Android x86 build pada bab selanjutnya

ISO Image, UEFI, dan Disk Layout

Pemilihan ISO Ubuntu Server 24.04

Ubuntu Server menggunakan installer berbasis Subiquity yang ringan dan cocok untuk server maupun VM. ISO dapat diunduh dalam arsitektur x86_64 (amd64).

Prinsip penting:

  • Gunakan Server ISO, bukan Desktop
  • Instalasi berbasis CLI-first, GUI bukan prioritas
  • Cocok untuk virtual machine (VirtualBox, KVM, GNS3) dan bare-metal

Filosofi: belajar OS dimulai dari text mode, bukan GUI .

UEFI vs Legacy BIOS

Ubuntu Server 24.04 secara default menggunakan UEFI, yang lebih modern dan konsisten. Perbedaan penting:

  • UEFI menggunakan GPT partition table
  • Mendukung secure boot (opsional)
  • Lebih stabil untuk multi-OS dan disk besar

Rekomendasi lab:

  • Aktifkan UEFI di VirtualBox
  • Nonaktifkan Secure Boot untuk kemudahan eksperimen kernel

Disk Layout (Partitioning Strategy)

Mengacu pada konsep file system & storage di buku Sistem Operasi, disk layout harus mencerminkan tujuan sistem .

Skema minimal (lab & VM):

  • / (root): 20–40 GB
  • swap: 2–4 GB (atau swapfile)
  • Filesystem: ext4

Skema engineering (direkomendasikan):

  • / → OS inti
  • /home → eksperimen user & source code
  • /var → log, container, package cache

Pisahkan data dari OS agar eksperimen kernel & tuning tidak merusak sistem utama.

Network Configuration dengan Netplan

Ubuntu modern menggunakan Netplan sebagai abstraction layer konfigurasi jaringan, menggantikan ifconfig dan interfaces lama.

Konsep Netplan

Netplan adalah YAML-based network configuration system yang:

  • Menghasilkan konfigurasi untuk systemd-networkd atau NetworkManager
  • Cocok untuk server, VM, cloud, dan lab networking
  • Mendukung static IP, routing, VLAN, bridge

Ini sejalan dengan pembahasan networking stack dan routing di buku Sistem Operasi dan OpenWRT .

Contoh Static IP (Server Lab)

# /etc/netplan/01-lab.yaml
network:
  version: 2
  ethernets:
    enp0s3:
      dhcp4: no
      addresses:
        - 192.168.100.10/24
      gateway4: 192.168.100.1
      nameservers:
        addresses:
          - 8.8.8.8
          - 1.1.1.1

Aktifkan konfigurasi:

sudo netplan apply

Langkah verifikasi:

ip addr
ip route
ping 8.8.8.8

Networking bukan sekadar “tersambung internet”, tetapi fondasi untuk routing, mesh, dan distributed system.

SSH dan User Hardening

Instalasi dan Akses SSH

Ubuntu Server otomatis menyediakan OpenSSH Server. Akses awal:

ssh user@192.168.100.10

SSH adalah gerbang utama administrasi sistem, sehingga harus diamankan sejak awal.

User & Privilege Separation

Mengikuti prinsip security & isolation dalam sistem operasi modern :

  • Login sebagai user biasa
  • Gunakan sudo untuk administrasi
  • Hindari login root langsung

Nonaktifkan root login SSH:

sudo nano /etc/ssh/sshd_config
PermitRootLogin no
PasswordAuthentication yes

Restart SSH:

sudo systemctl restart ssh

Basic Hardening (Minimal tapi Penting)

sudo apt install ufw
sudo ufw allow ssh
sudo ufw enable

Hardening bukan paranoia, tetapi kontrol minimum agar eksperimen OS tidak berakhir dengan sistem rusak atau disusupi.

Package Management Modern (APT, Snap, Flatpak)

Ubuntu 24.04 mendukung tiga paradigma manajemen paket, dan mahasiswa perlu memahami kapan menggunakan masing-masing.

APT (Advanced Package Tool)

APT adalah tulang punggung sistem Linux.

sudo apt update
sudo apt upgrade
sudo apt install build-essential git curl

Digunakan untuk:

  • Library sistem
  • Kernel headers
  • Tool CLI
  • Build environment

Semua eksperimen kernel, OpenWRT, dan Android bergantung pada APT .

Snap

Snap bersifat containerized package:

  • Cocok untuk aplikasi siap pakai
  • Isolasi lebih baik
  • Update otomatis
sudo snap install htop

Gunakan Snap hanya jika tidak mengganggu eksperimen low-level.

Flatpak (Opsional)

Flatpak lebih sering digunakan di desktop, jarang dipakai di server, namun penting dikenalkan sebagai konsep application sandboxing.

Ini relevan dengan security & isolation di OS modern.

Penutup

Setelah menyelesaikan bab ini, mahasiswa tidak hanya mampu menginstal Ubuntu, tetapi:

  • Memahami disk, boot, dan filesystem
  • Mengkonfigurasi network secara deterministik
  • Menerapkan security dasar berbasis OS
  • Mengelola paket secara engineering-aware

Bab ini adalah pondasi wajib sebelum masuk ke:

  • Linux CLI survival
  • Kernel compile
  • OpenWRT x86
  • Android x86 build

Filosofi:

Kalau instalasi OS saja tidak dipahami, jangan berharap bisa membuat dan men-tune OS sendiri.

Pranala Menarik