Cara Konfigurasi Kompatibilitas Biner Linux di FreeBSD

· 2 min read

Sistem FreeBSD menyediakan kompatibilitas biner Linux. Kehadiran biner Linux akan memudahkan pengguna untuk menginstal dan menjalankan biner Linux yan

Kompatibilitas biner Linux, yang sering disebut sebagai Linuxulator, adalah mekanisme untuk menjalankan biner Linux yang tidak dimodifikasi di bawah sistem FreeBSD. Linuxulator tidak melibatkan mesin virtual atau emulator. Namun sebaliknya, Linuxulator menyediakan biner dengan antarmuka kernel yang identik dengan yang disediakan oleh kernel Linux asli. Secara teknis mirip dengan cara biner FreeBSD 32-bit berjalan di atas kernel FreeBSD 64-bit.

Sistem FreeBSD menyediakan kompatibilitas biner Linux. Kehadiran biner Linux akan memudahkan pengguna untuk menginstal dan menjalankan biner Linux yang tidak dimodifikasi. Ini tersedia untuk arsitektur x86 (32 dan 64 bit) dan AArch64. Beberapa fitur sistem operasi khusus Linux belum sepenuhnya didukung. Ini karena sebagian besar terjadi dengan fungsionalitas yang khusus untuk perangkat keras atau terkait dengan manajemen sistem, seperti cgroups atau namespace.

Pengoperasian biner Linux pada FreeBSD dimulai pada tahun 1995. Aplikasi ini menggunakan format eksekusi Linux dan menyediakan tabel panggilan sistem Linux khusus. Biner Linux awal digunakan untuk memainkan gim video, Doom. Secara bertahap, banyak aplikasi dan pustaka Linux dikemas dan disediakan melalui FreeBSD Ports Collection. Namun karena perangkat FreeBSD tidak memahami dependensi paket Linux, proses ini memakan waktu dan dikonfigurasi secara manual.


Konfigurasi Kompatibilitas Biner Linux di FreeBSD


Artikel ini akan menjelaskan dan memaparkan cara mengonfigurasi dan menginstal biner Linux di FreeBSD. Artikel ini ditulis untuk melakukan hal di atas menggunakan komputer yang telah menginstal sistem FreeBSD 13.2.


1. Proses Instalasi Linux Binary

Proses instalasi biner Linux pada FreeBSD harus menggunakan port sistem yang disediakan. Ikuti langkah-langkah berikut untuk menginstal paket biner Linux pada FreeBSD.

root@ns1:~ # cd /usr/ports/emulators/linux_base-c7
root@ns1:/usr/ports/emulators/linux_base-c7 #
make install clean

Setelah proses instalasi selesai, perintah konfigurasi akan muncul dari pengembang program. Perintah ini tampak seperti di bawah ini.

====> Compressing man pages (compress-man)
===> Installing for linux_base-c7-7.9.2009_1
===> Checking if linux_base-c7 is already installed
===> Registering installation for linux_base-c7-7.9.2009_1
Installing linux_base-c7-7.9.2009_1...
Some programs need linprocfs mounted on /compat/linux/proc. Add the
following line to
/etc/fstab:

linprocfs /compat/linux/proc linprocfs rw 0 0

Then run "mount /compat/linux/proc".

Some programs need linsysfs mounted on /compat/linux/sys. Add the
following line to
/etc/fstab:

linsysfs /compat/linux/sys linsysfs rw 0 0

Then run "mount /compat/linux/sys".


Some programs need tmpfs mounted on /compat/linux/dev/shm. Add the
following line to
/etc/fstab:

tmpfs /compat/linux/dev/shm tmpfs rw,mode=1777 0 0

Then run "mount /compat/linux/dev/shm".


===> SECURITY REPORT:
This port has installed the following files which may act as network
servers and may therefore pose a remote security risk to the system.
/compat/linux/usr/bin/gawk
/compat/linux/usr/lib64/libdb-4.7.so
/compat/linux/usr/lib/libgio-2.0.so.0.5600.1
/compat/linux/usr/lib64/libdb_cxx-4.7.so
/compat/linux/usr/lib/libresolv-2.17.so
/compat/linux/usr/lib/libgssrpc.so.4.2
/compat/linux/usr/lib/libdb-5.3.so
/compat/linux/usr/lib/libcrypto.so.1.0.2k
/compat/linux/usr/lib64/libgio-2.0.so.0.5600.1
/compat/linux/usr/lib/libdb-4.7.so
/compat/linux/usr/lib64/libselinux.so.1
/compat/linux/usr/libexec/gam_server
/compat/linux/usr/lib64/libgssrpc.so.4.2
/compat/linux/usr/lib64/libcrypto.so.1.0.2k
/compat/linux/usr/lib/libselinux.so.1
/compat/linux/usr/lib64/libresolv-2.17.so
/compat/linux/usr/bin/dgawk
/compat/linux/usr/lib/libdb_cxx-4.7.so
/compat/linux/usr/lib64/libdb-5.3.so
/compat/linux/usr/bin/pgawk

