2007年9月9日日曜日

FreeBSD: ATA Soft RAID1の復旧

先日自宅サーバ(FreeBSD5.x)の ATA Soft RAID1の片割れがセクタエラーを起こしまくってDEGRADEしました。
それを本日復旧したので、その作業メモです。

  1. 故障したディスクの交換用ディスクを確保する。容量は当然これまでのもの以上でなければならない。
  2. shutdownする前にdmesg, /var/log/messagesなどで故障したドライブを再度確認する。atacontrolコマンドではどうもこれの確認ができない模様?
  3. shutdownし、電源を落とす。
  4. 故障したドライブを交換する。
  5. 起動する。
  6. 交換したドライブをスペアドライブとして追加する(atacontrol addspare アレイ識別子 ドライブ名)
  7. 「atacontrol rebuild アレイ識別子」でリビルドを開始させる。
  8. 「atacontrol status アレイ識別子」でREADYになれば完了。

なお、もし故障したのが起動ドライブだったばあい、4.のディスク交換時にマスターとスレーブの設定を入れ替えるなどしないとFreeBSDそのものの起動ができない恐れがあるので注意すること。



2007年7月25日水曜日

FreeBSD: amd64、いやC言語の罠

えー、先日PAEにするかamd64にするか迷っていたFreeBSD機ですが、愛用のjvimをports collectionからインストールしようとして罠にはまりました。
jvim3-canna+freewnnをportinstallしたのは正常にできたわけです。
jvimの起動も一見正常。
でも、かな漢字変換しようとするとcore dump。。。

でmake時のメッセージにpointerをサイズの違う整数型に入れているとか何とか言う趣旨の警告メッセージを発見。
で、こういうプログラムを作って試しました。

#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>

main ()
{
    printf("%d\n", sizeof (char));
    printf("%d\n", sizeof (int));
    printf("%d\n", sizeof (long));
    printf("%d\n", sizeof (long long));
    printf("%d\n", sizeof (char *));
    printf("%d\n", sizeof (int *));
    printf("%d\n", sizeof (long *));
    printf("%d\n", sizeof (long long *));
}

さて、これをi386機でコンパイル実行すると、、、

1
4
4
8
4
4
4
4

のようになることは自明と言っても良いでしょう。が、amd64機だと、、、

1
4
8
8
8
8
8
8

となんとまぁ、64ビットだから当たり前と言えば当たり前ですが、ポインタは8バイトになります。どうやら件のプログラム中にはこれをintに入れているのがあると見た。
もっと驚いたのがlongも64ビットになっていることかな。VAX-11以来32ビット機主流が長く続いたから、long=int=32ビットと言う前提のプログラムも多いと言う気もするんだが、、。

逆に考えれば、ポインタをlongに入れていれば問題はなかった、、、ってそういう使い方をさせてしまうC言語の「アセンブラ」としての側面がそもそもの原因ですね。

もちろん、本来はそれを活用できるのがC言語のうまみであって、アーキテクチャが変われば、それにあわせて変えなきゃならんということを忘れなければいいだけですが、(え?普通のアセンブラとの違い?、ニーモニックが変わらないって事だけでしょう:-)、、。

巷では「高級言語」ってことにされているから、つい忘れてしまうわけですね。
まぁ高級言語でもアーキテクチャ依存性があるものもあるから、Cだけが悪いってわけじゃないですが。

そもそも、charのビット数からして処理系依存なんだってことをなぜ忘れるかって言うと、それだけ世のアーキテクチャが変わり映えしない単調なものになっていたってことで、、、。

PS. 結局jvimはjvim3-direct_cannaなら問題なく使えることがわかったので、それを使おうかと、、。うーん、Wnnにしたかったんだけど。。それに、まだ例の警告が数ヶ所出てるのが怖い。。



2007年7月11日水曜日

NHK時計

をつけてみました。
入手元はこちら
http://www.nhk.or.jp/lab-blog/
今のデザインでは左下ですね。

ちょっとこのブログの使い方についてはいろいろ思案中。



2007年5月3日木曜日

FreeBSD: i386+PAEか、amd64か、それが問題だ?

久々に。

現在DELL PowerEdge840のIntel Xeon 3070(?core2つの奴)に4GB-RAM搭載っていうのにFreeBSD入れつつあるんですが、普通の(?)のi386用だと512MB程メモリを使わなくなってしまう(32ビットメモリ管理の関係で)ので、拡張メモリモデルに対応させなければならないんだけど、Intel64の場合、タイトルのどっちのパターンがいいのかなぁ?と言う状態です。

そもそも巷の書籍にはこういうリッチ(?)な構成を前提に説明しているのがまだないみたいだし、最近オフィシャルなところに報告している事例が激減している気がする。
(これはおそらくブログの影響だと思う。ブログの検索はかなり厄介なので、ブログばやりも善し悪しですなぁ。)

