目次

pkgng pkg(8)

FreeBSD 10-CURRENTのデフォルトのパッケージ管理システム

install

# cd /usr/ports/ports-mgmt/pkg
# make install clean

9.1以降なら

# /usr/sbin/pkg

pkg_install package データベースを新しいフォーマットへ変換する

# pkg2ng

version10.x未満の場合、/etc/make.confに以下の行を加える。

WITH_PKGNG= yes

コマンド

pkg auditインストールされているアプリケーションの脆弱性チェック
pkg autoremove依存関係でインストールされたもののそれ以外では必要とされていないパッケージの削除をインタラクティブに実施
pkg checkインストール済みパッケージデータベースのチェックと,状況に応じて不整合部分の修正を実施
pkg cleanバイナリインストール時に発生するパッケージキャッシュの消去
pkg deleteパッケージのアンインストール
pkg infoインストールされているパッケージに関する情報を表示(ユーザ向け出力)
pkg queryインストールされているパッケージに関する情報を表示(スクリプト向け出力」)
pkg installリモートリポジトリからパッケージをインストール
pkg registerパッケージをデータベースへ記録,または同期を実施
pkg searchリモートデータベースをパッケージ検索
pkg updateリモートリポジトリデータベースをアップデート
pkg updatingインストールされているアプリにおいて/usr/ports/UPDATINGにアップデートの注意事項が記載されているもののリストアップ
pkg upgradeインストールされているパッケージのバイナリアップデート
pkg versionどのパッケージをアップデートすべきかの情報を表示
pkg whichどのパッケージがファイルを所有しているのかをチェック
pkg2ngpkg_installによってインストールされたデータベースをpkgngデータベースへ変換するコマンド

repository

FreeBSD: {
  url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest",
  mirror_type: "srv",
  enabled: true
}

PC-BSDのrepositoryを使う

FreeBSDのrepositoryが動いているのと、書式が若干変わったようなので削除

2012年11月にFreeBSD.orgのサーバが侵入されて以降、repositoryが現在(2013/05/04)まで復旧していない。

で、PC-BSDのrepositoryを使用する。


まず、/usr/local/etc/pkg.confを書き換える。1)

packagesite: ftp://pub.allbsd.org/pub/pcbsd/packages/9.1-RELEASE/amd64/
OR
packagesite: ftp://pub.allbsd.org/pub/pcbsd/packages/9.1-RELEASE/i386/
OR
packagesite: http://ftp.jaist.ac.jp/pub/PC-BSD/packages/9.1-RELEASE/i386/

repositoryのアップデート

# pkg update -f

Tips

updateでエラー

pkg update をしようとするとエラーが出る。

どうも、パッケージDBの更新に失敗している模様。

いろいろやったが埒があかないので、結局portsで make reinstall としてしまいましたとさ。

pkg: Unable to find catalogs

前段と同じ

# portsnap fetch extract
# cd /usr/ports/ports-mgmt/pkg
# make deinstall clean
# make install clean

FreeBSD.meta has wrong version 2 と言って失敗

どうも、12系列でメタバージョンが変わった模様。11系列のままなので自分が悪いのだがそうも言ってられないので。

pkg bootstrap -f

で、強引に治す

参考

pkg mismatch package running kernel

参考

1)
JaistとかAllBSDのレポだと動きが怪しいので正規に変更 @2013/07/27