Pengembang dan pengelola paket mungkin tidak selalu membuat paket untuk semua distribusi Linux. Beberapa paket mungkin hanya tersedia untuk platform Linux tertentu. Dalam kasus seperti itu, Anda dapat menggunakan alat konversi paket seperti Alien untuk dengan mudah mengkonversi paket Linux ke format yang berbeda. Dalam panduan ini, kita akan melihat apa itu Alien, bagaimana menginstal Alien di berbagai sistem operasi Linux dan kemudian bagaimana mengkonversi paket Linux dari satu format ke format lain menggunakan konverter paket Alien.
Apa itu Alien?
Alien adalah konverter paket baris perintah yang mengkonversi antara format paket Linux yang berbeda seperti Red Hat rpm, Debian deb, Stampede slp, Slackware tgz, dan Solaris pkg dll.
Alien saat ini mendukung format paket berikut:
- Linux Standard Base (LSB),
- Sesuai dengan LSB
.rpm
paket, .deb
,- Menyerang (
.slp
), - Solaris (
.pkg
) - Slackware (
.tgz
,.txz
,.tbz
, .tlz
).
Program asing datang dalam penyelamatan ketika paket tertentu atau versi tertentu dari sebuah paket tidak tersedia untuk distribusi Linux Anda. Anda dapat dengan mudah mengonversi paket tersebut ke format paket pilihan Anda menggunakan Alien dan menginstalnya di sistem Anda.
Alien tidak hanya pengonversi paket, ia juga dapat menginstal paket yang dihasilkan secara otomatis setelah konversi paket. Ia bahkan dapat memiliki opsi untuk mengonversi skrip yang dimaksudkan untuk dijalankan ketika paket diinstal. Anda harus berhati-hati saat menggunakan opsi ini. Anda harus memeriksa skrip dengan cermat dan memeriksa apa yang dilakukan skrip ini sebelum menggunakan opsi ini.
Perhatian: Alien tidak boleh digunakan untuk mengonversi paket sistem penting, seperti init , libc , yang diperlukan untuk berfungsinya sistem Linux Anda. Paket sistem yang dirancang khusus untuk distribusi Linux tertentu tidak dapat digunakan secara bergantian dan dapat merusak sistem Anda jika Anda mencoba menginstalnya secara paksa.
Instal Alien di Linux
Konverter paket alien tersedia di repositori default distribusi Linux populer.
Untuk menginstal Alien di Alpine Linux, jalankan:
$ sudo apk add alien
Instal Alien di Debian, Ubuntu LTS, Linux Mint, Pop!_OS:
$ sudo apt install alien
Instal Alien di Fedora:
$ sudo dnf install alien
Instal Alien di CentOS 8, RHEL 8, AlmaLinux 8, Rocky Linux 8:
$ sudo dnf install epel-release
$ sudo dnf install alien
Konversi paket Linux menggunakan Alien
Sintaks umum untuk mengonversi paket Linux menggunakan Alien dari satu format ke format lainnya adalah:
alien [--to-deb] [--to-rpm] [--to-tgz] [--to-slp] [options] file [...]
Mengonversi paket menggunakan Alien sangat mudah!
Untuk mengonversi .rpm
paket ke dalam .deb
paket, jalankan alien sebagai root
atau sudo
pengguna:
$ sudo alien --to-deb /path/to/file.rpm
Demikian pula, untuk mengonversi .deb
file ke .rpm
, jalankan:
$ sudo alien --to-rpm /path/to/file.deb
Berikut adalah daftar flag yang didukung untuk mengonversi paket Linux ke format yang berbeda.
-d
,--to-deb
- Membuat paket debian. Ini adalah default.-r
,--to-rpm
- Membuat paket rpm.-l
,--to-lsb
- Membuat paket LSB.-t
,--to-tgz
- Membuat paket tgz.--to-slp
- Membuat paket slp.-p
,--to-pkg
- Membuat paket Solaris pkg.
Mari kita lihat beberapa contoh. Untuk tujuan panduan ini, saya akan menggunakan hello world .rpm
kemasan. Harap diperhatikan bahwa hello
package dikemas untuk hampir semua distribusi Linux. Jadi Anda tidak perlu mengubahnya. Saya menggunakannya hanya untuk demonstrasi.
Konversi paket RPM ke paket DEB menggunakan Alien
Sekarang mari kita ubah paket hello rpm menjadi .deb
format menggunakan Alien seperti di bawah ini:
$ sudo alien --to-deb hello-2.10-5.fc34.x86_64.rpm
Atau sebentar lagi,
$ sudo alien -d hello-2.10-5.fc34.x86_64.rpm
Ini akan mengonversi .rpm
yang diberikan paket ke .deb
paket dan simpan paket yang dihasilkan di direktori saat ini.
Perhatian: Jika tidak ada flag yang ditentukan, Alien akan mengonversi paket menjadi .deb
format secara default.
Anda dapat menginstal paket yang dihasilkan menggunakan manajer paket default.
Kami juga dapat mengonversi beberapa paket sekaligus. Perintah berikut akan mengonversi paket yang diberikan (halo &vim) menjadi .deb
formatnya.
$ sudo alien hello-2.10-7.x86_64.rpm vim-enhanced-8.2.2637-1.fc34.x86_64.rpm
Konversi paket DEB ke paket RPM menggunakan Alien
Demikian pula, kita dapat mengonversi .deb
paket ke .rpm
file paket seperti di bawah ini:
$ sudo alien --to-rpm hello-2.10-5.fc34.x86_64.rpm
Atau sebentar lagi,
$ sudo alien -r hello-2.10-5.fc34.x86_64.rpm
Instal paket secara otomatis
Terkadang, Anda mungkin ingin menginstal paket yang dihasilkan secara otomatis.
Untuk mengonversi paket dan menginstalnya secara otomatis dengan Alien, gunakan -i
bendera.
$ sudo alien -d -i hello-2.10-7.x86_64.rpm
Perintah ini akan mengonversi paket .rpm yang diberikan ke format paket .deb dan kemudian menginstalnya, dan akhirnya menghapus paket yang dihasilkan.
Contoh keluaran:
dpkg --no-force-overwrite -i hello_2.10-8_amd64.deb Selecting previously unselected package hello. (Reading database ... 52712 files and directories currently installed.) Preparing to unpack hello_2.10-8_amd64.deb ... Unpacking hello (2.10-8) ... Setting up hello (2.10-8) ... Processing triggers for man-db (2.9.4-2) ...
Konversi ke beberapa format paket
Alien dapat membuat beberapa format file paket dari satu file paket. Contoh berikut menunjukkan cara membuat .deb
, dan .tgz
paket dari .rpm
berkas.
$ sudo alien --to-deb --to-tgz hello-2.10-7.x86_64.rpm
Simpan nomor versi
Secara default, Alien menambahkan satu ke nomor versi minor dari setiap paket yang dikonversi. Misalnya, jika nomor versi 1.2-3, Alien akan menambahkan satu ke versi minor dan mengubahnya menjadi 1.2-4.
Perhatikan output perintah berikut.
$ sudo alien --to-deb hello-2.10-7.x86_64.rpm hello_2.10-8_amd64.deb generated
Versi paket sumber pada perintah di atas adalah 2.10.7. Setelah konversi paket, Alien mengubah versi minor dari 7 menjadi 8 di file target.
Jika Anda tidak ingin Alien mengubah nomor versi, gunakan -k
, --keep-version
tandai untuk menyimpan nomor versi asli dalam paket yang dihasilkan.
$ sudo alien -k --to-deb hello-2.10-7.x86_64.rpm hello_2.10-7_amd64.deb generated
Seperti yang Anda lihat di atas, file sumber dan target memiliki nomor versi yang sama.
Mendapatkan bantuan
Untuk menampilkan deskripsi singkat tentang Alien dan semua opsi umum yang didukung, lihat bagian bantuan Alien dengan menjalankan perintah berikut:
$ alien --help
Juga, lihat halaman manual.
$ man alien
Kesimpulan
Saya tidak akan memberikan jaminan tentang keakuratan konverter Alien. Saya hanya menguji beberapa paket seperti Vim, Hello world, dan Nano. Sejauh yang saya uji, Alien bekerja dengan baik untuk saya di Debian 11 bullseye.
Ini mungkin tidak akan berfungsi untuk beberapa paket yang bergantung pada sejumlah besar dependensi. Hasilnya mungkin berbeda dari satu paket ke paket lainnya.
Dalam kasus seperti itu, Anda mungkin perlu membuatnya dari sumber secara manual atau menggunakan aplikasi andal lainnya seperti CheckInstall atau Fpm . Saya menyarankan Anda untuk melihat sumber daya berikut untuk mempelajari cara membuat paket dari sumber.
- Cara Membuat Paket Debian Dari Sumber
- Cara Membuat Paket Dari Sumber Menggunakan CheckInstall
- Cara Mudah Membuat Paket Linux Untuk Berbagai Platform
- Buat Ulang Paket Biner Debian Yang Sudah Terinstal Pada Sistem
- Cara Mengonversi Paket DEB Menjadi Paket Arch Linux
Semoga membantu.