Cara Menggunakan Pengurus Pakej Pkg di FreeBSD 12

Pengenalan

FreeBSD adalah sistem operasi seperti Unix sumber terbuka yang digunakan untuk memberi kuasa kepada pelayan moden, desktop, dan platform terbenam. Giants seperti Netflix, Yahoo !, WhatsApp, BBC, dan Sony menggunakan FreeBSD dalam beberapa bentuk. Sistem FreeBSD tidak begitu dikenali sebagai Linux, sebahagian besarnya kerana Linux telah bertahun-tahun memusatkan perhatian pada Desktop dan projek FreeBSD cenderung lebih berasaskan server.

Dalam panduan ini, anda akan belajar tentang pengurusan pakej pada FreeBSD 12.

Pelabuhan vs Pakej

Di FreeBSD kita mempunyai dua cara yang berbeza untuk memasang perisian add-on: melalui Ports Collection , atau Ports , dan melalui pakej pra-dikonfigurasi untuk memasang dan mengurus perisian.

Pelabuhan adalah sistem untuk membina perisian tambahan pada FreeBSD. Dengan Pelabuhan anda bermula dengan kod sumber mentah yang disediakan oleh vendor perisian dan membina perisian dengan cara yang anda perlukan, membolehkan dan melumpuhkan ciri yang anda perlukan.

Pakej adalah perisian yang telah dikompilasi sebelumnya, dan ia adalah hasil dari membina port, menggunakan pilihan yang difikirkan oleh penyelenggara pelabuhan akan sangat berguna bagi kebanyakan orang dan menggabungkannya dalam pakej untuk menjadikannya mudah dipasang. Pek membolehkan anda memasang, menyahpasang, dan menaik taraf perisian tambahan. Sistem pembungkusan FreeBSD disebut pakej , atau pkg. Maklumat pakej disimpan dalam pangkalan data SQLite yang boleh anda tanyakan mengenai data pakej.

Perkara penting lain mengenai pengurusan pakej FreeBSD adalah lokasi binari pakej. Pakej memasang binari di bawah /usr/local, dan kebanyakan fail konfigurasi berakhir pada /usr/local/etcdan bukannya /etc. Jika anda datang dari dunia Linux, anda mungkin mendapati ini sangat luar biasa.

Pengurus pakej FreeBSD, pkg

Penggantian generasi akan datang untuk alat pengurusan pakej FreeBSD tradisional adalah pkg. Menawarkan banyak ciri yang menjadikan urusan dengan pakej binari lebih cepat dan mudah, pkgadalah cara termudah untuk memasang perisian yang belum termasuk dalam sistem asas FreeBSD. Ini adalah satu program dengan banyak subkomando yang akan anda gunakan untuk hampir setiap operasi pada pakej seperti memasang, membuang dan menyiasat pakej. Semua operasi dan perubahan pakej mesti dijalankan seperti rootatau melalui sudo.

Inilah cara anda memasang curlpakej di FreeBSD:

pkg install curl

Anda dapat memberi makan perintah -yuntuk menghindari Proceed with this action? [y/N]:pertanyaan ketika memasang perisian atau anda dapat mengkonfigurasi pkgagar selalu berasumsi -ydalam file konfigurasi.

Untuk membuang pakej, anda akan menggunakan delete:

pkg delete curl

Seperti yang anda lihat, ia adalah sangat mudah dan intuitif.

Gunakan pkg helpuntuk rujukan cepat pada subkomando yang tersedia, atau pkg help <subcommand>untuk memaparkan halaman manual untuk subkomen tertentu:

pkg help
pkg help install
pkg help delete

Memasang pkg

Versi stok FreeBSD tidak dihantar dengan pkgpengurus pakej dipasang. Kali pertama anda cuba memasang beberapa pakej, pkgmeminta anda memasang alat pengurusan pakej. Sebagai contoh, katakan pakej pertama yang ingin anda pasang pada FreeBSD segar anda ialah wget, dan anda akan melihat permintaan berikut di terminal anda:

The package management tool is not yet installed on your system.
Do you want to fetch and install it now? [y/N]: y

Anda akan memukul Ydan ENTERpemasangan alat pengurusan pakej akan bermula. Setelah siap, pakej perisian awal yang ingin anda pasang ( wget) akan dipasang.

