Petua untuk bekerja dengan Yum dan RPM. Asas pengurusan pakej: apt, yum, dnf, pkg

|

Kebanyakan sistem pengendalian seperti Unix moden menawarkan mekanisme terpusat untuk mencari dan memasang pakej. Perisian biasanya diedarkan dalam bentuk pakej yang disimpan dalam repositori. Pakej mengandungi komponen utama sistem operasi, dan perpustakaan kongsi, aplikasi, perkhidmatan dan dokumentasi.

Sistem pengurusan pakej di luar pemasangan perisian, menyediakan lebih banyak ciri dan alatan untuk menaik taraf sedia ada anda pakej yang dipasang. Repositori pakej memastikan kod telah berlalu pengesahan yang diperlukan untuk digunakan dalam sistem, dan apa versi yang dipasang perisian telah diluluskan oleh pembangun.

Apabila menyediakan pelayan atau persekitaran pembangunan, adalah lebih baik untuk mencari pakej dalam repositori rasmi. Pakej dalam versi stabil pengedaran mungkin sudah lapuk, terutamanya jika perisian dikemas kini dengan cepat.

Pengurusan pakej adalah kemahiran penting untuk pentadbir sistem dan pemaju.

Panduan ini merangkumi asas pengurusan pakej: mencari, memasang dan mengemas kini pakej untuk pelbagai pengedaran.

Sistem Pengurusan Pakej: Gambaran Keseluruhan Ringkas

Kebanyakan sistem pengurusan pakej dibina pada set fail pakej. Fail pakej biasanya merupakan arkib yang mengandungi binari yang disusun, skrip pemasangan dan sumber lain yang membentuk atur cara. Pakej juga mengandungi metadata berharga, termasuk kebergantungan mereka (senarai pakej yang diperlukan untuk menjalankan program).

sistem operasi Format
Debian .deb
Ubuntu .deb
CentOS .rpm
Fedora .rpm
FreeBSD pelabuhan, .txz

CentOS, Fedora dan sistem lain topi merah guna fail RPM. CentOS menggunakan pengurus yum untuk berinteraksi dengan pakej dan repositori. DALAM versi terkini Fedora yum telah digantikan oleh pengurus dnf yang dimodenkan. Sistem Debian dan sistem berdasarkannya (Ubuntu, Linux Mint, Raspbian) menggunakan format .deb. Pengurus pakej APT (Alat Pembungkusan Lanjutan) menyediakan arahan yang digunakan untuk operasi yang paling biasa: mencari repositori, mengurus kemas kini, memasang set pakej dan kebergantungannya. Perintah APT bekerja sebagai utiliti bahagian hadapan peringkat bawah dpkg, yang mengendalikan pemasangan pakej .deb individu pada sistem tempatan; jika perlu, utiliti ini boleh dipanggil secara eksplisit.

Sistem binari Fail FreeBSD diuruskan oleh arahan pkg. Selain itu, FreeBSD menyediakan koleksi port, struktur direktori tempatan dan alatan yang membolehkan anda mengekstrak, menyusun dan memasang pakej daripada kod sumber menggunakan makefiles. Ia biasanya lebih mudah untuk menggunakan pengurus pkg, tetapi kadangkala pakej yang diprakumpul tidak tersedia.

Mengemas kini senarai pakej

Kebanyakan sistem mengandungi pangkalan data tempatan data pakej tersedia dalam repositori jauh. Adalah disyorkan agar anda mengemas kini pangkalan data ini sebelum memasang atau mengemas kini pakej. Pengecualian separa kepada corak ini ialah yum dan DNF, yang menyemak kemas kini pakej sebelum melakukan beberapa operasi.

sistem operasi Pasukan
Debian/Ubuntu sudo apt-get kemas kini
CentOS yum semak kemas kini
Fedora dnf semak-kemas kini
Pakej FreeBSD kemas kini sudo pkg
Pelabuhan FreeBSD kemas kini sudo portsnap fetch

Mengemas kini pakej yang dipasang

Memastikan perisian yang dipasang dikemas kini tanpa bantuan sistem pengurusan pakej adalah tugas yang agak intensif buruh. Anda perlu menjejaki kemas kini pakej dan notis keselamatan untuk ratusan pakej berbeza sendiri. Sudah tentu, pengurus pakej Ia tidak akan menyelesaikan setiap masalah yang mungkin anda hadapi semasa mengemas kini perisian anda, tetapi ia akan membantu memastikan kebanyakan komponen sistem dikemas kini dengan hanya beberapa arahan.

