Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Tutorial Membuat Install Ubuntu jadi unattended

Posted on May 22, 2024

Melakukan instalasi berulang dan dapat diduplikasi untuk sistem operasi sangat penting, terutama di lingkungan perusahaan. Untuk melakukan instalasi tanpa pengawasan, Ubuntu sebelumnya mendukung file Debian preseed dan Kickstart. Namun, mulai dari Ubuntu Server 20.04 dan versi 23.04 Ubuntu Desktop, metode instalasi tersebut sudah tidak digunakan lagi, dan distribusi ini mengadopsi format autoinstall baru yang memanfaatkan cloud-init.

Dalam tutorial ini, kita akan belajar cara menulis file autoinstall Ubuntu dan cara menggunakannya untuk melakukan instalasi tanpa pengawasan dan dapat diduplikasi.

Dalam tutorial ini Anda akan belajar:

  • Cara menulis file autoinstall dan menentukan instalasi Ubuntu dalam segala aspeknya
  • Cara meneruskan file autoinstall ke installer desktop dan server Ubuntu
  • Cara menulis dan melakukan instalasi Ubuntu tanpa pengawasan dengan autoinstall

Perangkat Lunak dan Prasyarat

  • Sistem: Ubuntu Server >= 20.04 / Ubuntu Desktop >= 23.04
  • Perangkat Lunak: Tidak ada perangkat lunak khusus yang dibutuhkan
  • Lainnya: Tidak ada

Konvensi:

  • # – Memerlukan perintah linux-commands tertentu untuk dijalankan dengan hak akses root, baik secara langsung sebagai pengguna root atau dengan menggunakan perintah sudo.
  • $ – Memerlukan perintah linux-commands tertentu untuk dijalankan sebagai pengguna biasa tanpa hak istimewa.

Pengenalan File Autoinstall

Sebagai distribusi turunan Debian, Ubuntu awalnya mendukung file preseed sebagai metode untuk melakukan instalasi tanpa pengawasan dan dapat diduplikasi. Dukungan untuk sintaks instalasi Kickstart kemudian ditambahkan sebagai lapisan kompatibilitas, tetapi tidak semua perintah Kickstart diimplementasikan. Mulai dari Ubuntu Server 20.04, dan sejak Ubuntu Desktop 23.04, Ubuntu mengadopsi metode instalasi otomatisnya sendiri, berdasarkan sintaks YAML: autoinstall.

Hal pertama yang biasanya kita lihat dalam file autoinstall adalah komentar “#cloud-config”: ini diperlukan jika kita ingin file tersebut diproses oleh cloud-init (lebih lanjut tentang ini nanti). Key utama yang digunakan dalam file konfigurasi adalah autoinstall; versi sintaks file, sebaliknya, ditentukan dengan key version. Saat penulisan ini, hanya versi 1 yang tersedia:

YAML

#cloud-config
autoinstall:
  version: 1

Use code with caution.content_copy

Memilih Sumber

Untuk menentukan “lingkungan” yang ingin kita instal, kita dapat menggunakan key source, yang menggunakan pemetaan sebagai nilainya. Di dalam pemetaan ini, kita meneruskan nama lingkungan yang ingin kita instal sebagai nilai dari key id. Saat menginstal desktop Ubuntu, misalnya, kita dapat memilih antara “ubuntu-minimal-desktop” dan “ubuntu-desktop” lengkap. Jika key dihilangkan, sumber pertama yang tersedia akan digunakan:

YAML

#cloud-config
autoinstall:
  source:
    id: ubuntu-desktop-minimal

Use code with caution.content_copy

Mengatur Lokal Sistem, Zona Waktu, dan Tata Letak Keyboard

Untuk mengatur lokal sistem, kita menggunakan key locale. Sebaliknya, pengaturan keyboard ditentukan melalui key keyboard. Key ini menggunakan pemetaan sebagai nilai; dalam contoh di bawah ini kita hanya menentukan layout yang ingin kita gunakan (us); dimungkinkan juga untuk menentukan parameter lain, seperti varian layout. Terakhir, untuk mengatur zona waktu sistem, kita menggunakan key timezone:

