2014年1月28日火曜日

FreeBSD 10.0-RELEASEにアップデート時にはpkgの入れ直し



注意:以下の説明はすでにpkgngを導入し終えた環境が前提です。


あと、「freebsd-update install」コマンドは3回叩く事になるんですが、


そのうち2回目での作業です。


(3回目でFreeBSD-9.xのライブラリに依存するソフトは動かなくなる)





10.0-RELEASEではABI(windowsでいうwin32API)が変更になってるので、smartmontoolやらなんやら動かないものが出てくる。


てなことで、安全のためpkgを全部入れ替える必要がある。



pkg upgrade -fy



で大部分はいけるんだけど。fを忘れて悲しい事になったりする。


中途半端に10用のが入ったり、昔のが残ったり。


また全部入れ直すのは悲しいので以下のコマンドを叩くとよい。



pkg query -e '%q != freebsd:10:x86:64' %o | xargs pkg install -fy



freebsd:10:x86:64の部分は32bitOSと64bitOSで違うので気をつけて下さい。


それでも、入れ直しが出来ないものがあるので残りはportupgradeなり


補足


10.0にアップグレードしてからpkg2ngした時は上の方法は使えない。



pkg query %t |sort -n |tail -n 1


結果:1391375822



と言う風にpkg2ngの時の終了時刻が得られるので、pkg upgrade後にそのタイムスタンプ以前のタイムスタンプになってるものはportsで入れ直そうっていう方針でOKやと思います。





0 件のコメント:

コメントを投稿