DALAM Sistem FreeBSD Mengemas kini port yang dipasang mungkin memerlukan tetapan manual. Sebelum mengemas kini portmaster, adalah disyorkan agar anda membiasakan diri dengan /usr/ports/UPDATING.

Sistem Pasukan
Debian/Ubuntu sudo apt-get naik taraf
sudo apt-get dist-upgrade
CentOS kemas kini sudo yum
Fedora peningkatan sudo dnf
Pakej FreeBSD peningkatan sudo pkg
Pelabuhan FreeBSD kurang /usr/ports/UPDATE
cd /usr/ports/ports-mgmt/portmaster && sudo make install && sudo portmaster -a

Cari pakej

Kebanyakan pengedaran menyediakan antara muka grafik atau dipacu menu untuk koleksi pakej. Ia membolehkan anda menyemak imbas kategori dan mencari perisian baharu. Walau bagaimanapun, selalunya yang terpantas dan paling banyak cara yang berkesan Mencari pakej ialah carian menggunakan alat baris arahan.

Sistem Pasukan
Debian/Ubuntu rentetan carian carian apt-cache
CentOS yum search search_string
yum cari semua search_string
Fedora dnf cari search_string
dnf cari semua search_string
FreeBSD (pakej) pkg search search_string
pkg search -f search_string
pkg search -D search_string
FreeBSD (port) cd /usr/ports && buat nama carian=pakej
cd /usr/ports && buat kunci carian=search_string

Maklumat pakej

Apabila memutuskan cara memasang pakej, dapatkan bantuan daripada Penerangan terperinci pakej. Teks yang boleh dibaca manusia ini selalunya mengandungi metadata yang berguna: nombor versi, senarai kebergantungan, dsb.

Sistem Pasukan
Debian/Ubuntu pakej rancangan apt-cache
pakej dpkg -s
CentOS pakej info yum
pakej deplist yum
Fedora pakej maklumat dnf
dnf repoquery --memerlukan pakej
FreeBSD (pakej) pakej info pkg
FreeBSD (port) cd /usr/ports/category/port && cat pkg-descr

Memasang pakej dari repositori

Mengetahui nama pakej yang diperlukan, anda boleh memasangnya dengan cepat menggunakan satu arahan. Anda juga boleh menyenaraikan semua pakej yang perlu dipasang dalam satu arahan.

Sistem Pasukan
Debian/Ubuntu sudo apt-get install pakej
sudo apt-get install package1 package2 ...
sudo apt-get install -y pakej
CentOS sudo yum install package
sudo yum pasang package1 package2 ...
sudo yum install -y pakej
Fedora sudo dnf install package
sudo dnf pasang package1 package2 ...
sudo dnf install -y package
FreeBSD (pakej) sudo pkg install package
sudo pkg pasang package1 package2 ...
FreeBSD (port) cd /usr/ports/category/port && sudo buat install

Memasang pakej daripada sistem fail tempatan

Kadangkala pemaju atau pembekal menawarkan fail kumpulan untuk memuat turun, walaupun aplikasi itu tidak dibungkus secara rasmi untuk sistem pengendalian tertentu.

Biasanya, pakej tersebut boleh dimuat turun menggunakan pelayar web atau utiliti curl in baris arahan. Setelah pakej dimuat turun, ia boleh dipasang menggunakan satu arahan.

Pada sistem seperti Debian, fail pakej individu diuruskan oleh dpkg. Jika pakej mempunyai kebergantungan yang tidak dipasang pada sistem, gdebi boleh memuat turunnya daripada repositori rasmi.

DALAM sistem CentOS dan Fedora untuk pemasangan fail berasingan dan memproses kebergantungan yang diperlukan, yum dan dnf digunakan.

Sistem Pasukan
Debian/Ubuntu sudo dpkg -i package.deb
sudo apt-get install -y gdebi&& sudo gdebi package.deb
CentOS sudo yum install package.rpm
Fedora sudo dnf install package.rpm
FreeBSD (pakej) sudo pkg tambah pakej.txz
sudo pkg add -f package.txz

Mengalih keluar pakej

