pkgng移行/Shellshock


[その前] [その後] [目次]

【2014年9月21日(日)】

201409_3.html#d20140921

[午前中]

@ 東京は曇り。1100 起動。

@ 昨日に引き続いて、動かなくなってしまった CGI の改修。

[午後]

@ やっと直った。昔作った CGI のソースを直すのは大変だ。

[夜]

@ 続いて、家鯖の FreeBSD の portupgrade 祭り。しばらく前から何回 pkgdb -F しても Stale が解消しなくて困っていたり。

@ なんか、同じツールを何回も make しているように見えるのは気のせいだろうか。

@ 結局、何度やっても直らない。困ったなぁ。


【2014年9月22日(月)】

201409_3.html#d20140922

[午前中]

@ 東京は晴れ。

@ 今日は飛び石連休の谷間。部下全員休みで、職場にいるのはヲレと対面に座っている上司だけだ(汗;)。

[午後]

@ マッタリと仕事(ぉぃ

[夜]

@ ほぼ定時で退社。

@ 帰宅してから晩飯アワー。


【2014年9月23日(火)】秋分の日

201409_3.html#d20140923

[午前中]

@ 東京は晴れ。さわやかな秋晴れだ。

@ 午前中は久しぶりにテニス。最初のうちはヘロヘロだったが、長いブランクの割にはそれほどデグレしてなかった。

[午後]

@ 昼飯アワーは焼きうどん。

@ portupgrade がうまく動かない自宅鯖の FreeBSD の調査の続き。

@ pkgdb を削除してから作り直してみたが、やっぱり駄目だ。

@ portupgrade の最中に「pkg(8) must be version 1.3.8 or greater, but you have 1.3.7. You must upgrade pkg(8) first」と出ていることに気付いた。原因はこれか?

@ portupgrade で pkg だけバージョンアップ。これがいわゆる pkgng なのかな。

@ まずは pkg2ng シロとか出てきたけど、この状態でとりあえず portupgrade -Rra。

@ 何とかデータベースも直って、portversion してもエラーが出なくなった。

@ さて、どのタイミングで新 pkg に移行するかなぁ。今後はあまりカスタマイズしないで動くような運用に変えていきたいところだが……

[夜]

@ 晩飯アワーは天ぷら。

@ うーん、どうも pkgng に移行するのは拒否権無しのようだ。この辺を見ながら対策を練る。

@ /etc/periodic.conf に 2 行追加。

daily_backup_pkgng_enable="YES"
daily_status_security_pkgaudit_enable="YES"

@ /etc/make.conf に 1 行追加。

WITH_PKGNG=yes

@ pkg2ng を実行。その後、pkgdb -fu を実行。

# pkg2ng
Converting packages from /var/db/pkg
Converting perl5-5.16.3_11...
Child process pid=6290 terminated abnormally: Segmentation fault: 11
Analysing shared libraries, this will take a while...
Checking all packages:  89%
pkg: fstat() failed for(/usr/local/etc/tcsd.conf.dist): No such file or directory
Checking all packages: 100%
# pkgdb -fu
--->  Updating the pkgdb
[Reading data from pkg(8) ... - 244 packages found - done]

@ なんか、怪しいエラーっぽいものが出ているが大丈夫なのか?(汗;)

@ オプションをカスタマイズしていたのは apache と postfix と libiconv あたりだったかなぁ。screen もそうだったかも知れないが、デフォルトのまま 256color には対応していたような気もする。

@ ここここも参考になりそうなのでメモ。

@ あちこちぐぐって試してみる。順番が正しいのかどうかはよく分からない(汗;)。

/usr/local/etc# mkdir -p pkg/repos
/usr/local/etc# vi pkg/repos/FreeBSD.conf
/usr/local/etc# cat pkg/repos/FreeBSD.conf
FreeBSD: {
  url: "http://pkg.FreeBSD.org/${ABI}/latest",
  mirror_type: "srv",
  enabled: "yes"
}

@ pkg upgrade -n を実行すると「No valid repository found.」(汗;)

@ /usr/local/etc/pkg/repos/FreeBSD.conf を以下のようにしたら動いた。多分、enabled の true は yes でも同じだろう。url のところで最初に参考にしたのが古い情報だったのかも知れない。

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

@ その後、freebsd-update で FreeBSD 8.4-RELEASE-p16 まで上げたところ、/etc/pkg/FreeBSD.conf があることに気付いた。今できたのか? どっちが優先されるんだろう。

@ dry run じゃなくて pkg upgrade したいところだが、ハマりそうなのでとりあえず週末まで待つとするか。


【2014年9月24日(水)】

201409_3.html#d20140924

[午前中]

@ 東京は曇りのち雨。

@ 午前中は上司の出席する会議に代理出席。

[午後]

@ 昼飯アワーは鮭いくら丼。

@ ふにふにと仕事。

@ 定時を1時間ほど過ぎて退社。

[夜]

@ 帰宅してから晩飯アワー。

@ FreeBSD pkg(ng) の研究。ひとまず、「pkg info apache22-worker-mpm | less」と「pkg search -f apache22-worker-mpm | less」を実行して、オプションの違いを見る。

@ apache 以外にも screen とか、libiconv がやはりオプションが違うようだ。

@ 試しに apache だけ portupgrade -f でバージョンアップしてみる。

@ あとは apache、screen、libiconv 他を lock してから「pkg upgrade」を実行すれば良さそうだが、lock するのは全部でいくつくらいになるのだろう。これを確認してからでないと、ちょっと pkg upgrade は怖いな。


【2014年9月25日(木)】Shellshock

201409_3.html#d20140925

[午前中]

@ 東京は曇り。

@ bash の脆弱性のニュースが飛び込んでくる。こりゃ大変だ。

[午後]

@ 担当しているサービスのほとんどはセーフであることが判明。やれやれ。

@ 微妙に怪しいやつを何とかしないとなぁ。

[夜]

@ 残業アワーに突入。

@ 帰れなくなって、2630 過ぎにホテルに収容。


【2014年9月26日(金)】

201409_3.html#d20140926

[午前中]

@ 東京は晴れ。ホテルから出撃。

[午後]

@ 1日中、bash の脆弱性対策。古い Linux 使っていると大変だ。

[夜]

@ 2225 くらいに退社。

@ 地元でラーメン食べてから帰宅。

[FreeBSD / pkg / bash]

@ 自宅鯖の bash 対策……の前に、pkg 環境の確認。

@ pkg2ng のときに 20 くらいのパッケージで「options changed」が出たのだが、ports と pkg でオプションがどの違うのか、確認しておいた方がいいだろう。

@ ということで、確認用に簡単なシェルスクリプトを書いてみる。ちうか、これを脆弱性のある bash で書いてちゃダメじゃん(汗;)。

while [ -n "$1" ]; do
  echo "#### $1 ####"
  diff <(pkg info $1 | sed -e '1,/^Options/d' | sed -e '/^[A-Z]/,$d') <(pkg search -Q options -S name --exact $1 | sed -e '1d')
  shift
done

$ diff_pkg_options.sh apache22 p5-libwww
#### apache22 ####
25,26c25,26
<       CGI            : off
<       CGID           : on
---
>       CGI            : on
>       CGID           : off
58c58
<       PROXY          : on
---
>       PROXY          : off
63c63
<       PROXY_HTTP     : on
---
>       PROXY_HTTP     : off
#### p5-libwww ####
1c1
<       HTTPS          : on
---
>       HTTPS          : off

@ しかし、pkg search には Options だけを出すオプションがあるのに、pkg info にはどうして無いんだろうなぁ。Options のところだけをスクレイピングするのにインチキ臭い処理をしないで済むはずなのに(←インチキ臭いのは本人の能力不足である(汗;))

@ FreeBSD の bash 脆弱性対策の情報を集めるが、あまり見つからず困った。

@ 力尽きて寝る。


【2014年9月27日(土)】

201409_3.html#d20140927

[午前中]

@ 東京は曇り。1100くらいに起動。

[午後]

@ 午後は卓球。いつもより早めに切り上げる。

@ 新宿へ。

[夜]

@ 高校時代の部活の1つ上の先輩(の一部)が上京してきたので迎撃飲み会。昔話に花が咲く。25年以上昔のこととは思えない。

@ 地元でラーメンで〆てから帰宅。食べすぎだ(汗;)。

@ 自宅鯖の bash の脆弱性対策。pkg コマンドでやっても up to date だと言ってバージョンアップしてくれないので、結局 ports で入れ直してみたり。

@ しかし、最初に出たパッチは不完全だという話もあるし、FreeBSD の場合はどうなんだろうなぁ。Linux と違って情報が少なくてよくわからん。

@ 諦めて遮断。ヲレアンテナの復活は明日以降。


【2014年9月28日(日)】

201409_3.html#d20140928

[午前中]

@ 東京は晴れ。昼前くらいに起動。

[午後]

@ 昨日バージョンアップした bash だが、またバージョンが上がっているようだ。

@ しかし、なんか pkg version -v だとバージョンアップすべきものが複数出てくるのに、pkg upgrade だと「Your packages are up to date.」とか出てくるのはなぜなんだろうなぁ。

@ portupgrade では一応バージョンアップできそうだったので、一応、それでいいことにするか。

[夜]

@ 晩飯アワーは今シーズン初サンマ。


【2014年9月29日(月)】

201409_3.html#d20140929

[午前中]

@ 東京は晴れ。

@ ガビーン、寝坊した(汗;)。

@ 電車に座れず、ずっと立ちっぱなし。

@ ふにふにと仕事。

@ bash の脆弱性は無事解決。やれやれ。

[午後]

@ 昼飯アワーは鰯の竜田揚げ。

@ 午後は打ち合わせ1件。

@ 残業アワーに突入。

[夜]

@ 2100過ぎに退社。

@ ラーメン食べてから帰宅。


【2014年9月30日(火)】

201409_3.html#d20140930

[午前中]

@ 東京は晴れ。

@ ふにふにと仕事。

[午後]

@ 期末なのでいろいろと事務処理が。

@ 残業アワーに突入。

[夜]

@ トラブル発生でハマる。

@ ラーメン食べてから帰宅。


[その前] [その後] [目次]

[ArctanX のホームページに戻る]

Valid XHTML 1.1 ArctanX <arctanx@hauN.org>