Pikiran untuk mengkompilasi kernel Anda sendiri menimbulkan ketakutan di hati para pengguna Linux baru. Kedengarannya menakutkan, membangun bagian paling penting dari sistem Anda dari awal. Sebenarnya, membangun kernel Linux di Ubuntu sangat mudah.
Membangun kernel Linux tidak membutuhkan pemrograman. Beberapa programmer terbaik di dunia telah menulis semua kodenya. Anda hanya perlu memilih fitur yang Anda inginkan dan menggabungkan semuanya. Di sini kami akan menunjukkan kepada Anda cara membangun dan menginstal kernel khusus di Ubuntu.
Mendapatkan Ketergantungan
Bahkan sebelum Anda menyentuh kernel, Anda memerlukan alat yang tepat untuk membangunnya. Gunakan perintah di bawah ini untuk mengunduhnya dari repositori Ubuntu.
sudo apt install wget build-essential bison flex libncurses-dev libssl-dev libelf-dev
Mendapatkan Sumber Kernel untuk Ubuntu
Sekarang Anda dapat mengambil sumber yang ingin Anda buat. Semua kernel tersedia dari repositori resmi Linux. Anda dapat melihat rilis terbaru di repositori cdn mereka. Pada saat artikel ini dibuat, yang terbaru adalah 5.16. Anda dapat mengunduh menggunakan perintah:
cd /home/$USER/ mkdir kernelbuild cd kernelbuild wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.16.19.tar.xz
Ini akan memakan waktu cukup lama untuk mengunduh kernel, jadi bersabarlah.
Menyiapkan untuk Bangunan Anda
Mulailah pengaturan Anda dengan membuka ritsleting file tar kernel. Kemudian, salin konfigurasi kernel yang ada ke dalamnya.
tar xavf linux-5.16.19.tar.xz && cd ./linux-5.16.19 cp /boot/config-`uname -r` .config
Sekarang Anda harus menyesuaikan konfigurasi lama dengan kernel baru.
Skrip ini akan menanyakan apa yang harus Anda lakukan dengan setiap fitur baru. Jika Anda ingin menggunakan default, gunakan make olddefconfig
sebagai gantinya.
Mengonfigurasi Kernel Ubuntu
Anda dapat membiarkan konfigurasi Anda apa adanya, dan Anda mungkin akan baik-baik saja. Tidak ada gunanya membangun kernel khusus jika Anda tidak akan menyesuaikannya.
Untuk menyesuaikan konfigurasi Anda, jalankan
Menu biru akan terbuka dengan daftar kategori. Kategori tersebut berisi fitur yang dapat Anda pilih untuk dibangun ke dalam kernel Anda.
Misalnya, jika Anda benar-benar ingin membangun dukungan untuk sistem file BTRFS langsung ke dalam kernel dan mengaktifkan fitur lainnya, Anda akan pergi ke “Sistem file ->.” Kemudian, gulir ke bawah ke tempat Anda melihat “Btrfs filesystem support.” Pilih opsi yang Anda inginkan dan tekan bilah Spasi. Bilah spasi berputar antara “M”, “*”, dan kosong.
- “M” menandakan bahwa fitur tersebut akan dibangun sebagai modul yang akan dimuat jika diperlukan saat Ubuntu dimulai.
- “*” berarti fitur tersebut akan dibangun ke dalam kernel dan selalu dimuat.
Skrip tidak menyertakan opsi kosong di produk akhir. Setelah selesai mengatur semuanya, bersihkan direktori.
Sekarang kernel Anda siap untuk dibangun.
Membangun Paket Kernel untuk Ubuntu
Ada metode di Ubuntu untuk membangun kernel mereka, tetapi itu memaksa Anda untuk menggunakan skrip yang ditulis untuk versi yang lebih lama. Terkadang tidak apa-apa; lain itu rusak mengerikan. Jadi, biasanya lebih baik menggunakan metode Linux yang lebih umum dengan GNU make.
make -j `getconf _NPROCESSORS_ONLN` make deb-pkg LOCALVERSION=-custom
Semua baris itu adalah mengkompilasi kernel ke dalam paket .deb menggunakan jumlah inti CPU pada sistem Anda ditambah satu. Itu juga menambahkan “kustom” ke akhir versi paket untuk membedakan kernel kustom Anda dari yang lain.
Catatan: Diperlukan waktu berjam-jam untuk mengompilasi kernel. Bersabarlah.
Memasang Kernel
Anda akan menemukan paket kernel baru Anda satu direktori ke atas. Mereka akan mudah diidentifikasi dengan nomor versi mereka. Anda dapat gunakan dpkg
untuk menginstal mereka.
cd ./../ sudo dpkg -i linux-firmware-image-5.16.19-custom_5.16.19-custom-1_amd64.deb sudo dpkg -i linux-libc-dev_5.16.19-custom-1_amd64.deb sudo dpkg -i linux-headers-5.16.19-custom_5.16.19-custom-1_amd64.deb sudo dpkg -i linux-image-5.16.19-custom-dbg_5.16.19-custom-1_amd64.deb sudo dpkg -i linux-image-5.16.19-custom_5.16.19-custom-1_amd64.deb
Ketika instalasi selesai, restart komputer Anda. Ubuntu akan secara otomatis boot ke kernel baru Anda. Anda dapat memeriksa ulang apakah itu berhasil dengan menjalankan uname -r
di terminal saat dijalankan.
Memasang Kernel Biner Kustom
Cara lain untuk menggunakan kernel Linux khusus di Ubuntu adalah dengan menginstal versi biner yang telah dikompilasi sebelumnya. Berbeda dengan versi berbasis sumber, ini adalah salinan kernel yang telah dikompilasi untuk sistem dan arsitektur yang Anda jalankan.
Lebih lanjut, kernel biner kustom juga dapat memberi Anda fleksibilitas untuk dapat melompati versi kernel untuk instalasi Ubuntu Anda. Ini bisa sangat membantu jika Anda menjalankan mesin dengan masalah kompatibilitas perangkat keras dan Anda tidak ingin berurusan dengan kompilasi kernel Anda sendiri.
Mengetahui hal itu, cara paling populer untuk menginstal kernel biner kustom adalah melalui Mainline. Ini adalah program GUI yang dikembangkan oleh bkw777 yang bertujuan untuk merampingkan proses instalasi kernel Linux.
Di dalamnya, program ini menggabungkan semua langkah yang perlu Anda ambil untuk mengunduh dan mengkonfigurasi kernel dengan benar. Misalnya, Mainline memungkinkan Anda dengan mudah memilih biner kernel dan header yang ingin Anda instal. Ini kemudian akan menyimpan versi ini dalam cache di mana Anda dapat dengan mudah memuat dari kapan pun Anda membutuhkannya.
Menginstal Arus Utama di Ubuntu
Dengan itu, menginstal Mainline relatif mudah. Pertama, Anda perlu memberi tahu apt untuk menyertakan repositori paket Mainline. Untuk melakukannya, Anda dapat menjalankan perintah berikut dari Terminal Anda:
sudo add-apt-repository ppa:cappelikan/ppa
Dari sini, Anda perlu memperbarui direktori paket Ubuntu. Ini akan memungkinkan apt untuk membaca dari repositori yang baru saja Anda tambahkan dan, pada gilirannya, memungkinkan Anda untuk mengunduh Mainline melaluinya:
Dengan itu, satu-satunya hal yang harus dilakukan adalah menginstal Mainline itu sendiri:
sudo apt install mainline
Menggunakan Arus Utama
Setelah selesai, Anda sekarang dapat memuat Mainline dengan membuka Menu Aplikasi Anda dan mencarinya. Program Mainline kemudian akan memuat dan menampilkan semua paket kernel yang dapat Anda instal untuk sistem Anda.
Dari sana, Anda kemudian dapat memilih dan menginstal versi kernel yang ingin Anda gunakan untuk sistem Anda. Misalnya, saya dapat memilih “Linux 5.16.19” dan klik Instal di bilah sisi kanan untuk memuat versi kernel ini sepenuhnya ke mesin saya.
Di sisi lain, saya juga dapat menggunakan Mainline untuk menghapus kernel yang tidak ingin saya gunakan lagi. Sebagai contoh, saya dapat memilih “Linux 5.15” dan klik Hapus pada bilah sisi kanan yang sama untuk menghapus kernel ini dari sistem saya.
Melakukannya dengan cara ini memungkinkan Anda untuk menambahkan atau menghapus file dan binari apa pun yang terhubung dengan versi kernel itu dengan bersih. Ini karena biner kernel juga menyertakan pustaka, header, dan firmware yang, pada gilirannya, memungkinkannya berfungsi dengan baik.
Pertanyaan yang Sering Diajukan
Apa masalah menjalankan kernel khusus?
Salah satu masalah terbesar dalam menjalankan kernel khusus adalah Anda mengambil bagian penting dari sistem Anda dari pembaruan rutin. Ini berarti Anda harus menginstal semua pembaruan kernel secara manual mulai saat ini. Ini termasuk fitur perangkat keras tambahan serta pembaruan keamanan penting.
Ini bisa menjadi masalah jika Anda membutuhkan sistem yang berjalan dan memelihara dirinya sendiri dengan intervensi pengguna yang minimal. Dengan demikian, menjalankan kernel khusus tidak hanya mengharuskan Anda untuk mengetahui fitur kernel apa yang Anda inginkan, tetapi juga mengetahui pembaruan penting.
Apakah ada kerugian menggunakan biner kernel?
Ya. Salah satu kelemahan utama menggunakan biner kernel adalah Anda tidak memiliki kontrol apa pun dengan fitur bawaannya. Ini berarti, tidak seperti kernel berbasis sumber, biner kernel tidak akan berisi optimasi dan dukungan khusus perangkat keras.
Ini berarti jika Anda berniat menggunakan perangkat keras yang eksotis dengan Ubuntu. Anda perlu mengkompilasi kernel Anda dari awal.
Apakah lebih baik mengkompilasi fitur kernel sebagai modul atau built-in?
Ini sangat tergantung pada apa yang Anda ingin gunakan untuk kernel Anda. Misalnya, mengkompilasi fitur sebagai fitur bawaan akan memastikan fitur tersebut akan segera dimuat setelah kernel dimuat ke dalam memori. Namun, melakukannya dengan cara ini akan meningkatkan ukuran keseluruhan dari kernel akhir.
Sementara itu, mengkompilasi fitur sebagai modul akan menghapusnya dari kernel dasar. Sebagai gantinya, modul ini kemudian dimuat setelah kernel sudah ada di memori. Ini mengurangi ukuran file dari kernel akhir yang, pada gilirannya, membuatnya cepat dan aman.
Mengetahui hal itu, adalah praktik yang baik untuk mengkompilasi fitur kernel sebagai bawaan karena mengurangi kemungkinan masalah dengan kompatibilitas di sistem Anda. Namun, Anda juga harus berhati-hati dalam memasukkan terlalu banyak fitur karena melakukannya akan meningkatkan ukuran keseluruhan kernel Anda secara signifikan.
Apakah artikel ini bermanfaat?
Berlangganan newsletter kami!
Tutorial terbaru kami dikirim langsung ke kotak masuk Anda