Anda juga boleh memasang sistem pembungkusan sendiri, tanpa menambah pakej lain, dengan berjalan pkg bootstrap. Selain itu, pkgtahu cara memasang dan mengemas kini sendiri dan pakej lain.

CATATAN: Instance Vultr telah pkgdipasang secara lalai, jadi anda tidak perlu memasangnya.

Mengkonfigurasi pkg

The pkgprogram direka untuk menjadi sangat fleksibel, dengan setiap subcommand mempunyai banyak pilihan. Anda boleh menetapkan tingkah laku yang disesuaikan, tetapi konsisten untuk kebanyakan program dengan fail konfigurasi seluruh sistem untuk pkg, yang terletak di /usr/local/etc/pkg.conf.

Fail tersebut mengandungi lalai untuk dimaklumkan pkg. Hanya dengan membaca fail itu, anda dapat mengetahui banyak perkara tentang bagaimana pkgberkelakuan. Konfigurasi ditulis dalam bahasa konfigurasi sejagat (UCL) dan terdapat banyak pilihan konfigurasi yang dikemukakan dan beberapa alias. Pemboleh ubah boleh ditetapkan ke bilangan bulat, rentetan, atau nilai Boolean:

#PKG_DBDIR = "/var/db/pkg";
#PKG_CACHEDIR = "/var/cache/pkg";
#PORTSDIR = "/usr/ports";
#INDEXDIR = "";
#INDEXFILE = "INDEX-10";        # Autogenerated
#HANDLE_RC_SCRIPTS = false;
#DEFAULT_ALWAYS_YES = false;
#ASSUME_ALWAYS_YES = false;
. . .

Anda boleh menentukan alias untuk pkgsubkomando di pkg.conf. Di bahagian bawah pkg.conf, anda akan menemui seksyen berlabel ALIAS. Apabila anda berulang kali menjalankan perintah yang rumit, anda harus menambahkan alias.

Untuk maklumat lebih lanjut mengenai format dan pilihan fail, anda boleh merujuk ke pkg.conf(5)halaman manual :

man pkg.conf

Mencari pakej

Setelah anda memasang pengurus pakej, anda boleh memasang pakej. Sekiranya anda seorang pentadbir sys, anda sudah biasa dengan fakta bahawa sistem operasi yang berbeza memberikan nama yang berbeza untuk versi perisian yang dibungkus. Satu pakej untuk pelayan web Apache pada FreeBSD, misalnya, akan mempunyai nama yang sama sekali berbeza daripada Apache yang dibungkus pada pengagihan Linux yang berbeza. Oleh itu, sebelum anda dapat memasang apa-apa, anda perlu mengetahui nama pakej yang ingin anda pasangkan.

Projek FreeBSD menawarkan beberapa set pakej di repositori awam, dan ia dikemas kini setiap beberapa hari. Kini terdapat lebih daripada 25,000 pakej.

Sebagai contoh, mari kita cuba mencari pelayan web Apache:

pkg search apache
# apache24-2.4.38                Version 2.4.x of Apache web server

Ia akan menemui semua pakej dengan apachenama mereka. Ini akan kembali senarai panjang, tetapi apa yang anda cari adalah apache24pakej. Terdapat penerangan ringkas setiap pakej. Ini sepatutnya membantu anda ketika memutuskan pakej apa yang hendak dipasang, tetapi tidak selalu mudah.

Sesetengah carian boleh menjana beratus-ratus hasil. Anda perlu menggunakan pilihan baris arahan yang berbeza untuk memangkas atau menyesuaikan hasil carian. Rujuk pkg-searchhalaman manual atau halaman bantuan pkg help searchuntuk mengetahui lebih lanjut mengenai pilihan carian biasa.

Jika anda tidak pasti sama ada pakej adalah apa yang anda mahukan anda boleh menggunakan arahan berikut untuk melihat butiran pakej:

pkg search -R apache24

# name: "apache24"
# origin: "www/apache24"
# version: "2.4.38"
# comment: "Version 2.4.x of Apache web server"
# maintainer: "[email protected]"
# www: "https://httpd.apache.org/"
# abi: "FreeBSD:12:amd64"
# arch: "freebsd:12:x86:64"
# prefix: "/usr/local"
# . . .
# . . .

Perintah ini akan memberi anda banyak maklumat berguna mengenai pakej tersebut.

Memasang pakej