Pengurus pakej mengetahui dengan tepat fail yang disediakan oleh setiap pakej tertentu, jadi ia boleh mengalih keluar semua program yang tidak diperlukan dengan mudah.

Yum dan RPM adalah alat yang hebat pengurusan pakej, tetapi mereka mempunyai beberapa pilihan dan keupayaan yang kurang diketahui yang membolehkan anda melakukan beberapa perkara yang cukup menarik. Anda tidak semestinya perlu menggunakannya, tetapi anda mungkin mendapati ia berguna pada satu ketika.

1. Paparkan jenis seni bina dalam RPM yang terhasil

Perkara kecil yang mudah ini agak mudah dilakukan dan akan sangat berguna untuk orang yang menggunakan sistem x86_64. Satu baris dalam fail ~/.rpmmacros akan menyelamatkan anda daripada masalah kemudian.

Gema "%_query_all_fmt %%(nama)-%%(versi)-%%(release).%%(arch)" >> ~/.rpmmacros

2. Minta pakej bukan daripada CentOS

Adakah anda ingin mendapatkan senarai pakej yang dipasang dari repositori pihak ketiga, bukan CentOS?

Rpm -qa --qf "%(NAMA) %(VENDOR)\n" | grep -v CentOS

3. Tetapkan semula kebenaran fail

Adakah anda benar-benar keliru tentang kebenaran fail dalam pakej? Tiada masalah, RPM akan menguruskannya.

Rpm --setperms

4. Lihat perubahan

Oleh kerana CentOS dan pembekal kod asal mengeluarkan kemas kini keselamatan, nombor versi boleh mengelirukan apabila melihat tampung CVE. Menyemak perubahan pada pakej ialah cara yang baik untuk melihat sama ada perubahan telah dibuat atau tidak. Sekali lagi RPM datang untuk menyelamatkan.

Rpm -q --changelog | kurang

Penggunaan "kurang" adalah pilihan, tetapi untuk sesetengah pakej, seperti kernel, perubahan boleh menjadi agak meluas. Oleh itu, penambahan ini menjadikan output lebih mudah dibaca.

5. Di manakah dokumentasi?

Untuk mendapatkan dokumentasi yang dikaitkan dengan pakej dengan cepat, anda boleh menggunakan dua pilihan berikut:

  • Ini akan menunjukkan kepada anda dokumentasi yang terkandung dalam rpm ini. Jika anda hanya mempunyai nama fail maka:
rpm -qdf /path/to/file
  • dan rpm akan menunjukkan kepada anda dokumentasi dalam pakej yang memiliki fail tersebut.

6. Asal pakej

Kadangkala anda ingin tahu di mana anda mendapat pakej atau pakej, atau berapa banyak pakej dalam sistem anda daripada repositori atau vendor tertentu. Terdapat beberapa pilihan carian yang boleh anda gunakan. Walaupun mereka tidak 100% sempurna, mereka masih boleh membantu. Kebanyakan pakej daripada repositori mempunyai teg dengan ID dalam baris Keluaran. Contohnya penggunaan rpmforge rf sebagai pengecam. Anda boleh menggunakan ini untuk melihat apa yang telah anda pasang dari sana:

Rpm -qa release="*rf*"

dan jika anda ingin melihat berapa banyak pakej yang anda telah pasang daripada Johnny Hughes yang anda boleh gunakan:

Rpm -qa pembungkus="Johnny*"

Kaedah ini berfungsi pada kebanyakan kategori seperti rpm -qi

Perintah ini akan memaparkan keseluruhan senarai pakej yang dipasang.

7. Ekstrak hanya satu fail

Jika anda hanya perlu mengekstrak satu fail daripada rpm tanpa memasang semula keseluruhan pakej, anda boleh melakukannya dengan rpm2cpio. Sebagai contoh, untuk mengekstrak hanya satu fail daripada logrotate rpm, gunakan yang berikut:

Rpm2cpio logrotate-1.0-1.i386.rpm |cpio -ivd etc/logrotate.conf

8. Permintaan tarikh pemasangan pakej

Ia berguna selepas mengemas kini untuk mencari pakej lama yang tidak dikemas kini.

Rpm -qa --last >~/RPMS_by_Install_Date

Anda boleh menggunakan output "kurang" untuk mencari semua RPMS yang lebih lama daripada tarikh pemasangan. Menggunakan juga grep - nyatakan pakej dan tarikh pemasangan.