YAML

#cloud-config
autoinstall:
  locale: en_US.UTF-8
  keyboard:
    layout: us
  timezone: Europe/Rome

Use code with caution.content_copy

Konfigurasi Antarmuka Jaringan

Untuk mengkonfigurasi jaringan sistem, kita menggunakan key network, menggunakan sintaks netplan. Dalam contoh di bawah ini, saya menentukan bahwa saya ingin antarmuka Ethernet enp1s0 dikonfigurasi secara otomatis melalui dhcp4:

YAML

#cloud-config
autoinstall:
  network:
    version: 2
    ethernets:
      enp1s0:
        dhcp4: true

Use code with caution.content_copy

Konfigurasi Nama Host dan Pengguna Awal Sistem

Untuk menggunakan sistem kita dengan aman, kita perlu membuat setidaknya satu pengguna tanpa hak istimewa. Kita juga perlu mengatur nama host sistem. Kedua aspek ini dikelola melalui key identity. Key ini menggunakan pemetaan sebagai nilai; kita mendefinisikan username, password, dan hostname, dengan key masing-masing:

YAML

#cloud-config
autoinstall:
  identity:
    username: egidio
    hostname: linuxconfig
    password: '$6$mzOdSSVUfhWRNhcX$mkm.drDfOLfpZRX/58ouJqMvit

Use code with caution.

Konfigurasi Server SSH

Dalam file autoinstall, kita memiliki kesempatan untuk menentukan apakah kita ingin menginstal dan mengkonfigurasi server SSH. Kita dapat mengaktifkan atau menonaktifkan autentikasi kata sandi, dan akhirnya meneruskan daftar kunci publik resmi yang akan ditambahkan ke file authorized_keys pengguna awal:

YAML

#cloud-config
autoinstall:
  ssh:
    install-server: true
    allow-pw: true
    authorized-keys: []

Use code with caution.content_copy

Menginstal Paket Tambahan

Untuk menentukan daftar paket tambahan yang akan ditarik oleh pengelola paket apt-get sebagai bagian dari instalasi sistem, kita dapat menggunakan key packages. Berikut adalah contohnya:

YAML

#cloud-config
autoinstall:
  packages:
    - git
    - python3-pip

Use code with caution.content_copy

Untuk menginstal paket snap, sebaliknya, kita menggunakan kata kunci snaps. Kata kunci ini menerima daftar pemetaan sebagai nilai. Dalam setiap pemetaan, kita menggunakan key name, channel, dan classic untuk menentukan, masing-masing, nama paket snap yang akan diinstal, saluran dari mana snap akan diinstal (defaultnya adalah “stable”), dan apakah paket snap akan diinstal dalam mode klasik (defaultnya adalah “false”):

YAML

#cloud-config
autoinstall:
  snaps:
    - name: pycharm-community
      channel: stable 
      classic: true

Use code with caution.content_copy

Menentukan Aksi Pasca-Instalasi

Untuk menentukan aksi pasca-instalasi, kita menggunakan key shutdown. Key ini menerima dua nilai yang mungkin: “poweroff” dan “reboot”:

YAML

#cloud-config
autoinstall:
  shutdown: reboot

Use code with caution.content_copy

Menentukan Pengaturan Penyimpanan

Salah satu aspek terpenting dari instalasi sistem adalah pengaturan partisi. Saat menginstal Ubuntu secara interaktif, kita dapat memilih di antara beberapa tata letak yang telah ditentukan sebelumnya, atau membuat pengaturan khusus. Kita dapat melakukan hal yang sama saat melakukan instalasi otomatis. Tata letak yang telah ditentukan sebelumnya yang tersedia adalah: lvm, direct, dan zfs.

Tata letak lvm adalah default: tata letak ini membuat partisi standar EFI (dalam kasus sistem UEFI modern) dan boot, dan menginstal sisa sistem pada volume logis LVM. Ukuran volume logis root ditentukan menurut kebijakan: ketika diatur ke “scaled” (default), jumlah ruang yang dialokasikan ke volume logis tergantung pada ukuran grup volume. Bila memungkinkan, beberapa ruang dibiarkan tidak digunakan, untuk memungkinkan pembuatan snapshot:

