Saya ingin menginstal beberapa paket (file .rpm) pada sistem RedHat tanpa akses internet. Jadi, saya harus mengunduh paket pada sistem lain dan menyalinnya ke sistem target. Tapi saya tidak punya sistem RedHat lain; semua yang saya miliki adalah MacBook saya. Dan, yang lebih parah, akses internet yang saya miliki di MacBook saya adalah dari menambatkan koneksi internet 3G ponsel saya, di mana penyedia jaringan saya membatasi kecepatan internet tertambat menjadi 384 kBps. Jadi, saya tidak bisa mengunduh ISO RedHat 1,5 GB untuk diinstal sebagai mesin virtual, karena itu akan memakan waktu berjam-jam. Jadi, akan jauh lebih produktif untuk dapat mengunduh file RPM yang diperlukan pada Mac saya, karena ukurannya biasanya beberapa kB, dan saya tidak dapat melihat ukuran total semua file ketergantungan RPM yang diperlukan melebihi, katakanlah , 100 MB.
Jadi, bagaimana saya melakukan yang setara dengan Mac dari kode Linux berbasis Fedora di bawah ini:
sudo yum install \
--installroot=</path/to/tmp_dir> \
--downloadonly --downloaddir <rpm_dir> <package>
untuk mengunduh semua paket RPM yang diperlukan bersama dengan dependensinya di Mac?
Jawaban:
Cara termudah adalah dengan menginstal Docker dan menarik gambar fedora dasar (~ 250MB terkompresi)) kemudian gunakan salah satu
yum deplist
ataurepoquery
untuk mendapatkan daftar dependensi danyumdownloader
untuk mendapatkan URL.Anda juga dapat memodifikasi
/etc/yum.conf
dengan mengaturkeepcache=1
, menginstal paket dari dalam wadah dan mendapatkan RPM yang disimpan, tetapi ini mungkin akan mengunduh juga paket yang sudah Anda instal pada sistem lain karena gambar fedora docker sangat kecil.sumber