Debootstrap Debian Pada Mesin UEFI+GPT

So, I have a new toy; a Dell OptiPlex 5060. Dan mainan baru ini membawa tantangan baru; ia mendikte hanya bisa dipasangi sistem UEFI. Legacy BIOS hanya untuk boot dari external drive macam USB flashdisk.

Sejatinya saya tidak melihat hal berguna ditawarkan UEFI dan GPT untuk keseharian berkomputasi, jadinya selama ini bertahan dan nyaman saja memakai BIOS serta MBR. Namun seperti pemeo, semuanya berubah terkecuali perubahan itu sendiri. UEFI dan GPT sepertinya adalah masa depan dan kini saya harus tunduk terhadapnya…

Dua artikel telah saya tulis perihal memasang Debian menggunakan cara debootstrap; (1) Debootstrapping Debian Sid, dan (2) Debootstrapped Install Debian Sid di ThinkPad T520. Proses debootstrap yang kini akan dilakukan sebagian besar sama saja dengan yang telah ditulis dalam artikel terdahulu, hanya kini menggunakan bootloader yang mengenali UEFI.

Telah diniatkan untuk dualboot dalam Dell 5060 ini. Karena belum paham mengenai susunan partisi yang diperlukan sistem Windows yang memakai UEFI+GPT, saya pun telah ikhlas untuk memformat SSD yang dimiliki dan berencana memasang Windows terlebih dahulu disusul kemudian memasang Linux. Walau sebenarnya dalam SSD ini telah ada sistem yang berfungsi, namun ia menggunakan tabel partisi MBR. Katanya sih bisa mengubah MBR ke GPT tanpa melakukan format, tapi nampaknya lebih baik jika memulai dari nol saja.

Masalah perdana ditemui, installer Windows tidak serta merta mengubah MBR ke GPT. Jadi jika ia mendapati tabel partisi SSD adalah MBR, maka ia tidak akan mengubah tabel partisi tersebut ke GPT melainkan hanya akan membuat partisi-partisi yang diperlukannya saja. Terpaksa boot ke Linux Live dan menggunakan gparted untuk menghapus semua partisi dan mengubah tabel partisi SSD dari semula MBR ke GPT. Setelahnya pemasangan Windows pun berjalan lancar.

Ternyata Windows membentuk 4 partisi hanya untuk dirinya sendiri.

/dev/sda1       2048   1023999   1021952  499M Windows recovery environment
/dev/sda2    1024000   1228799    204800  100M EFI System
/dev/sda3    1228800   1261567     32768   16M Microsoft reserved
/dev/sda4    1261568 500117503 498855935  238G Microsoft basic data

Kembali boot ke Linux Live untuk memulai debootstrap. Gunakan gparted untuk mengambil sebagian /dev/sda4 untuk dijadikan partisi Linux.

/dev/sda1       2048   1023999   1021952  499M Windows recovery environment
/dev/sda2    1024000   1228799    204800  100M EFI System
/dev/sda3    1228800   1261567     32768   16M Microsoft reserved
/dev/sda4    1261568 210976767 209715200  100G Microsoft basic data
/dev/sda5  210976768 420691967 209715200  100G Linux filesystem
/dev/sda6  420691968 500117503  79425536 37.9G Linux filesystem

Partisi /dev/sda6 rencananya akan dipasangi Android-x86.

  • Langkah pertama adalah memasang debootstrap.

    sudo apt install debootstrap
    
  • Kaitkan partisi yang akan dijadikan sistem Linux.

    sudo mount /dev/sda6 /mnt
    
  • Lakukan debootstrap.

    sudo debootstrap --variant=buildd --arch amd64 sid /mnt http://deb.debian.org/debian/
    
  • Kaitkan partisi EFI

    mount /dev/sda2 /mnt/boot/efi
    
  • Bersiap untuk melakukan chroot

    mount --bind /dev /mnt/dev
    mount -t devpts /dev/pts /mnt/dev/pts
    mount -t proc proc /mnt/proc
    mount -t sysfs sysfs /mnt/sys
    mount -t tmpfs tmpfs /mnt/tmp
    
  • Berpindah root

    sudo LANG=C chroot /mnt /bin/bash
    
  • Tentukan kata kunci untuk akun root

    passwd
    
  • Tambahkan akun untuk kita sendiri, misal iza

    adduser iza
    
  • Sunting sources.list untuk menambahkan suite contrib dan non-free.

    apt edit-sources
    

    Hingga hasilnya seperti ini.

    deb http://deb.debian.org/debian/ sid main contrib non-free
    
  • Mutakhirkan sistem.

    apt update
    
  • Pasang program yang mendasar

    apt install -y nano dialog apt-listbugs tasksel linux-image-amd64 linux-headers-amd64 grub-efi
    
  • Pasang Desktop Environment dengan bantuan tasksel

    tasksel --new-install
    
    ┌────────────────────────────────────┤ Software selection ├───────────────────────────────────┐
    │ At the moment, only the core of the system is installed. To tune the system to your needs, you can         │
    │ choose to install one or more of the following predefined collections of software.                         │
    │                                                                                                            │
    │ Choose software to install:                                                                                │
    │                                                                                                            │
    │    [*] Debian desktop environment                                                                          │
    │    [ ] ... GNOME                                                                                           │
    │    [ ] ... Xfce                                                                                            │
    │    [ ] ... KDE Plasma                                                                                      │
    │    [*] ... Cinnamon                                                                                        │
    │    [ ] ... MATE                                                                                            │
    │    [ ] ... LXDE                                                                                            │
    │    [ ] ... LXQt                                                                                            │
    │    [ ] web server                                                                                          │
    │    [ ] print server                                                                                        │
    │    [ ] SSH server                                                                                          │
    │    [*] standard system utilities                                                                           │
    │                                                                                                            │
    │                                                                                                            │
    │                             <Ok>                                 <Cancel>                                  │
    │                                                                                                            │
    └──────────────────────────────────────────────────────────────────────────────────────────┘
    
  • Pasang bootloader

    grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=debian --recheck --no-nvram --removable
    
  • Pasang boot sector ke SSD

    grub-install /dev/sda
    
  • Mutakhirkan GRUB agar ia mengenali sistem operasi lain di lain partisi.

    update-grub
    
  • Selesai. Sekarang kita bisa menghidupkan ulang mesin dan menikmati sistem Debian yang anyar.