Ukuran Grup VolumeUkuran LV Root
Kurang dari 10 GiB100% dari ruang yang tersedia
Antara 10 GiB dan 20 GiB10 GiB
Antara 20 GiB dan 200 GiB50% dari ruang yang tersedia
Lebih dari 200 GiB100 GiB

drive_spreadsheetExport to Sheets

Ketika kebijakan diatur ke “all”, sebaliknya, semua ruang yang tersedia dialokasikan ke volume logis root. Dalam konteks ini, key password dapat digunakan untuk mengaktifkan enkripsi LUKS, dan untuk memberikan kata sandi enkripsi:

YAML

#cloud-config
autoinstall:
  storage:
    layout:
      name: lvm
      policy: all
      password: mysecretpassword

Use code with caution.content_copy

Tata letak direct menginstal Ubuntu pada partisi standar. Pada sistem UEFI, tata letak ini membuat partisi EFI dengan ukuran 1 GiB, dan mengalokasikan sisa ruang ke partisi root.

Terakhir, tata letak zfs menginstal sistem pada kumpulan ZFS, membuat beberapa volume. Di bawah ini Anda dapat melihat tangkapan layar pengaturan zfs setelah instalasi Ubuntu baru:

Memilih Disk untuk Instalasi

Selain tata letak partisi, kita dapat secara eksplisit mengatur disk mana yang akan digunakan untuk instalasi. Kita melakukan ini melalui key match. Kita dapat memilih disk berdasarkan jalur, vendor, model, serial, dan lainnya. Jika kata kunci dihilangkan, instalasi terjadi pada disk terbesar yang tersedia. Dalam contoh di bawah ini, kita memilih disk berdasarkan jalur (/dev/vda):

YAML

#cloud-config
autoinstall:
  storage:
    layout:
      name: lvm
      match:
        path: /dev/vda

Use code with caution.content_copy

Membuat Tata Letak Kustom

Untuk mendefinisikan tata letak partisi kustom, kita menggunakan kata kunci config. Kata kunci ini menerima daftar pemetaan sebagai nilai, masing-masing menggambarkan perintah dari installer curtin.

Memilih Disk untuk Instalasi

Selain tata letak partisi, kita dapat secara eksplisit mengatur disk mana yang akan digunakan untuk instalasi. Kita melakukan ini melalui key match. Kita dapat memilih disk berdasarkan jalur, vendor, model, serial, dan lainnya. Jika kata kunci dihilangkan, instalasi terjadi pada disk terbesar yang tersedia. Dalam contoh di bawah ini, kita memilih disk berdasarkan jalur (/dev/vda):

YAML

#cloud-config
autoinstall:
  storage:
    layout:
      name: lvm
      match:
        path: /dev/vda

Use code with caution.content_copy

Membuat Tata Letak Kustom

Untuk mendefinisikan tata letak partisi kustom, kita menggunakan kata kunci config. Kata kunci ini menerima daftar pemetaan sebagai nilai, masing-masing menggambarkan perintah dari installer curtin. Mari kita lihat contoh. Misalkan kita ingin menginstal Ubuntu pada pengaturan LVM LUKS, dengan membuat partisi berikut:

  • Sebuah partisi EFI kecil 600 MiB, diformat dalam fat32, untuk dipasang di /boot/efi
  • Partisi boot 1 GiB, diformat dalam ext4 untuk dipasang di /boot
  • Partisi ketiga yang membentang di sisa ruang, dienkripsi dengan LUKS, dan digunakan sebagai volume fisik LVM
  • Satu volume logis LVM 45 GiB untuk dipasang di /
  • Satu volume logis LVM 50 GiB untuk dipasang di /home

Berikut adalah cara kita melakukannya. Hal pertama yang perlu kita lakukan adalah menggunakan perintah disk. Ini digunakan untuk menyiapkan disk, dan membuat tabel partisi:

YAML

#cloud-config
autoinstall:
  storage:
    config:
      - id: disk-vda
        type: disk
        ptable: gpt
        path: /dev/vda
        wipe: superblock-recursive

