Boot – Saat ingin melakukan proses upgrade beberapa paket (termasuk kernel) melalui terminal pada server Ubuntu milik saya dengan perintah apt dist-upgrade, tiba-tiba saja saya mendapat peringatan kalau ada sesuatu yang salah dan saya diminta untuk menjalankan perintah apt -f install untuk membetulkan hal tersebut (maaf, lupa screenshot warning tersebut).
Setelah menjalankan perintah tersebut, ternyata saya tetap tidak bisa melakukan proses upgrade dan perintah yang disarankan tetap sama, yaitu menjalankan perintah apt -f install. Jadi kalau saya jalankan kembali perintah yang sama, maka yang terjadi hanyalah pengulangan yang tiada henti.
- Baca Juga: Cara Mengimpor Sertifikat ke dalam iPad
Akhirnya, saya coba mencari solusi untuk masalah tersebut. Setelah googling, ketidakmampuan server saya untuk melakukan instalasi paket atau upgrade paket diduga karena partisi /boot saya yang penuh.
Untuk melihat apakah memang benar, saya pun menjalankan perintah df -h. Ternyata benar dong, memang partisi /boot saya penuh 100%. Instalasi beberapa kernel baru yang mungkin berjalan parsial membuat kernel yang lama tidak terhapus secara otomatis. Hal tersebut membuat partisi /boot penuh dan perintah apt tidak bisa dijalankan.

Untuk mengatasi masalah ini, maka /boot harus dikurangi isinya dengan cara menghapus beberapa kernel lama yang sudah tidak terpakai lagi. Namun sebelumnya, saya terlebih dahulu melihat versi kernel terakhir yang saya gunakan agar bisa menghapus versi-versi yang sebelumnya. Untuk melihat versi kernel yang sedang digunakan oleh server, jalankan perintah:
uname -r

Jika sudah, barulah melihat daftar kernel yang berada pada partisi /boot. Caranya dengan menjalankan perintah:
sudo dpkg --list 'linux-image*'|awk '{ if ($1=="ii") print $2}'|grep -v `uname -r`
Dan hasil yang akan kalian dapatkan adalah seperti ini:

Jika sudah, sekarang waktunya untuk menghapus semua file kernel lama yang ada di /boot. Ingat, jangan masukkan versi kernel yang sedang kalian gunakan dan juga versi yang lebih terbaru dari yang sedang kalian gunakan. Contoh perintah untuk menghapus versi kernel lama dari daftar kernel yang ada di atas adalah seperti berikut:
sudo rm -rf /boot/*4.4.0-{116,128,130,133,134}-*
Setelah mengeksekusi perintah tersebut, jalankan perintah apt -f install untuk menuntaskan perintah apt yang berjalan parsial sebelumnya. Dan hasil yang akan kalian dapat pastinya adalah instalasi paket dapat dilakukan.


Berikutnya, jalankan autoremove untuk menghapus paket-paket yang masih berkaitan dengan kernel lama yang sudah dihapus sebelumnya. Caranya:
sudo apt autoremove

Langkah terakhir, lakukan update grub untuk melihat versi kernel yang tersedia sekarang:
sudo update-grub

Apabila semua proses dijalankan dengan benar, maka pada tahapan ini kalian sudah bisa melakukan instalasi paket atau upgrade paket. Namun sebelumnya, untuk membuktikan apakah benar free space pada /boot sudah bertambah, jalankan kembali perintah df -h


Jika /boot Tidak 100% Penuh dan apt Masih Berfungsi
Mungkin masih ada pertanyaan yang muncul dalam benak kalian seperti, “Contoh di atas kan kalau /boot-nya 100%. Bagaimana jika tidak 100%? Apakah caranya sama?”
Jawaban untuk pertanyaan tersebut adalah TIDAK SAMA. Untuk kasus penghapusan kernel lama dan perintah apt-nya masih berfungsi, prosedurnya jauh lebih mudah.
Cara yang pertama masih sama, yaitu mengetahui versi kernel yang digunakan sekarang dengan perintah:
uname -r
Selanjutnya, lihat daftar kernel yang berada pada partisi /boot. Caranya dengan menjalankan perintah:
sudo dpkg --list 'linux-image*'|awk '{ if ($1=="ii") print $2}'|grep -v `uname -r`

Jika sudah mendapat daftarnya, sekarang waktunya untuk menghapusnya satu persatu dengan menggunakan perintah apt purge. Sebagai contoh, dari daftar kernel di atas, saya ingin menghapus kernel versi 4.4.0-146-generic, maka perintah yang saya tulis adalah:
sudo apt purge linux-image-4.4.0-146-generic

Ketika sudah berhasil menghapus kernel yang kalian inginkan, sekarang waktunya untuk menghapus paket-paket yang masih berkaitan dengan kernel yang sudah dihapus tadi. Caranya dengan menjalankan perintah:
apt autoremove
Dan yang terakhir, jalankan perintah berikut ini untuk meng-update daftar grub kernel:
sudo update-grub

*****
Itu tadi sedikit informasi untuk menangani /boot yang terisi penuh 100% dan yang terisi penuh namun tidak 100%.
Semoga informasi tersebut bisa berguna ya.
Jika ada pertanyaan, jangan ragu untuk bertanya pada kolom komentar 🙂

Comments are closed.