Untuk memasang perisian, gunakan installsubkomand dan nama pakej untuk dipasang:

pkg install apache24

Apabila anda memasang pakej dengan pkg install, pkgberunding dengan katalog pakej tempatan, kemudian muat turun pakej yang diminta dari repositori di pkg.FreeBSD.org. Setelah pakej dipasang, ia didaftarkan dalam pangkalan data SQLite yang disimpan /var/db/pkg/local.sqlite. Berhati-hatilah untuk tidak menghapus fail ini, jika tidak, sistem anda akan kehilangan pakej mana yang telah dipasang. Sekiranya perisian mempunyai kebergantungan, pkgakan mengetahui dan memasangnya bersama dengan pakej asas. Pakej yang dipasang sebagai pergantungan dipanggil pakej automatik .

Pengurus pakej mempunyai kemampuan untuk hanya memuat turun pakej melalui internet dan menyimpannya di satu lokasi pada cakera. Ini membolehkan anda memasangnya pada masa yang lain. Anda boleh menggunakan pkg fetcharahan untuk memuat turun pakej tanpa memasangnya:

pkg fetch nginx

Perintah ini hanya akan mengambil Nginx tanpa pergantungannya. Anda boleh menggunakan -dbendera untuk merebut semua pergantungan serta pakej bernama:

pkg fetch -d nginx

Pakej dimuat turun ke direktori cache pakej /var/cache/pkg. Setelah anda mengambil pakej, pkgakan menambahkannya ke direktori ini. Anda boleh menyenaraikan fail untuk melihat kandungannya:

ls /var/cache/pkg

Sekarang, untuk memasang pakej yang dimuat turun selepas pengambilan, jalankan seperti pkg installbiasa. Proses pemasangan menggunakan fail cache daripada fail yang dimuat turun.

Dari masa ke masa, direktori cache pakej boleh menjadi besar. The pkg cleanarahan memindahkan apa-apa pakej cache yang telah digantikan dengan versi yang lebih baru, serta mana-mana fail pakej yang tidak lagi di dalam tabung:

pkg clean

Jika anda mahu mengeluarkan semua pakej cache, gunakan -abendera:

pkg clean -a

Sekiranya anda ingin membersihkan cache paket secara automatik setelah setiap pemasangan atau peningkatan pakej, tetapkan pkg.confpilihan AUTOCLEANke true.

Mendapatkan maklumat mengenai pakej yang dipasang

Sekiranya anda lupa pakej mana yang anda pasang pada sistem yang boleh anda gunakan pkg infountuk mendapatkan senarai lengkap perisian yang dipasang:

pkg info
# atk-2.28.1                     GNOME accessibility toolkit (ATK)
# avahi-app-0.7_2                Service discovery on a local network
# ca_root_nss-3.42.1             Root certificate bundle from the Mozilla Project
# . . .
# . . .

Sekiranya anda mahukan lebih banyak maklumat tentang pakej yang dipasang, gunakan pkg infodan nama pakej. Ini menunjukkan butiran pemasangan pakej dalam laporan mesra manusia:

pkg info nginx
# nginx-1.14.2_3,2
# Name           : nginx
# Version        : 1.14.2_3,2
# . . .
# . . .

Anda boleh melihat banyak maklumat berguna seperti versi perisian, masa pemasangan perisian, lesen perisian, bendera masa kompil dan banyak lagi. Semak pkg-infohalaman lelaki untuk butiran lengkap.

Mengeluarkan pakej

Untuk mengosongkan pakej binari gunakan pkg deletesub arahan . Ia juga tersedia sebagai pkg remove:

pkg delete nginx
# or
pkg remove nginx

Anda akan mendapat senarai pakej yang akan dikeluarkan dan berapa banyak ruang yang akan dibebaskan.

Sekiranya anda membuang pakej yang bergantung pada pakej lain, hapus juga pakej yang bergantung pkg.

Pakej mengunci

Mungkin ada masa apabila anda mahu pakej pada pelayan anda tidak pernah naik taraf. Apabila anda mengunci pakej, pkgtidak akan meningkatkan, menurunkan, menyahpasang atau memasangnya semula. Ia menggunakan peraturan yang sama untuk ketergantungan pakej dan program yang ia bergantung kepada.

Gunakan pkg lockuntuk mengunci bungkusan:

pkg lock openssl