個人的にはIntel64なのにamd64ってのが好みですが、i386ベースの方が無難な気もするけど意外とPAEって検証が済んでないドライバとかも多いようだし、、。

まぁ一晩探してエイやってところですかね?

ちなみに入れようとしているのはもちろん、FreeBSD 6.2 RELEASEです(すぐcvsupするだろうからSTABLEになるだろうけど)。



2007年2月4日日曜日

ICOM SR-5200VoIPとNokia E61のSIP接続?

を今日ずっと試していたのですが、うまくいきませんでした。

親機: ICOM製SR-5200VoIP
子機: NOKIA製E61(日本語スタンダードバージョン)

SIPの設定をやっても「登録に失敗しました」って出るんですよね。
ちょっとGoogleで探した範囲ではまだこの組み合わせの成否についての情報は見つかりません。

次はSR-5200VoIPのsyslogをちゃんと残してチェックしてみよう。。



2007年1月4日木曜日

nine(WILLCOM)の充電について

昨年末にWILLCOMのPHSをWX310JからWS009KE、つまりnineと言うものに機種変更しました。まぁより薄くて軽いのにしたかったと言うわけで、その点については満足なんですが、、、。

こいつのバッテリ残留表示について、もちが悪いとかあてにならないとか言う話題が散見されるのと、実際「?」と思うこともあるのですが、その辺は「当時IDOの初めてのEzWeb対応機種」を経験済みなので、まぁ良しとしましょう。私にとっては実用上困らないし、、。

で、出先で充電するためにiRiverのUSB端子用充電器を使ってちょっと困ったことが、、。まぁ純正充電器じゃないし、PCでもないので、サポート範囲外になりそうですが、、、。

充電しようとつないでも裏の青ランプはつくけど、液晶右上は充電表示にならないことがあります。で、変だなと思って充電完了後とかある程度使った後ふと見ると、、、

電池残量表示がない!!!


いや、残量が空になっているとかでなく、残量表示のアイコンそのものが表示されてないのです。充電器をつないでも変わりません(青ランプはつく)。で、この状態で、いったん電源を切ると、、、

電源が入らない!!!

何じゃこりゃ?という羽目に陥ります。電池パックそばのリセットボタンを押しても復帰しません。電池パックのコードをいったん抜いてさしなおすと復旧します。

今日で二度目(正確にはまだ電源を切るのはやってません。電池パック周りをいじるのは面倒なので、避けたい。。)

まぁ正月休み明けにでもWILLCOMあたりに問い合わせてみようかと思いますが、、、。PCのUSB端子で再現実験ができれば楽なんですけどね。。。うーむ。。。



2006年12月4日月曜日

ばんえい競馬存続の危機

という記事があちこちにあります。

http://www.netkeiba.com/news/?pid=news_view&no=17227&category=B


ばんえい競馬そのものはサラブレッド系の競馬(平地、障害)よりも私の好みなのですが、応援・支援したいと思ってもちょっと難しいなと思います。問題は「北海道」に限られていると言う点が中心なので、私なりに与太ですが思いついた業績改善策
を書いてみます。

  1. 公式レースでなくても良いので、大相撲の地方巡業のように年に何回か北海道を出て、模擬レースなどでばんえい競馬の面白さになじんでもらう。
  2. 月曜は無理としても、土日のレースについてはJRAの全国の競馬場やウィンズでもレース中継や馬券の販売コーナを設けてもらう。
  3. 中央競馬の開催のない土日を年に何回か設けてもらって、その土日のレースは地上波テレビの競馬中継をしてもらう。
  4. 全国で販売されている競馬情報誌紙に定常的にばんえいレース情報や予想を載せてもらう。
  5. 冠レースのスポンサー(個人協賛、企業協賛)の募集をもっとだいだい的に行い、協賛費用も何段階かに分けて、特典をもっと魅力的にする。
  6. 中央競馬などで一般的になっているいわゆる一口馬主制度を導入し、全国から募集する。あるいは、中央競馬のクラブ馬主企業にばん馬も扱ってもらうように働きかける。
  7. 各旅行会社に旭川ツアーや札幌ツアーなどにばんえい競馬見学コースもいれてもらう。
  8. 馬券販売をJRAなみに無人化を進める。
  9. リアルタイムに見れない人向けに前売りと夜のダイジェスト中継を行う。
  10. 競馬場に話芸のある解説役を手配して、マイクパフォーマンスでの盛り上げを図る(中継でも)。
  11. ちょっとしょぼめでもいいから芸能人によるキャンペーンをする。
ってなところかなぁ。。ともかく全国からお金をかき集められるようにするという主旨ですが、、。

ばんえい競馬