9. Minta pakej yang tersedia daripada repositori

Cari semua pakej yang tersedia daripada repositori tertentu, seperti RPMforge. Pakej yang telah dipasang dari repositori ini tidak akan ditunjukkan.

Yum --disable "*" --dayakan senarai "rpmforge" tersedia

10. Cari menggunakan YUM dalam repositori pakej untuk rentetan yang diberikan

Cari pakej yang mengandungi garisan yang dikehendaki dalam tajuk atau penerangan pakej.

Yum search buildrpmtree | kurang

11. Menggunakan Yum dengan pelayan proksi

Untuk membuat Yum berfungsi melalui pelayan proksi, anda perlu menambah parameter seterusnya dalam /etc/yum.conf:

Proksi=http://proksi anda:8080/

di mana - yourproxy ialah nama pelayan proksi, dan 8080 ialah port pelayan proksi. Jika pelayan memerlukan pengesahan, anda boleh menentukan log masuk sebagai:

Proksi=http://nama pengguna:kata laluan@proksi anda:8080/

Pengurus Pakej RPM membenarkan anda menggunakan pembolehubah persekitaran proksi. Ini boleh ditetapkan dalam /etc/profile atau ditentukan untuk pengguna tertentu dalam fail ~/.bash_profile::

Eksport http_proxy=http://yourproxy:8080/ export ftp_proxy=http://yourproxy:8080/

Untuk menggunakan wget melalui proksi, tambah baris berikut dalam /etc/wgetrc

Http_proxy = http://yourproxy:8080/ ftp_proxy = http://yourproxy:8080/

Dalam kedua-dua kes, log masuk dan kata laluan boleh ditetapkan seperti dalam contoh di atas.

12. Gunakan Yum untuk memasang pakej tempatan, menyemak secara automatik dan memuaskan kebergantungan

yum --nogpgcheck localinstall packagename.arch.rpm

13. Mendapatkan dan membina semula pakej tanpa menjadi root

Kadangkala anda hanya perlu membina semula pakej tertentu - mungkin hanya untuk menambah pilihan konfigurasi yang tidak wujud dalam pakej utama. Atau kerana anda mendapati pakej yang diperlukan, yang tidak terdapat dalam repositori, tetapi pada RPM tapak web pembangun untuk pengedaran lain. Jadi anda harus mendapatkan src.rpm dan memulihkannya kepada keperluan anda. Tetapi anda tidak benar-benar mahu melakukan ini sebagai pengguna super. Jadi, bagaimana untuk membina semula pakej anda dalam direktori rumah di bawah akaun anda sendiri.

13.1 Kaedah A

Mula-mula anda perlu mengkonfigurasi direktori untuk kerja. Strukturnya agak serupa dengan direktori /usr/src/redhat:

$ cd $ mkdir -p redhat/(SRPMS,RPMS,SPECS,BINA,SUMBER) $ls redhat/BINA RPMS SUMBER SPECS SRPMS $

Menggunakan makro rpm, kami akan membuat penggantian supaya rpmbuild mengetahui tentang kami dan perkara yang perlu dibina:

$ echo "%_topdir /home/testuser/redhat" >> .rpmmacros $ echo "%packager Test User " >> .rpmmacros $ cat .rpmmacros %_topdir /home/testuser/redhat %packager Test User $

Tepat sekali. Tindakan seterusnya- rpmbuild task --rebuild foo.src.rpm, hasil kerja akan berada dalam fail ~/redhat/RPMS/i386 (atau seni bina yang anda gunakan untuk membina pakej tersebut).

13.2 Kaedah B

Untuk CentOS-4, sediakan repo kbs-Extras (pilihan tambah kbs-Misk) daripada halaman dan "yum install fedora-rpmdevtools" sebagai root menggunakan "sudo" atau "su -". Buat pengguna (anda mungkin mahu menggunakan akaun khas untuk mengelakkan masalah dalam direktori rumah biasa anda) dan jalankan "fedora-buildrpmtree" dan ~/rpmbuild/...dalam pepohon direktori dan fail ~/.rpmmacros akan secara automatik dicipta. (Perhatikan "rpmbuild" vs "RedHat" dalam Kaedah A.)