Ini opensslpakej kini dikunci.

Untuk menyenaraikan semua pakej yang terkunci pada sistem, gunakan -lbendera:

pkg lock -l

Untuk mengeluarkan kunci, gunakan pkg unlockarahan:

pkg unlock openssl

Untuk mengunci atau membuka kunci semua pakej pada sistem sekaligus, gunakan -abendera:

pkg lock -a
pkg unlock -a

Repositori pakej

Repositori pakej disokong oleh pkg, yang dinamakan koleksi pakej. Anda boleh menambah, membuang, mengaktifkan, dan mematikan repositori. Anda harus mengkonfigurasi setiap repositori dalam failnya sendiri menggunakan format UCL. Repositori FreeBSD rasmi terdapat di dalam /etc/pkgdirektori. FreeBSD dihantar dengan repo "FreeBSD" diaktifkan. Anda akan menemui fail konfigurasinya di /etc/pkg/FreeBSD.conf:

FreeBSD: {
  url: "pkg+http://pkg.FreeBSD.org/${ABI}/quarterly",
  mirror_type: "srv",
  signature_type: "fingerprints",
  fingerprints: "/usr/share/keys/pkg",
  enabled: yes
}

Anda boleh menambah dan mengalih keluar repositori seperti yang diperlukan. Seperti /etc/pkgyang dikhaskan untuk repositori FreeBSD rasmi, anda memerlukan direktori lain. Lokasi tradisional adalah /usr/local/etc/pkg/repos. Jika anda ingin menggunakan direktori yang berbeza, anda perlu menetapkan lokasi pkg.confdengan REPO_DIRSpilihan. Direktori repositori tempatan tidak wujud secara lalai, jadi anda perlu menciptanya mkdir -p /usr/local/etc/pkg/repos. Letakkan konfigurasi repositori anda sendiri dalam direktori itu.

Contoh pkgsubcommands

Bahagian ini akan menyenaraikan beberapa sub arahan yang paling kerap digunakan yang kemungkinan besar anda gunakan ketika mentadbirkan pelayan FreeBSD:

# Installs a package without asking any questions
pkg install -y package

# Makes a backup of the local package database
pkg backup

# Lists all installed packages
pkg info

# Shows extended information for a package
pkg info package

# Searches package repository
pkg search -i package

# Shows packages with known security vulnerabilities
pkg audit -F

# Shows which package owns the named file
pkg which file

# Removes unused packages
pkg autoremove

# Uninstalls a package
pkg delete package

# Removes cached packages from /var/cache/pkg 
pkg clean -ay

# Updates local copy of the package catalog
pkg update

# Upgrades installed packages to their latest version
pkg upgrade

# Checks the integrity of all your packages
pkg check -saq

# Verifies that a package's files are unaltered
pkg check -s nginx

# Shows what files came with the package
pkg info -l nginx

# Lists non-automatic packages
pkg prime-list

Fail dan direktori penting

  • The pkgfail konfigurasi -/usr/local/etc/pkg.conf
  • Direktori yang dikhaskan untuk repositori FreeBSD rasmi - /etc/pkg
  • Fail repositori FreeBSD - /etc/pkg/FreeBSD.conf
  • Lokasi tradisional untuk repositori tersuai - /usr/local/etc/pkg/repos
  • Direktori cache pakej - /var/cache/pkg
  • Pangkalan data SQLite - /var/db/pkg/local.sqlite

Ringkasan

FreeBSD menyediakan dua teknologi pelengkap untuk memasang perisian pihak ketiga: Koleksi Pelabuhan FreeBSD, untuk memasang dari sumber dan pakej, untuk memasang dari binari yang telah dibina terlebih dahulu. Oleh kerana FreeBSD beralih sistem dengan lebih tegas ke arah pengurusan pakej sejagat, cubalah menguruskan perisian pihak ketiga dengan pkgseboleh-bolehnya. Elakkan menggunakan port melainkan perisian yang anda inginkan tidak mempunyai versi paket atau anda perlu menyesuaikan pilihan waktu kompilasi.



Leave a Comment

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.

Janji Teknologi Yang Masih Tidak Ditepati

Janji Teknologi Yang Masih Tidak Ditepati

Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.

Fungsi Lapisan Seni Bina Rujukan Data Besar

Fungsi Lapisan Seni Bina Rujukan Data Besar

Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut