birdきょうのつぶやき@digitune

きょうのつぶやき@digitune

記録メモ。自宅サーバのメルコLinkStation LS-VLのカーネルを2.6.31.8→3.3.4にアップデートしたのでその手順中気になったこと。とはいえ手順的にはほぼこのページに書いてある通りです。いつもお世話になってます> http://www.yamasita.jp/linkstation/2012/03/120306_post_316.html (09:36 webから)

ググった限りvanilla kernelにpatchを当てる方法もあるようだけど、僕はメルコがGPLに則って次のサイトで配布してくれているソースを用いました。ちなみにlinux-3.3.4.tar.gzだけじゃなく古いのも必要> http://opensource.buffalo.jp/ (09:41 webから)

なんで古い方linux-2.6.31.8.tar.bz2が必要かというと、新しい方には.configファイルが入っていなかったので…。buffalo/configs以下にあるbuffalo_nas_fw_88f6281.configコレとかなのかなぁ? (09:47 webから)

それはともかく、古い方から.configを取り出し、新しい方を展開した後のtop directoryに置いてmake oldconfig、後は基本デフォルト選択で新しい方に対応した.configが出来ます。さっきのページにあるようにMakefileの修正も忘れずに。 (09:50 webから)

後は通常通りmake uImage、make modules、make modules_installします。ここまでは一般ユーザでOK。 (09:53 webから)

なお、僕の環境だと最後のコマンドがエラーで終わってしまったので、実行時に環境変数を一つ指定する必要がありました>INSTALL_MOD_PATH=./binaries/ make modules_install (09:53 webから)

最後に/boot以下にあるuImageとinitrdを更新しますが、僕の環境では/bootがread onlyでmountされていたので、remountが必要でした>mount -o remount,rw,nosuid,nodev /dev/sda1 /boot (09:55 webから)

全て完了後、ドキドキしながら再起動してみたところ、無事kernel更新に成功。通常通り立ち上がってきました。dmesgでboot時console出力を確認した限りでも特に問題はなさそう。 (10:02 webから)

ちなみに僕はLS-VLをDebian化しているので、そちらの流儀に則ると本来はkernelのdebファイルを作ってinstall、とすべきなんですが、メルコカーネル+Debian userland、という構成の我が家のサーバの場合、カーネルだけはdpkg管理外としたかった。 (10:07 webから)

Debian squeezeからwheezyへのアップグレードも無事完了。Debian公式の下記ページ通りの手順でほぼ問題ありませんでした。apache2とmysqlが古い設定ファイルだと起動せず手で修正する必要があった点、(続) http://www.debian.org/releases/stable/s390/release-notes/ch-upgrading.ja.html (11:49 webから)

dovecotのSSL鍵の置き場所が変わっていたので対応したこととIPv6を無効化したこと、あと僕が使っているふっるいtdiaryだとruby1.9との組み合わせではうまく動かなかったのでruby1.8を明示的に使うようにした点<をい、くらいでした。このくらいなら問題無し。 (11:54 webから)

そういや新しいkernelではIPv6 supportが入っていないようだけど、古い方もそうだったかしら?後でちょっと調べておこうかな。 (11:57 webから)

Debianアップグレードしたらmuninの表示がまたカッチョ良くなった。 (12:17 webから)

自作Twitter→Facebook/tDiary連携ツールもwheezy標準のruby1.9だと動かなかった…orz。こちらはなんとなく単に1.9の方に必要なgemsが入っていないだけな気がするけど、あとでちゃんと対応することにしてやっぱりruby1.8指定でとりあえず対処。 (12:35 webから)

あーてすてす。 (14:53 webから)

ruby1.9側に必要なgemをinstallしてみたのだが、fb_graph内で「undefined method `each’」が出てしまいイマイチうまく行かず。うーむ。 (15:08 webから)

そういやDebianで、同じ名前で複数バージョンのコマンドがインストールされている場合などに、デフォルトで「ruby」などと実行したときにruby1.8と1.9どちらを実行するかを切り替えるのに、update-alternativesコマンドを使う作法をすっかり忘れていた(汗。 (15:11 webから)

そんなわけでシステム全域でとりあえずruby1.8がdefaultとなるように変更。そのうちにちゃんと移行しないとねー(tdiaryも)。 (15:14 webから)