Dalam kes SUSE Linux (openSUSE, SUSE Enterprise, dan derivatif), zypper dan YaST adalah pengurus pakej. Walaupun YaST (Alat Penyediaan lain) adalah untuk mentadbir, mengatur dan mengkonfigurasi SUSE Linux, zypper adalah antara muka CLI pengurus pakej ZYpp. ZYpp adalah teras kedua zypper dan YaST.
Dalam artikel ini, kita akan melihat secara mendalam penggunaan zypper untuk semua jenis tujuan.
Catatan: Oleh kerana perintah zypper melakukan perubahan di seluruh sistem, perintah ini mesti dijalankan sebagai root. Jika tidak, arahan akan gagal.
Tanpa basa-basi lagi, mari kita mulakan! Semua contoh ini ditunjukkan di openSUSE Tumbleweed. Walau bagaimanapun, arahan ini bersifat universal untuk pengurus pakej zypper.
Bantuan Zypper
Menjalankan zypper tanpa arahan akan mencetak senarai semua arahan yang ada.
$ zipper
Ini senarai besar! Sekiranya anda memerlukan pertolongan mengenai arahan tertentu, jalankan perintah berikut.
pertolongan $ zypper
Mengemas kini pangkalan data Zypper
Ini adalah salah satu fungsi zypper yang paling biasa untuk mengemas kini pangkalan data pakej tempatannya dengan pelayan pakej.
$ sudo zypper refresh
Daripada menggunakan "refresh", Anda juga dapat menggunakan singkatan "ref".
$ sudo zypper rujukan
Anda juga boleh memaksa zypper membina semula pangkalan data tempatan. Ini boleh berguna dalam situasi, misalnya, jika pangkalan data rosak.
$ sudo zypper refresh -fdb
Kemas kini pakej sistem
Untuk merebut dan memasang semua kemas kini pakej terkini dari openSUSE, jalankan arahan berikut.
kemas kini $ sudo zypper
Walau bagaimanapun, saya mengesyorkan menggunakan struktur berikut untuk faedah maksimum.
$ sudo zypper fresh && sudo zypper kemas kini
Sekiranya anda berminat untuk melihat pakej yang mempunyai kemas kini yang tersedia, jalankan perintah berikut. Zypper akan menghasilkan senarai kemas kini yang tersedia untuk anda.
Senarai kemas kini $ zypper --semua
Memasang pakej
Untuk memasang pakej, gunakan arahan berikut.
$ sudo zypper pasang vlc
Terdapat beberapa singkatan perintah zypper yang menarik. Dalam kes ini, perintah berikut juga berlaku dan akan melakukan pekerjaan yang sama.
$ sudo zypper dalam vlc
Sekiranya anda perlu memasang beberapa pakej pada masa yang sama, sertakan nama pakej satu demi satu yang dipisahkan oleh spasi.
pemasangan $ sudo zypper
Semasa melakukan tindakan, zypper akan meminta pengesahan. Untuk mematikan mod interaktif, tambahkan bendera "-non-interactive" atau "-n".
$ sudo zypper - tidak interaktif dalam vlcsudo zypper -n dalam vlc
Ciri kad liar juga disokong oleh zypper. Sebagai contoh, mari cuba pasang semua pakej yang bermula dengan namanya
ular sawa.$ sudo zypper dalam 'python *'
Sumber memasang pakej
Catatan: Sebelum melakukan langkah-langkah berikut, jangan lupa untuk memeriksa apakah repositori sumber diaktifkan. Jika tidak, pemasangan sumber tidak akan berjaya. Dayakan repo sumber dari "YaST Software Repositories".
Jika anda perlu memasang paket sumber dari pakej tertentu, gunakan bendera "pasang sumber".
$ sudo zypper source-install vlc
Secara lalai, perintah ini juga akan meminta untuk memasang semua kebergantungan build. Untuk mengelakkan kebergantungan build, tambahkan bendera "-D".
$ sudo zypper source-install -D vlc
Sekiranya anda hanya mahu memasang pergantungan build, gunakan "-d" sebagai gantinya.
$ sudo zypper install source-install -d vlc
Mencari pakej
Terdapat beribu-ribu pakej di repositori openSUSE. Untuk melakukan carian menggunakan zypper, gunakan struktur berikut.
carian $ zypperSebagai contoh, mari cari semua pakej dengan istilah "python" di atasnya.
$ zypper search python
Pencarian sedemikian dapat mencetak senarai pakej yang PANJANG. Dalam situasi seperti itu, menggunakan "grep" atau mengeksport hasilnya dan kemudian melakukan persembahan dapat memberikan beberapa kenyamanan.
Pilihan "carian" juga mempunyai singkatan "se".
$ zypper -n se
Perhatikan bahawa untuk mencari, kami tidak harus menggunakan "sudo" pada awalnya. Ini kerana zypper tidak melakukan perubahan di seluruh sistem.
Mengeluarkan pakej
Jika anda ingin menyingkirkan pakej tertentu, gunakan pilihan "hapus".
$ sudo zypper keluarkanSebagai contoh, mari kita keluarkan VLC dari sistem.
$ sudo zypper keluarkan vlc
Daripada "hapus", mari gunakan "rm". Ini adalah singkatan dari istilah "hapus".
$ sudo zypper rm vlc
Sekiranya anda ingin melangkau mod interaktif, gunakan bendera "-non-interactive" atau "-n".
$ sudo zypper --nn interaktif rm vlc$ sudo zypper -n rm vlc
Memasang dan membuang pada masa yang sama
Ini adalah ciri menarik dari zypper yang membolehkan memasang dan mengeluarkan pakej pada masa yang sama! Mari kita periksa.
Sebagai contoh, mari pasang VLC sambil mengeluarkan Python. Dalam contoh ini, tugas utama zypper adalah memasang, tidak membuang. Di sini, bendera "-n" digunakan untuk kemudahan.
$ sudo zypper -n dalam vlc -python
Tampalan
Ini adalah bahagian menarik dari ekosistem openSUSE. Sementara kedua-duanya tampalan dan kemas kini beroperasi dengan cara yang sama, kedua-duanya pada asasnya berbeza. Keliru?
Sekiranya "kemas kini", dalam istilah openSUSE, akan mengemas kini paket ke versi terbaru yang tersedia dari repo. Namun, dalam kasus "patch", hanya akan memasang kemas kini paket yang ditujukan untuk perbaikan bug dan keselamatan.
Sekiranya anda hanya memasang tampalan, mungkin atau tidak mengemas kini semua pakej. Walau bagaimanapun, melakukan kemas kini akan memastikan bahawa semua pakej terkini dipasang.
Dengan itu, mari kita mulakan!
Pada mulanya, memasang patch. Perintah berikut akan memasang semua patch yang dikeluarkan secara rasmi.
$ sudo patch zypper
Dalam kes saya, tidak ada kaitan. Sekiranya terdapat tampalan terbaru, arahan akan memasangnya.
Untuk melihat senarai tampalan yang ada, gunakan yang satu ini. Ia tidak memerlukan akar kebenaran untuk dijalankan.
$ zypper tampalan
Zypper dapat menyenaraikan semua patch yang belum dipasang. Jalankan arahan berikut.
$ zypper senarai-tambalan
"List-patches" juga tersedia dalam bentuk singkatan dari "lp".
$ zypper lp
Berminat untuk menyenaraikan hanya patch yang ditandai sebagai pembaikan keselamatan?
$ zypper lp - keselamatan kategoriUntuk memeriksa jumlah tambalan yang diperlukan, jalankan perintah ini.
$ sudo patch-check
Pengurusan repositori
Zypper menawarkan kaedah mengurus semua repositori dengan lancar. Berikut adalah beberapa arahan yang sangat berguna dalam banyak keadaan.
Kami telah membahas bagaimana mengemas kini pangkalan data tempatan dari semua repos.
$ sudo zypper refresh
Perlukan senarai cepat semua repositori?
repos $ zypperKita juga dapat menggunakan "lr", bentuk "repos" yang disingkat.
$ zypper lr
Memerlukan URI repos? Cukup tambahkan bendera "-u" setelah "lr" atau "repos".
$ zypper lr -u
Sekiranya anda tidak tahu, repositori openSUSE disusun mengikut hierarki. Untuk menyenaraikan repositori berdasarkan keutamaannya, gunakan bendera "-p".
$ zypper lr -p
Semasa menjalankan "refresh", Zypper akan mengemas kini pangkalan data tempatan untuk semua repositori. Untuk mengemas kini repositori tertentu, jalankan arahan berikut.
$ sudo zypper refresh
Repos boleh diaktifkan / dilumpuhkan tanpa menghapusnya. Untuk mematikan repositori tertentu, jalankan perintah berikut. Perhatikan bahawa kami memerlukan nombor repo dari senarai repositori.
$ sudo zypper mr -d
Perlu mengaktifkan repo yang kurang upaya? Mari jalankan arahan berikut.
$ sudo zypper mr -e
Menambah repositori baru juga sangat mudah. Dalam contoh ini, saya akan menambahkan Packman. Ini adalah repositori luaran yang menawarkan pakej openSUSE tambahan. Bergantung pada versi openSUSE yang anda jalankan, URI repo akan berubah. Walau bagaimanapun, struktur arahan akan tetap sama. Ketahui lebih lanjut mengenai Packman
$ sudo zypper addrepoDalam kes openSUSE Tumbleweed, arahan akan kelihatan seperti ini. Di sini, "ar" adalah bentuk singkatan dari "addrepo".
$ sudo zypper ar -cfp 90 http: // ftp.gwdg.de / pub / linux / misc / packman / suse / openSUSE_Tumbleweed /pembungkus
Untuk mengeluarkan repo, anda memerlukan alias repo. Rebut alias repo dari senarai repos dan gunakan arahan berikut.
$ sudo removerepoAnda boleh menukar "removerepo" dengan bentuk singkatannya "rr".
$ sudo rr
Pengurusan cache
Caching adalah mekanisme yang berguna di mana zypper dapat menyimpan salinan semua paket RPM yang diambilnya dari internet di lokasi tertentu. Bila-bila masa anda meminta zypper memasang pakej yang sama, pertama kali melihat ke dalam cache. Sekiranya terdapat dalam cache, zypper menggunakan paket RPM dari cache untuk melakukan pemasangan. Dengan cara ini, ia dapat mempercepat pemasangan dan menjimatkan masa dan lebar jalur.
Cache disimpan di lokasi berikut. Setiap repo mempunyai folder khasnya sendiri di bawah direktori.
$ tree / var / cache / zypp / pakej
Untuk membersihkan cache, jalankan arahan berikut.
$ sudo zypper bersih
Ini akan membersihkan semua pakej RPM yang disimpan dari cache. Saya cadangkan untuk mengaktifkan cache kecuali anda terkawal oleh penyimpanan. Perintah berikut akan membolehkan cache untuk semua repositori dalam sistem.
$ sudo zypper mr -ka
Pemikiran terakhir
Zypper mempunyai banyak ciri. Walaupun kaedah penggunaan zypper ini lebih daripada cukup untuk pengguna biasa, terdapat banyak ciri canggih yang tidak ditampilkan di sini.
Untuk dokumentasi zypper lengkap, lihat halaman manual.
$ lelaki zypper
Nikmati!