Bagi Linuxer pemula, salah satu halangan dalam menggunakan Linux adalah menginstalasi paket RPM. Mungkin yang pertama kita bisa membahas langkah-langkah menginstalasi paket RPM.
Perintah yang dapat digunakan untuk menginstalasi sebuah paket RPM adalah:
# rpm -ivh [paketRPM]
atau jika paket yang ingin diinstalasi lebih dari satu, gunakan perintah:
# rpm -ivh [paketRPM 1] [paketRPM 2] [paketRPM 3] dst
Kalau paket tersebut sudah ada dan ingin mengupgrade, gunakan perintah:
# rpm -Uvh [paketRPM]
Nah, mending kalau paket tersebut bisa langung terinstalasi dengan baik. Bagaimana kalau ternyata paket RPM tersebut membutuhkan paket-paket dependensi?
Nah, saya ada skrip BASH kecil yang bisa digunakan untuk mencari tahu paket-paket apa aja yang menjadi dependensi dari paket yang ingin diinstalasi:
#!/bin/bash
# Program kecil memeriksa dependensi paket RPM
if [ $1 ]; then
for i in $( rpm -q --requires -p $1 );
do
j=$( rpm -q --whatprovides $i )
j=${j%%-*}
j=${j%% *}
if [ $j = "no" ]; then
for k in $( rpm -q --whatprovides $i );
do
k=$k
done
l=$k
l=${l%-*.*}
l=${l%%.*}
if [ ${l%(*} != "rpmlib" ]; then
if [ ${l%(*} != "config" ]; then
if [ $l != "<=" ]; then
if [ $l != ">=" ]; then
if [ $l != "=" ]; then
if [ $l != "0" ]; then
if [ $l != "1" ]; then
if [ $l != "2" ]; then
if [ $l != "3" ]; then
if [ $l != "4" ]; then
if [ $l != "5" ]; then
if [ $l != "6" ]; then
if [ $l != "7" ]; then
if [ $l != "8" ]; then
if [ $l != "9" ]; then
for x in $( rpm -qa | grep $l );
do
y=${x%-*-*}
if [ "$y" = "$l" ]; then
z1=true
fi
done
if [ $z1 ]; then
echo "paket '$l' sudah terinstalasi"
else
echo "paket '$l' belum terinstalasi"
fi
fi
fi
fi
fi
fi
fi
fi
fi
fi
fi
fi
fi
fi
fi
fi
fi
if [ $j != "no" ]; then
for k in $( rpm -q --whatprovides $i );
do
l=${k%-*-*}
for x in $( rpm -qa | grep $l );
do
y=${x%-*-*}
if [ "$y" = "$l" ]; then
z2=true
fi
done
if [ $z2 ]; then
echo "paket '$l' sudah terinstalasi"
else
echo "paket '$l' belum terinstalasi"
fi
done
fi
done
else
echo "jalankan perintah: cekDep [paket RPM]"
fi
Ketik skrip tersebut dengan menggunakan aplikasi teks editor, kemudian simpan dengan nama file "cekDep". Kemudian, ubah atributnya agar bisa dieksekusi dari konsol, dengan perintah:
# chmod +x cekDep
Kemudian, taruh file tersebut ke direktori /bin, agar bisa dijalankan dari mana saja:
# cp cekDep /bin/
Nah, sekarang jika ingin menginstalasi paket RPM, jalankan perintah:
# cekDep [paketRPM]
Maka, akan menghasilkan keluaran paket-paket dependensi dari paket RPM tersebut. Sekarang Anda bisa langsung mengetahui paket-paket dependensi apa saja yang diperlukan.
Skrip tersebut masih sederhana, jika ada yang mengembangkan menjadi lebih baik, bagi dong buat kita-kita!
skripnya gak ngecek dependency dari dependency. sebenernya cukup install paket rpmdb-fedora (untuk fedora), nanti rpm akan bilang paket apa aja yang diperlukan. itu kalo rpm-nya berasal dari fedora.