Rumah  >  Artikel  >  Tutorial sistem  >  Menganalisis fungsi dan ciri apt, yum, dnf dan pkg

Menganalisis fungsi dan ciri apt, yum, dnf dan pkg

WBOY
WBOYke hadapan
2024-01-04 20:25:44572semak imbas
Pengenalan Kebanyakan sistem pengendalian seperti Unix moden menyediakan mekanisme terpusat untuk mencari dan memasang perisian. Perisian biasanya disimpan dalam repositori dan diedarkan melalui pakej. Kerja mengendalikan pakej dipanggil pengurusan pakej. Pakej menyediakan komponen asas sistem pengendalian, serta perpustakaan kongsi, aplikasi, perkhidmatan dan dokumentasi.

详解apt、yum、dnf 和 pkg

Pengenalan

Selain memasang perisian, sistem pengurusan pakej juga menyediakan alatan untuk mengemas kini pakej yang dipasang. Repositori pakej membantu memastikan kod yang digunakan dalam sistem anda telah disemak dan versi perisian yang dipasang telah diluluskan oleh pembangun dan penyelenggara pakej.

Apabila mengkonfigurasi pelayan atau persekitaran pembangunan, adalah lebih baik untuk memahami pakej yang berada di luar repositori rasmi. Pakej dalam versi stabil pengedaran mungkin sudah lapuk, terutamanya untuk perisian baharu atau berkembang pesat. Walau bagaimanapun, pengurusan pakej adalah kemahiran penting untuk kedua-dua pentadbir sistem dan pembangun, dan perisian berpakej merupakan aset besar kepada pengedaran Linux utama.

Panduan ini direka bentuk untuk memperkenalkan dengan cepat asas mencari, memasang dan menaik taraf pakej pada pelbagai pengedaran Linux dan untuk membantu anda merujuk silang kandungan ini merentas berbilang sistem.

Sistem Pengurusan Pakej: Gambaran Keseluruhan Ringkas

Kebanyakan sistem pakej dibina berdasarkan koleksi fail pakej. Fail pakej biasanya fail arkib yang mengandungi binari terkumpul dan sumber lain untuk perisian, serta skrip pemasangan. Fail pakej juga mengandungi metadata berharga, termasuk kebergantungan mereka dan senarai pakej lain yang diperlukan untuk memasang dan menjalankannya.

Walaupun fungsi dan faedah sistem pengurusan pakej ini sebahagian besarnya sama, format dan alatan pembungkusan berbeza mengikut platform:

Sistem Operasi Format Alat
Debian .deb apt, apt-cache, apt-get, dpkg
Ubuntu .deb apt, apt-cache, apt-get, dpkg
CentOS .rpm yum
Fedora .rpm dnf
FreeBSD Pelabuhan, .txz buat, pkg

Debian dan derivatifnya, seperti Ubuntu, Linux Mint dan Raspbian, format pakej mereka ialah .deb. APT Alat pengurusan pakej lanjutan ini menyediakan arahan untuk operasi yang paling biasa: cari repositori, pasang pakej dan kebergantungannya, dan uruskan peningkatan. Dalam sistem setempat, kami juga boleh menggunakan program dpkg untuk memasang fail deb tunggal Arahan APT berfungsi sebagai hujung hadapan dpkg yang mendasari, dan kadangkala ia juga dipanggil secara langsung.

Derivatif debian yang dikeluarkan baru-baru ini termasuk perintah apt, yang menyediakan antara muka yang ringkas dan bersatu untuk operasi biasa yang biasanya dikendalikan oleh arahan apt-get dan apt-cache. Perintah ini adalah pilihan, tetapi menggunakannya boleh memudahkan beberapa tugas.

CentOS, Fedora dan ahli keluarga Red Hat yang lain menggunakan fail RPM. Dalam CentOS, berinteraksi dengan fail pakej individu dan repositori melalui yum.

Dalam versi Fedora baru-baru ini, yum telah digantikan dengan dnf, garpu modennya yang mengekalkan kebanyakan antara muka yum.

Sistem pembungkusan binari FreeBSD diuruskan oleh arahan pkg. FreeBSD juga menyediakan koleksi Ports, yang merupakan struktur dan alat direktori tempatan yang membolehkan pengguna menggunakan Makefile untuk menyusun dan memasang pakej terus daripada kod sumber selepas mendapatkan kod sumber.

Senarai pakej dikemas kini

Kebanyakan sistem akan mempunyai pangkalan data pakej tempatan yang sepadan dengan repositori jauh Adalah lebih baik untuk mengemas kini pangkalan data ini sebelum memasang atau menaik taraf pakej. Selain itu, yum dan dnf juga akan menyemak kemas kini secara automatik sebelum melakukan beberapa operasi. Sudah tentu anda boleh mengemas kini sistem pada bila-bila masa.