Use code with caution.content_copy

Dengan kata kunci id, kita memberikan pengenal untuk bagian dan perintah: ini memungkinkan kita untuk mereferensikan disk saat menggunakan perintah lain. Dengan kata kunci type, sebaliknya, kita menentukan perintah yang ingin kita jalankan, yang dalam hal ini adalah “disk”.

Ketika key ptable hadir, tabel partisi tipe yang ditentukan dibuat pada disk. Dalam hal ini kita menggunakan “gpt” sebagai nilainya. Kata kunci path digunakan untuk mengidentifikasi disk berdasarkan jalurnya (/dev/vda).

Kata kunci wipe sangat penting: saat digunakan, ini menghancurkan konten disk atau partisi. Ada banyak jenis “wipe” yang dapat kita gunakan: superblock, superblock-recursive, zero, random, dan pvremove. Kita menggunakan superblock ketika kita ingin menghapus hanya superblock disk, dan superblock-recursive ketika kita ingin menghapus juga eventual embed superblock (mereka mungkin ada saat menggunakan LVM, misalnya). Menggunakan wipe zero atau random, kita dapat menimpa disk dengan nol atau data acak, masing-masing. Terakhir, pvremove secara khusus menghapus metadata LVM untuk memastikan disk bukan bagian dari pengaturan LVM. Dalam contoh di atas, kita menggunakan superblock-recursive, yang seharusnya cukup dalam banyak kasus.

Membuat Partisi Standar dengan Perintah “partition”

Sekarang kita perlu membuat tiga partisi “standar” pada disk. Yang pertama adalah partisi EFI, yang kedua adalah partisi yang akan dipasang di /boot, dan yang ketiga adalah partisi yang akan dienkripsi dengan LUKS, dan digunakan sebagai volume fisik LVM. Untuk membuat partisi, kita menggunakan perintah partition. Dalam contoh di bawah ini, demi kejelasan, kita fokus pada perintah saat ini, menghilangkan perintah yang kita gunakan sebelumnya:

YAML

#cloud-config
autoinstall:
  storage:
    config:
      # [...]

      - id: efipart
        type: partition
        device: disk-vda
        offset: 1048576
        size: 600M
        flag: boot
        grub_device: true

      - id: bootpart
        type: partition
        device: disk-vda
        size: 1G

      - id: pvpart
        type: partition
        device: disk-vda
        size: -1

Use code with caution.content_copy

Karena partisi “efipart” adalah yang pertama, kita menggunakan kata kunci offset untuk memastikan dibuat pada 1MiB dari awal disk (nilainya diberikan dalam byte: 1048576). Kita menggunakan kata kunci flag untuk menentukan flag yang akan disetel pada partisi, “boot” dalam hal ini. Terakhir, kita menggunakan kata kunci grub_device untuk memastikan GRUB diinstal pada partisi.

Dalam semua definisi,tunesharemore_vert

