FreeBSDのパッケージ管理
ports
FreeBSD 6.1での情報です。portsツリー更新
portsnapを使って更新。インストール方法は省略します。設定は、
man portsnap.confで分かります。
初回
portsnap fetch extract update
2回目以降
portsnap fetch update
自動更新させるために、crontabに以下を追加
0 3 * * * root /usr/sbin/portsnap cronこれで、3:00-4:00の間のランダムな時刻に fetch update を行う
これで、3:00-4:00の間のランダムな時刻に fetch を行う。updateは行われない。
man portsnapで調べたところ、portsのインストールまたはアップデート作業中にcronによるupdateが生じる危険性があるため、cronによるportsnap updateはやめておいた方がよいようだ。
ただし、次のようにインデックスファイルだけ更新するのは有りらしい。
portsnap -I updateでも、結局最新にするには、
portsnap updateを手動で行う事。
更新が可能なportsを表示
バージョンが一致するものは除いて(-L=)、バージョン付き表示(-v)portversion -vL=
インストール手順
これだけで,依存関係もインストールできる.portinstall [パッケージ名]ただし,特殊な設定をしたい場合は事前に調べて、以下のファイルを編集したり、 オプション付きでインストールしなければいけない事も.
- /etc/make.conf
- /usr/local/etc/pkgtools.conf
更新手順
# 更新可能なportsのバージョン情報を表示 portversion -vL= #更新する前に,更新予定のportsの変更内容を確認(目を通した方が良い) less /usr/ports/UPDATING # 特に問題なければ、portversionで表示されたパッケージを更新 portupgrade [パッケージ名]
また,portupgrade -a とすると,全てのパッケージを更新できる.
削除手順
pkg_deinstall [パッケージ名]対象のパッケージに依存するパッケージがインストールされている場合は,エラーとなる.
既知の脆弱性のあるportsを表示
脆弱性のデータベースファイルをダウンロードして調べるportaudit -dFa