Untuk CentOS-5 - pakej rpmdevtools tidak tersedia. Dalam FC6 SRPM rpmdevtools-5.3-1.fc6.src.rpm dibina dan berfungsi.

Di bawah ialah makro untuk mendapatkan nama yang betul bagi beberapa pakej (gantikan versi pengedaran yang sepadan untuk "el4" dengan anda):

$ echo "%dist .el4" >> .rpmmacros

14. Paparkan keutamaan untuk semua repositori yang dipasang

Anda boleh mendapatkan senarai semua repositori yang dipasang pada anda - yum senaraikan semula semua. Walau bagaimanapun, ia tidak menunjukkan indeks keutamaan. Berikut adalah baris yang diperlukan untuk ini. Jika nombor tidak dinyatakan, lalai adalah keutamaan terendah (99).

Cat /etc/yum.repos.d/*.repo | sed -n -e "/^\# yum list "vim*" Pakej Dipasang vim-minimal.i386 2:7.0.109-7.el5 dipasang Pakej Tersedia vim-X11.i386 2:7.0.109-7.el5 asas vim-augeas.i386 0.9.0-2.el5.rf rpmforge vim-clustershell.noarch 1.5.1-1.el5 epel vim-common.i386 2:7.0.109-7.el5 asas vim-enhanced.i386 2: 7.0.109-7.el5 asas vim-halibut.i386 1.0-2.20100504svn8934.el5.1 epel vim-puppet.noarch 2.7.9-1.el5.rf rpmforge

16. Tunjukkan semua kekunci GPG yang dipasang

Tunjukkan senarai semua kunci dengan maklumat repositori yang sepadan:

Rpm -q gpg-pubkey --qf "%(nama)-%(versi)-%(release) --> %(ringkasan)\n"

17. Menandatangani pakej

Adakah anda ingin menandatangani pakej anda yang telah anda kumpulkan supaya orang lain boleh mengesahkan kesahihannya? Anda boleh melakukan ini dengan mudah. Gunakan dokumentasi.

Nota: Untuk CentOS 5 dan 4, adalah lebih baik jika anda menggunakan kunci DSA untuk menandatangani (kerana masalah pengesahan telah dikenal pasti untuk versi 4 RSA).

18. Pakej Meta YUM

Metapackage ialah pakej khas yang tidak mengandungi sebarang perisian, tetapi mempunyai set perisian tertentu sebagai kebergantungan. Sebagai contoh: memasang X pada pelayan.

Untuk melihat senarai semua metapackages, anda perlu menjalankan arahan: senarai kumpulan yum. Tetapi jika anda mempunyai tempatan Rusia, maka senarai itu akan dipaparkan dalam bahasa Rusia. Untuk mendapatkan senarai yang sesuai untuk pemasangan (dalam bahasa Inggeris), tetapkan bahasa output arahan kepada bahasa Inggeris:

LANG=C yum senarai kumpulan

19. Bagaimana untuk menyenaraikan pakej yang dipasang

Pakej yang dipasang boleh menunjukkan arahan

Senarai yum dipasang

Contoh, dapatkan senarai pakej yang dipasang dari repositori:

# senarai yum dipasang | grep ius php71u-cli.x86_64 7.1.17-1.ius.el6 @ius php71u-common.x86_64 7.1.17-1.ius.el6 @ius php71u-embedded.x86_64 7.1.17-1.ius.el6 @ius php71u-fpm.x86_64 7.1.17-1.ius.el6 @ius 7.1.17-1.ius.el6 @ius php71u-gd.x86_64 7.1.17-1.ius.el6 @ius php71u-intl.x86_64 7.1. 17-1.ius.el6 @ius php71u-json.x86_64 7.1.17-1.ius.el6 @ius php71u-mbstring.x86_64 7.1.17-1.ius.el6 @ius php71u-pdo.x86_64 7.1.17- 1.ius.el6 @ius 3.4.3-2.ius.el6 @ius php71u-pgsql.x86_64 7.1.17-1.ius.el6 @ius php71u-xml.x86_64 7.1.17-1.ius.el6 @ius php71u-xmlrpc.x86_64 7.1.17-1.ius.el6 @ius

Hari ini saya ingin menerangkan secara ringkas arahan pengurus pakej sedap- binaan FreePBX rasmi adalah berdasarkan CentOS, yang telah dipasang yum secara lalai. Ia berguna untuk memasang, menyahpasang dan mengemas kini pakej.

Memasang pakej

Sebagai contoh, untuk memasang pakej mc anda perlu memasukkan arahan yum install mc. Selepas memasukkan arahan, sistem akan meminta pengesahan. Untuk pengesahan untuk diluluskan secara lalai, anda perlu menambah kunci -y, contohnya yum –y pasang mc:

# yum install mc Pemalam dimuatkan: fastestmirror Memuatkan kelajuan cermin daripada fail hos cache * asas: mirror.corbina.net * epel: mirror.datacenter.by * tambahan: mirror.corbina.net * kemas kini: mirror.corbina.net Menyelesaikan Ketergantungan -- > Menjalankan semakan transaksi ---> Pakej mc.x86_64 1:4.8.7-11.el7 akan dipasang --> Selesai Ketergantungan Resolusi Ketergantungan Selesai ================== =================================================== === ============= Saiz Repositori Versi Arch Pakej ============================== =================== ================================= ============================= Memasang: mc x86_64 1:4.8.7-11.el7 asas 1.7 M Ringkasan Transaksi ================== =================================================== ============================= Pasang 1 Pakej Jumlah saiz muat turun: 1.7 M Saiz dipasang: 5.6 M Adakah ini ok : y Memuat turun pakej : mc-4.8.7-11.el7.x86_64.rpm | 1.7 MB 00:00 Menjalankan semakan transaksi Menjalankan ujian transaksi Ujian transaksi berjaya Menjalankan transaksi Memasang: 1:mc-4.8.7-11.el7.x86_64 1/1 Mengesahkan: 1:mc-4.8.7-11.el7.x86_64 1 /1 Dipasang: mc.x86_64 1:4.8.7-11.el7 Selesai!

Mengalih keluar pakej

Untuk mengalih keluar pakej, sewajarnya, anda perlu memasukkan perintah yum remove mc. Anda boleh menggunakan suis pengesahan -y dengan cara yang sama:

# yum remove mc Pemalam yang dimuatkan: fastestmirror Menyelesaikan Ketergantungan --> Menjalankan semakan transaksi ---> Pakej mc.x86_64 1:4.8.7-11.el7 akan dipadamkan --> Selesai Ketergantungan Resolusi Ketergantungan Selesai ====== =================================================== === ======================== Saiz Repositori Versi Arch Pakej =================== ================================================================== =================== ========= Mengalih keluar: mc x86_64 1:4.8.7-11.el7 @base 5.6 M Ringkasan Transaksi ================== ================================================== ======== ======== Keluarkan 1 Pakej Saiz yang dipasang: 5.6 M Adakah ini ok : y Memuat turun pakej: Menjalankan pemeriksaan transaksi Menjalankan ujian transaksi Ujian transaksi berjaya Menjalankan transaksi Memadam: 1:mc-4.8 .7-11.el7.x86_64 1/1 Mengesahkan: 1:mc-4.8.7-11.el7.x86_64 1/1 Dialih keluar: mc.x86_64 1:4.8.7-11.el7 Selesai!

Kemas kini pakej

Katakan anda mempunyai yang lama versi mysql dan anda perlu mengemas kininya - di sini arahan digunakan kemas kini. Seluruh arahan akan kelihatan seperti ini: yum update mysql .

Cari pakej

Jika anda ingin menyemak sama ada pakej tertentu dipasang pada pelayan dan tersedia untuk pemasangan, gunakan arahan senarai. Seluruh arahan akan kelihatan seperti ini: yum list mysql . Anda juga boleh menentukan versi tepat pakej jika anda memerlukan carian yang lebih teliti.

Memaparkan maklumat pakej

Jika anda ingin memaparkan maklumat tentang pakej, gunakan arahan info. Seluruh arahan akan kelihatan seperti ini: yum info mc .

Paparkan maklumat tentang semua pakej yang tersedia dan dipasang

Untuk melakukan ini, gunakan arahan senarai dengan pengubahsuai. Untuk menyenaraikan pakej yang tersedia: senarai yum | less , dan untuk memaparkan semua yang dipasang - senarai yum dipasang | kurang

Peperiksaan kemas kini yang tersedia untuk pakej dan kemas kini itu sendiri

Untuk menyemak, gunakan arahan semak kemas kini, dan untuk mengemas kini - kemas kini. Berikut adalah tiga contoh penggunaan arahan:

  • yum check-update mysql - menyemak kemas kini pakej mysql;
  • kemas kini senarai yum - memaparkan senarai kemas kini;
  • yum kemas kini mc - kemas kini Komander Tengah Malam;
  • kemas kini yum –y - kemas kini semua pakej yang dipasang;
Kumpulan pakej dan operasi dengan mereka

Di Linux, beberapa pakej dikumpulkan ke dalam apa yang dipanggil pakej kumpulan - contohnya, Pelayan Nama DNS, Editor, Pembangunan Java dan sebagainya. Dengan yum anda boleh memasang pakej kumpulan menggunakan arahan groupinstall- contoh di bawah yum groupinstall 'Clustering. Saya akan menerangkan secara ringkas perintah yang tinggal untuk memanipulasi paket kumpulan:

  • senarai kumpulan yum - memaparkan semua pakej kumpulan yang tersedia untuk pemasangan;
  • yum groupupdate 'Base' - kemas kini pakej kumpulan tertentu, dalam dalam kes ini– Pangkalan;
  • yum groupremove 'Editor' - mengalih keluar pakej kumpulan;
Repositori dalam yum

Pencarian untuk pakej berlaku dalam repositori yang dipanggil; di bawah saya akan memberikan beberapa arahan untuk bekerja dengan mereka - prinsipnya adalah sama seperti dengan pakej (perintah senarai, contohnya). Semua repositori aktif dipaparkan menggunakan perintah yum repolist; repositori tidak aktif juga dipaparkan menggunakan yum repolist all command

Untuk memasang pakej daripada repositori tertentu, sama ada aktif atau tidak aktif, gunakan kekunci --enablerepo. Sebagai contoh - pemasangan phpmyadmin: yum –enablerepo=epel pasang phpmyadmin

Yum terminal dan sejarah

Jika anda akan melakukan banyak operasi dengan pakej, maka anda boleh segera pergi ke yum shell menggunakan perintah yum shell dan menggunakan arahan yang telah anda ketahui (hanya tanpa tiga pertama letters, masing-masing), anda boleh memasang\remove\update\whatever packages. Satu lagi ciri menarik ialah keupayaan untuk melihat sejarah pemasangan dalam yum menggunakan perintah sejarah yum.

Adakah artikel ini berguna kepada anda?

Tolong beritahu saya kenapa?

Kami memohon maaf kerana artikel itu tidak berguna untuk anda: (Sila, jika tidak sukar, nyatakan mengapa? Kami akan sangat berterima kasih atas jawapan terperinci. Terima kasih kerana membantu kami menjadi lebih baik!

Tujuan Yum

Yum direka untuk menyelesaikan masalah berikut:

  • Mencari pakej dalam repositori
  • Memasang pakej dari repositori
  • Memasang pakej daripada fail .rpm, menyelesaikan kebergantungan menggunakan repositori
  • Kemas kini sistem
  • Mengeluarkan pakej yang tidak perlu
  • Sebenarnya, yum ialah pembalut untuk rpm yang menyediakan kerja dengan repositori.

Operasi asas pada pakej

Cari repositori

Terdapat tiga arahan yang digunakan untuk mencari repositori menggunakan yum: list , search dan provides .

Cara paling mudah untuk mencari adalah dengan menggunakan arahan senarai. Perintah senarai melihat nama pakej dan versi untuk padanan. Sebagai contoh, untuk melihat pakej bernama tsclient gunakan:

Yum senarai tsclient

Perintah carian mencari nama pakej dan penerangan untuk rentetan yang ditentukan. Contohnya, untuk mencari pakej yang berkaitan dengan PalmPilot, masukkan:

Yum cari PalmPilot

Perintah menyediakan membolehkan anda mencari pakej yang mengandungi fail yang ditentukan. Contohnya, untuk mencari pakej yang mengandungi libneon, masukkan:

Yum menyediakan libneon

Adakah semua arahan carian menyokong kad bebas? dan * (lepaskan mereka dengan aksara \ untuk bash memprosesnya dengan betul). Sebagai contoh, untuk mencari pakej bermula dengan tsc, masukkan:

Yum list tsc\*

untuk mencari pakej yang mengandungi fail dalam direktori /etc/httpd

Yum menyediakan /etc/httpd\*

atau untuk mencari arahan/program tertentu, contohnya untuk mencari mc(komander tengah malam)

Yum menyediakan \*/mc