Terbaru

  • Apa Maksud Hukum Dasar yang Dijadikan Pegangan dalam Penyelenggaraan Suatu Negara? Ini Jawabannya
  • Apakah Apk Puskanas Penipuan?
  • Inilah 10 Alternatif Mesin Pencari Selain Yandex yang Anti Blokir dan Aman Digunakan
  • Caranya Supaya WhatsApp Nggak Kena Spam Terus Meski Sudah Ganti Nomor, Ternyata Ini Rahasianya!
  • Jangan Tergiur Harga Murah! Inilah Deretan Risiko Fatal Membeli iPhone Lock iCloud
  • Mudik Gratis Pemprov Jateng 2026? Ini Pengertian dan Alur Lengkapnya
  • Inilah Cara Cek KIS Aktif Atau Tidak Lewat HP dan Solusi Praktis Jika Kepesertaan Nonaktif
  • Apa tiu Keberagaman? dan Kenapa Kita Butuh Perbedaan
  • Inilah Rekomendasi Tablet RAM 8 GB Paling Murah 2026 Buat Kerja dan Kuliah!
  • Ini Bocoran Honorable Mention TOTY FC Mobile OVR 117 dan 34 Kode Redeem Paling Baru!
  • Inilah Cara Memilih Smartband GPS Terbaik Biar Olahraga Kalian Makin Efektif!
  • Cara Cek Garansi iPhone dengan Benar, Penting Banget Buat yang Mau Beli HP Baru atau Bekas!
  • Inilah Infinix Note 60 Pro, HP Midrange yang Punya Desain Mirip iPhone dan Fitur Unik ala Nothing Phone!
  • Cara Mengatasi Digi Bank BJB Error dan Nggak Bisa Dibuka!
  • Inilah Kronologi & Kenapa Link Video Viral Andira McQueen di Dalam Mobil yang Bikin Geger Netizen Makassar
  • Cara Input Dapodik 2026 Biar Sekolah Masuk Prioritas Revitalisasi 2026
  • Apa Itu Kurikulum Berbasis Cinta (KBC)? Ini Penjelasan dan Cara Penerapannya
  • Inilah Cara Mengurus SKTM KIP Kuliah 2026 yang Benar Agar Lolos Seleksi!
  • Kapan Waktu Resmi Jam Maintenance Livin Mandiri?
  • WiFi Sudah Nyambung Tapi Internet Kok Nggak Jalan? Ini Cara Supaya Koneksi Kalian Lancar Lagi!
  • Inilah Kumpulan Cheat GTA San Andreas Terlengkap 2026!
  • Belum Kebagian Tiket Mudik? Inilah Bocoran Jadwal Tiket Kereta Tambahan Lebaran 2026!
  • Apa itu Pengertian Web Scraping?
  • Cara Isi Instrumen Pengelolaan Pengawas TKA Lancar Jaya Tanpa Masalah
  • Cara Isi Instrumen MBG di Healthy Madrasah/EMIS Tahun 2026
  • Inilah Cara Mengatasi Rekening Tidak Valid di Info GTK 2026 Biar Tunjangan Cair
  • Cara Isi Observasi Kinerja Kepala Sekolah di Ruang GTK 2026, Biar Nggak Bingung Lagi!
  • Inilah Cara Atasi SKTP Januari-Februari 2026 yang Belum Muncul di Info GTK
  • Pusing Rekening Info GTK Silang Merah? Tenang, Ini Cara Mengatasinya Biar Tunjangan Kalian Cepat Cair!
  • Cara Jadi Lebih Sehat Dengan Ponsel Pintar Kalian
  • How to Launch Your Own Cloud Hosting Platform with ClawHost
  • Notepad Remote Code Execution CVE-2026-20841 Explained
  • Crossover 26 Released: New Features for Linux Users
  • Cosmic Desktop 1.0.6 Released: What’s New for Linux Users?
  • MOS: A New Open-Source OS for Home Labs and Self-Hosting
  • Prompt AI Audit Konten Sesuai Karakter Brand
  • Prompt AI Merubah Postingan LinkedIn Jadi Ladang Diskusi dengan ChatGPT
  • Prompt AI: Paksa Algoritma LinkedIn Promosikan Konten Kalian
  • Inilah Cara Bikin Postingan Viral Menggunakan AI
  • Inilah Cara Buat Conversation Starter di Claude Project Agar Workflow Kalian Lebih Sat-Set
  • Apa itu Spear-Phishing via npm? Ini Pengertian dan Cara Kerjanya yang Makin Licin
  • Apa Itu Predator Spyware? Ini Pengertian dan Kontroversi Penghapusan Sanksinya
  • Mengenal Apa itu TONESHELL: Backdoor Berbahaya dari Kelompok Mustang Panda
  • Siapa itu Kelompok Hacker Silver Fox?
  • Apa itu CVE-2025-52691 SmarterMail? Celah Keamanan Paling Berbahaya Tahun 2025
Beli Pemotong Rumput dengan Baterai IRONHOOF 588V Mesin Potong Rumput 88V disini https://s.shopee.co.id/70DBGTHtuJ
Beli Morning Star Kursi Gaming/Kantor disini: https://s.shopee.co.id/805iTUOPRV

©2026 emka.web.id | Design: Newspaperly WordPress Theme