Mempercepat proses booting di openSuse


Sejak menggunakan harddisk tipe SSD pada Agustus tahun lalu, waktu booting laptop lenovo saya semakin cepat. Tidak ada lagi waktu untuk menyiapkan kopi sambil menunggu laptop selesai melakukan proses booting. Tapi kemudian negara api menyerang. Waktu booting tiba-tiba melambat. Ada apa ini?

Dari hasil `systemd-analyze`, waktu booting paling makan waktu di bagian initrd. Ada apa ini sebenarnya?

Startup finished in 5.977s (firmware) + 2.371s (loader) + 3.476s (kernel) + 1min 30.420s (initrd) 
+ 6.158s (userspace) = 1min 48.405s

Sudah beberapa kali googling masih belum ketemu solusinya. Untung di bulan yang penuh rahmat ini, akhirnya saya dapat petunjuk. Dari pertanyaan di forum openSuse ini, ternyata bukan saya saja yang mengalaminya. Dari forum itu, hinggaplah saya di tautan ini.

Dari halaman bugzilla itu, Pak Daniel melihat ada keanehan dari hasil perintah `journalctl –system -a`. Karena penasaran, saya pun coba lihat hasil journalctl punya laptop ini. Hasilnya seperti ini:

$ sudo journalctl --system -a | grep /dev/disk/by-uuid/
...
Jun 03 12:19:03 bunglon kernel: Command line: BOOT_IMAGE=/boot/vmlinuz-4.4.62-18.6-default root=UUID=50fea2c0-f744-465c-84a3-8171ce925190 ro resume=/dev/disk/by-uuid/81f39963-dc7d-48c7-a814-cdd095a4961e splash=silent quiet showopts
Jun 03 12:19:03 bunglon kernel: Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.4.62-18.6-default root=UUID=50fea2c0-f744-465c-84a3-8171ce925190 ro resume=/dev/disk/by-uuid/81f39963-dc7d-48c7-a814-cdd095a4961e splash=silent quiet showopts
Jun 03 12:19:03 bunglon kernel: PM: Checking hibernation image partition /dev/disk/by-uuid/81f39963-dc7d-48c7-a814-cdd095a4961e
Jun 03 12:19:03 bunglon dracut-cmdline[115]: Using kernel command line parameters: resume=UUID=43151756-1054-4b58-b9c7-90d92b2781bb resume=UUID=086d7ddb-f936-459d-accf-f77c29484828 root=UUID=50fea2c0-f744-465c-84a3-8171ce925190 rootfstype=ext4 rootflags=rw,relatime,data=ordered BOOT_IMAGE=/boot/vmlinuz-4.4.62-18.6-default root=UUID=50fea2c0-f744-465c-84a3-8171ce925190 ro resume=/dev/disk/by-uuid/81f39963-dc7d-48c7-a814-cdd095a4961e splash=silent quiet showopts
Jun 03 12:20:33 bunglon systemd[1]: Dependency failed for Resume from hibernation using device /dev/disk/by-uuid/81f39963-dc7d-48c7-a814-cdd095a4961e.
...

Wah masalahnya sama! Karena penasaran, saya cek partisi mana yang punya uuid ini: `/dev/disk/by-uuid/81f39963-dc7d-48c7-a814-cdd095a4961e`. Hasilnya? Ternyata partisi itu tidak ada!

$ ls -l /dev/disk/by-uuid/81f39963-dc7d-48c7-a814-cdd095a4961e
ls: tidak dapat mengakses '/dev/disk/by-uuid/81f39963-dc7d-48c7-a814-cdd095a4961e': Tidak ada 
berkas atau direktori seperti itu

$ dmsetup info /dev/disk/by-uuid/81f39963-dc7d-48c7-a814-cdd095a4961e
/dev/mapper/control: open failed: Ijin ditolak
Failure to communicate with kernel device-mapper driver.
Incompatible libdevmapper (unknown version) and kernel driver (unknown version).
Command failed

Ya pantas saja bootingnya lama, karena sistem menunggu siapa tahu si partisi yang tidak ada itu dapat dihidupkan kembali dari tidur panjangnya alias hibernate.

Bagaimana mengatasinya? Yang paling mudah ya hapus parameter `resume=/dev/disk/by-uuid/81f39963-dc7d-48c7-a814-cdd095a4961e` saat booting. Begini yang saya lakukan:

  1. Buka YasT -> pilih Boot loader
  2. Pada tab Parameter Kernel, hapus resume=/dev/disk/by-uuid/81f39963-dc7d-48c7-a814-cdd095a4961e
    parameter kernell -YasT
    parameter kernell -YasT
  3. Klik OK, nanti YasT akan membuatkan initrd yang baru

    Proses membuat initrd
    Proses membuat initrd

Untuk melihat perbedaannya, silakan nyalakan ulang laptopnya. Lalu bandingkan hasilnya dengan mengecek hasil systemd-analyze. Di laptop saya, ini hasilnya:

$ systemd-analyze
Startup finished in 5.694s (firmware) + 4.784s (loader) + 2.334s (kernel) + 3.091s (initrd) 
+ 4.037s (userspace) = 19.942s

Horee berhasil.. Kini tak ada waktu lagi untuk buat kopi saat booting laptop 😀

 


Ada komentar?

This site uses Akismet to reduce spam. Learn how your comment data is processed.