If there are vulnerabilities in these programs there may be a security
risk to the system. FreeBSD makes no guarantee about the security of
ports included in the Ports Collection. Please type 'make deinstall'
to deinstall the port if this is a concern.
===> Cleaning for linux_base-c7-7.9.2009_1


Pada artikel ini saya sudah memberikan warna pada tampilan di atas, artinya kita harus melakukan pewarnaan terlebih dahulu. Oke, dengan menggunakan referensi di atas, mari kita mulai konfigurasi biner Linux. Kita buka file /etc/fstab dan edit isinya dengan memasukkan skrip di atas pada file /etc/fstab. Untuk memudahkan, gunakan editor "ee" untuk memasukkan skrip di atas.

root@ns1:~ # ee /etc/fstab
linprocfs /compat/linux/proc linprocfs rw 0 0
linsysfs /compat/linux/sys linsysfs rw 0 0
tmpfs /compat/linux/dev/shm tmpfs rw,mode=1777 0 0
devfs /compat/linux/dev devfs rw,late 0 0
fdescfs /compat/linux/dev/fd fdescfs rw,late,linrdlnk 0 0

Langkah selanjutnya adalah membuat folder /compat/linux sesuai dengan skrip di atas.

root@ns1:~ # mkdir -p /compat/linux/dev/shm
root@ns1:~ #
mkdir -p /compat/linux/proc
root@ns1:~ #
mkdir -p /compat/linux/sys
root@ns1:~ #
mkdir -p /compat/linux/dev/fd

Berikutnya, gunakan perintah "mount" untuk mengaktifkan skrip di atas.

root@ns1:~ # mount /compat/linux/proc
root@ns1:~ #
mount /compat/linux/sys
root@ns1:~ #
mount /compat/linux/dev/shm
root@ns1:~ #
mount /compat/linux/dev/fd

Setelah biner Linux berhasil dipasang, lanjutkan dengan membuat kumpulan data ZFS untuk file biner Linux.

root@ns1:~ # zfs create -o compression=on -o mountpoint=/compat zroot/compat
root@ns1:~ #
zfs snapshot -r zroot/compat@2022-04-22

Skrip di atas akan membuat sistem berkas ZFS di folder /compat. Langkah selanjutnya adalah menginstal linux-sublime-text4. Ikuti langkah-langkah di bawah ini untuk menginstal linux-sublime-text4.

root@ns1:~ # cd /usr/ports/editors/linux-sublime-text4
root@ns1:/usr/ports/editors/linux-sublime-text4 #
make install clean



2. Mengaktifkan Linux Binary

Meskipun kita sudah menginstal paket biner Linux, paket tersebut belum dapat diaktifkan. Oke, sekarang kita akan mengaktifkan paket biner Linux pada sistem FreeBSD. Buka dan edit file /boot/loader.conf lalu masukkan skrip berikut.

root@ns1:~ # ee /boot/loader.conf
zfs_load="YES"

linux_load="YES"
linux64_load="YES"
fdescfs_load="YES"
linprocfs_load="YES"
tmpfs_load="YES"
linsysfs_load="YES"

Skrip di atas akan membaca kernel Linux dan sistem berkas ZFS saat komputer dimatikan atau dihidupkan ulang. Setelah itu, kita buat skrip startup rc.d di berkas /etc/rc.conf.

root@ns1:~ # ee /etc/rc.conf
zfs_enable="YES"
kld_list="linux linux64 cuse fusefs /boot/modules/i915kms.ko"
linux_enable="YES"

Setelah skrip startup rc.d berhasil dibuat, kini Anda restart/reboot komputer.

root@ns1:~ # reboot

Tunggu hingga komputer menyala kembali secara normal. Setelah komputer aktif, pada titik ini instalasi dan konfigurasi biner Linux telah selesai. Anda dapat menggunakan paket biner Linux ini untuk menginstal Ubuntu, Debian, dan bahkan driver Kartu VGA.
Subscribe on LinkedIn Cara Konfigurasi Kompatibilitas Biner Linux di FreeBSD

Enclosures Link: Cara Konfigurasi Kompatibilitas Biner Linux di FreeBSD

Silahkan Berkomentar, Kakak...! Bunda...!

Posting Komentar