Sistem Perintah
Debian/Ubuntu sudo apt-get kemas kini
sudo apt kemas kini
CentOS yum semak-kemas kini
Fedora dnf semak-kemas kini
Pakej FreeBSD sudo pkg kemas kini
FreeBSD Ports sudo kemas kini pengambilan portsnap
Kemas kini pakej yang dipasang

Tanpa sistem pakej, adalah satu tugas yang sukar untuk memastikan semua perisian yang dipasang pada mesin sentiasa dikemas kini. Anda perlu menjejaki perubahan huluan dan makluman keselamatan untuk beratus-ratus pakej yang berbeza. Walaupun pengurus pakej tidak menyelesaikan setiap masalah yang anda hadapi semasa menaik taraf perisian, ia membolehkan anda menggunakan beberapa arahan untuk mengekalkan kebanyakan komponen sistem.

Pada FreeBSD, menaik taraf port yang dipasang mungkin menyebabkan perubahan pecah, dan beberapa langkah memerlukan konfigurasi manual, jadi sebaiknya baca kandungan /usr/ports/UPDATING sebelum mengemas kini melalui portmaster.

Sistem Perintah Arahan
Debian/Ubuntu sudo apt-get naik taraf Hanya kemas kini pakej yang dipasang
sudo apt-get dist-upgrade Pakej boleh ditambah atau dialih keluar untuk memenuhi kebergantungan baharu
sudo apt upgrade Serupa dengan apt-get upgrade
sudo apt full-upgrade Serupa dengan apt-get dist-upgrade
CentOS kemas kini sudo yum
Fedora sudo dnf naik taraf
Pakej FreeBSD sudo pkg naik taraf
FreeBSD Ports less /usr/ports/UPDATEING Gunakan lebih sedikit untuk melihat gesaan kemas kini port (gunakan kekunci kursor atas dan bawah untuk menatal, tekan q untuk keluar).
cd /usr/ports/ports-mgmt/portmaster && sudo make install && sudo portmaster -a Pasang portmaster dan gunakannya untuk mengemas kini port yang dipasang
Cari pakej

Kebanyakan pengedaran menyediakan alatan grafik atau dipacu menu untuk koleksi pakej Kami boleh menyemak imbas perisian mengikut kategori, yang juga merupakan cara yang baik untuk menemui perisian baharu. Walau bagaimanapun, cara terpantas dan paling berkesan untuk mencari pakej adalah dengan mencari menggunakan alat baris arahan.

Sistem Perintah Arahan
Debian/Ubuntu rentetan carian apt-cache
rentetan carian yang sesuai
CentOS yum search search_string
yum cari semua search_string Cari semua medan termasuk penerangan
Fedora dnf cari search_string
dnf cari semua search_string Cari semua medan termasuk penerangan
Pakej FreeBSD pkg search search_string Cari mengikut nama
pkg search -f search_string Cari mengikut nama dan kembalikan penerangan penuh
cari pkg -D rentetan_cari Pencarian Penerangan
FreeBSD Ports cd /usr/ports && buat nama carian=pakej Cari mengikut nama
cd /usr/ports && buat kunci carian=search_string Cari ulasan, penerangan dan kebergantungan
Lihat maklumat tentang pakej perisian

Sebelum memasang pakej perisian, kita boleh mendapatkan banyak maklumat berguna dengan membaca penerangan pakej dengan teliti. Selain teks yang boleh dibaca manusia, ini biasanya termasuk metadata seperti nombor versi dan senarai kebergantungan pakej.

Sistem Perintah Arahan
Debian/Ubuntu pakej rancangan apt-cache Tunjukkan maklumat cache setempat tentang pakej
pakej persembahan yang sesuai
pakej dpkg -s Menunjukkan status pemasangan semasa pakej
CentOS pakej info yum
pakej deplist yum Senaraikan kebergantungan pakej
Fedora pakej info dnf
dnf repoquery --memerlukan pakej Senaraikan kebergantungan pakej
Pakej FreeBSD pakej info pkg Tunjukkan maklumat tentang pakej yang dipasang
FreeBSD Ports cd /usr/ports/category/port && cat pkg-descr
Pasang pakej dari repositori

Sebaik sahaja anda mengetahui nama pakej, anda biasanya boleh memasangnya dan kebergantungannya dengan satu arahan. Anda juga boleh memasang berbilang pakej sekaligus, cuma senaraikan kesemuanya.

Sistem Perintah Arahan
Debian/Ubuntu sudo apt-get install pakej
sudo apt-get install package1 package2 ... Pasang semua pakej tersenarai
sudo apt-get install -y package Apabila apt menggesa sama ada untuk meneruskan, ia akan terus lalai kepada ya
pakej pemasangan sudo apt Paparkan bar kemajuan berwarna
CentOS pakej pasang sudo yum
sudo yum pasang pakej1 pakej2 ... Pasang semua pakej tersenarai
sudo yum install -y package Apabila yum menggesa sama ada untuk meneruskan, ia akan lalai terus kepada ya
Fedora pakej pasang sudo dnf
sudo dnf install package1 package2 ... Pasang semua pakej tersenarai
sudo dnf install -y package Apabila dnf menggesa sama ada untuk meneruskan, ia akan lalai terus kepada ya
Pakej FreeBSD pakej pemasangan sudo pkg
sudo pkg pasang pakej1 pakej2 ... Pasang semua pakej tersenarai
FreeBSD Ports cd /usr/ports/category/port && sudo make install Bina dan pasang port daripada sumber
Pasang pakej daripada sistem fail tempatan