hasilnya kita mendapat output berikut

1:mc-4.7.4-1.fc14.i686: Konsol teks mesra pengguna pengurus fail dan shell visual Repositori: asas Padan dengan: Nama fail: /usr/share/mc Nama fail: /usr/libexec/mc Nama fail: /etc/mc Nama fail: /usr/bin/mc

Memasang pakej menggunakan Yum

Untuk memasang pakej menggunakan yum gunakan parameter pemasangan

Untuk memasang tsclient, masukkan:

Yum pasang tsclient

Yum secara automatik akan menyelesaikan (jika boleh) kebergantungan, dan menawarkan untuk memasangnya:

=================================================== === ========================================== Saiz Repositori Versi Arch Pakej = =================================================== ==================== ========= Memasang: tsclient i386 0.132-6 asas 247 k Memasang untuk kebergantungan: rdesktop i386 1.4.0-2 asas 107 k Ringkasan Transaksi ============================== ============================== ======================== ========================== Pasang 2 Pakej Kemas Kini 0 Pakej Alih Keluar 0 Pakej (s) Jumlah saiz muat turun: 355 k Adakah ini ok :

Memasang pakej daripada fail .rpm

Perintah localinstall digunakan untuk memasang pakej .rpm dengan resolusi pergantungan automatik. Kini anda boleh menggunakan pemasangan biasa. Maka perintahnya:

Yum pasang foo.rpm

akan mencari kebergantungan pakej foo.rpm secara automatik dalam repositori (jika boleh) dan menawarkan untuk memasangnya.
Masalah mungkin timbul sekiranya tidak ada atau tidak diketahui tandatangan GPG bagi pakej RPM, yang akan mengakibatkan keengganan untuk memasang dan, akibatnya, ralat berikut

Kunci awam untuk foo.rpm tidak dipasang

Untuk mengatasi perkara ini (jika anda mempercayai sumber yang menyediakan pakej) anda perlu melumpuhkan semakan kunci GPG dengan menambah parameter --nogpgcheck pada akhir arahan

Kemas kini sistem

Sistem dikemas kini menggunakan satu arahan - kemas kini. Oleh itu:

Yum kemas kini

akan mengemas kini keseluruhan sistem anda. Dan pasukan

Yum kemas kini foo

Apabila menggunakan kedua-dua kaedah, prestasi dikekalkan.

Menggunakan Yum dengan pelayan proksi

Untuk memaksa Yum bekerja melalui pelayan proksi, anda perlu menambah parameter berikut pada /etc/yum.conf:

Proksi=http://proksi anda:8080/

di mana - yourproxy ialah nama pelayan proksi, dan 8080 ialah port pelayan proksi. Jika pelayan memerlukan pengesahan, anda boleh menentukan log masuk sebagai:

Proksi=http://nama pengguna:kata laluan@proksi anda:8080/

Pengurus Pakej RPM membenarkan anda menggunakan pembolehubah persekitaran proksi. Ini boleh ditetapkan dalam /etc/profile atau khusus pengguna dalam ~/.bash_profile::

Eksport http_proxy=http://yourproxy:8080/
eksport ftp_proxy=http://yourproxy:8080/

Untuk menggunakan wget melalui proksi, tambahkan baris berikut pada /etc/wgetrc

Http_proxy = http://yourproxy:8080/
ftp_proxy = http://yourproxy:8080/

Dalam kedua-dua kes, log masuk dan kata laluan boleh ditetapkan seperti dalam contoh di atas.

Menggunakan Yum untuk memasang pakej setempat, menyemak secara automatik dan memuaskan kebergantungan

yum --nogpgcheck localinstall packagename.arch.rpm

Tunjukkan keutamaan untuk semua repositori yang dipasang

Anda boleh mendapatkan senarai semua repositori yang dipasang pada anda - yum senaraikan semula semua. Walau bagaimanapun, ia tidak menunjukkan indeks keutamaan. Berikut adalah baris yang diperlukan untuk ini. Jika nombor tidak dinyatakan, lalai adalah keutamaan terendah (99).

Cat /etc/yum.repos.d/*.repo | sed -n -e "/^\)