Untuk sistem pengendalian tertentu, kadangkala sesetengah perisian tidak menyediakan pakej yang sepadan secara rasmi, jadi pembangun atau pembekal perlu menyediakan muat turun fail pakej. Anda biasanya boleh mendapatkan semula pakej ini melalui penyemak imbas web, atau mendapatkan maklumat ini melalui curl baris arahan. Selepas memuat turun pakej ke sistem sasaran, kami biasanya boleh memasangnya dengan satu arahan.

Pada sistem terbitan Debian, dpkg digunakan untuk memproses fail pakej individu. Jika pakej mempunyai kebergantungan yang tidak dipenuhi, maka kita boleh menggunakan gdebi untuk mendapatkannya daripada repositori rasmi.

Pada sistem CentOS dan Fedora, yum dan dnf digunakan untuk memasang fail individu dan mengendalikan kebergantungan yang diperlukan.

Sistem Perintah Arahan
Debian/Ubuntu sudo dpkg -i package.deb
sudo apt-get install -y gdebi && sudo gdebi package.deb Pasang gdebi, kemudian gunakan gdebi untuk memasang package.deb dan mengendalikan kebergantungan yang hilang
CentOS sudo yum install package.rpm
Fedora sudo dnf install package.rpm
Pakej FreeBSD sudo pkg tambah pakej.txz
sudo pkg add -f package.txz Malah pakej yang dipasang akan dipasang semula
Alih keluar satu atau lebih pakej yang dipasang

Oleh kerana pengurus pakej mengetahui fail yang disediakan oleh pakej tertentu, ia selalunya boleh mengalih keluar fail tersebut daripada sistem jika perisian tidak lagi diperlukan.

Sistem Perintah Arahan
Debian/Ubuntu sudo apt-get remove package
sudo apt keluarkan pakej
sudo apt-get autoremove Padamkan pakej yang tidak perlu
CentOS sudo yum removepackage
Fedora pakej padam sudo dnf
Pakej FreeBSD sudo pkg padam pakej
sudo pkg autoremove Padamkan pakej yang tidak perlu
FreeBSD Ports sudo pkg padam pakej
cd /usr/ports/path_to_port && buat nyahpasang Nyahpasang port
apt arahan

Pentadbir pengedaran keluarga Debian biasanya biasa dengan apt-get dan apt-cache. Kurang terkenal ialah antara muka apt yang dipermudahkan, yang direka untuk kegunaan interaktif.

Perintah tradisional Perintah apt yang setara
apt-get kemas kini kemas kini tepat
apt-get dist-upgrade naik taraf penuh yang sesuai
rentetan carian apt-cache rentetan carian yang sesuai
pakej pemasangan apt-get pakej pemasangan apt
apt-get remove pakej apt keluarkan pakej
pakej apt-get purge pakej apt purge

Walaupun apt biasanya merupakan pintasan untuk operasi tertentu, ia tidak boleh menggantikan alatan tradisional sepenuhnya dan antara mukanya mungkin berubah dari versi ke versi untuk meningkatkan kebolehgunaan. Jika anda menggunakan arahan pengurusan pakej dalam skrip atau saluran paip shell, sebaiknya gunakan apt-get dan apt-cache.

Dapatkan bantuan

Selain dokumentasi berasaskan web, ingat bahawa kita boleh mendapatkan kebanyakan arahan daripada halaman manual Unix (selalunya dipanggil halaman manual) melalui shell. Sebagai contoh, untuk membaca halaman tertentu, anda boleh menggunakan man:

Dalam lelaki anda boleh menavigasi menggunakan kekunci anak panah. Tekan / untuk mencari teks dalam halaman dan gunakan q untuk keluar.

Sistem Perintah Arahan
Debian/Ubuntu man apt-get Kemas kini pangkalan data pakej tempatan dan bekerjasama dengan pakej
man apt-cache Cari dalam pangkalan data pakej tempatan
lelaki dpkg Kerja dengan fail pakej individu dan pertanyaan pakej yang dipasang
man apt Lakukan operasi paling asas melalui antara muka yang lebih ringkas dan mesra pengguna
CentOS man yum
Fedora man dnf
Pakej FreeBSD lelaki pkg Berfungsi dengan pakej binari pra-disusun
FreeBSD Ports pelabuhan lelaki Bekerja dengan koleksi Ports

Atas ialah kandungan terperinci Menganalisis fungsi dan ciri apt, yum, dnf dan pkg. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:linuxprobe.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam