Category Archives: ソフトウェア

PC-9801は永遠に不滅ですww

ふと、PC-9801のMSDOS環境を構築(笑)
その昔、私は、EPSON互換機派でした(笑)。17~18年くらい前の話なんですがねー(笑)

しかしまぁすごいですね。PC98エミュレータ。よくできています。

Anex86を試してみました。きちんと動きます。
EPSON互換機のエミュレーションだそうです。

個人的には、QEMU/9821を動かしてみたのですが、PC-9801BX4でかつBIOS Rev Ver.0.04ではなければならないらしく、結構狭き門です。
QEMU/9821だと、LGY-98のLANカードが使えるらしいですが・・・。

パソ通ホスト「Midnight Driving」へ98エミュレータからアクセス。

PC98エミュレータ「Anex86」をつかって、Midnight Drivingへアクセスを試みた。

が、DOS版KTXが標準でtelnetに対応しているわけもなく(厳密に言うと、TEENで対応可能らしいけど、Anex86がLANに対応していない)、一般的な方法を使えない。

で、仮想comポートでTCP/IPへリダイレクトするソフトを使い、パソ通ホストのtelnetへ強引につなげてみた。

つながったことはつながったのだが、断検出ができない・バイナリ送受信不能、となかなか問題あり。
とりあえず、見るにはいいかもしれないが。

断検出できない点は、ちょっと致命的かも。クロスケーブルで接続している状態になってしまうので、当然と言えば当然だが・・・。
NELOなどオフ書きツールが当時のまま使えるのは、便利なのだけど。

Anex86がLAN対応になってくれんだろうか・・・。

やっぱり、Midnight DrivingのWEB化が待たれます・・・。(^^;

パソ通ホスト「Midnight Driving」へiPadからアクセス。

iPadからShiftJISでtelnet出来ないかな〜とか探していたら、zaTelnetがありました。
標準で日本語が表示できないですが、フォントを追加することで可能になりました。

これでパソ通ホストにもiPadからtelnetできますo(^▽^)o

無線LANとか3Gとか使えば、外からアクセスできます。
iPadでアクセス出来るなんて、夢のようです。
20年前では考えられませんでした。

いい時代になりましたねo(^▽^)o

パソ通ホスト「Midnight Driving」をWebでもアクセスできるように・・・続編

今日の成果。

とりあえず、UNIXコマンドラインから、BASENOTEとRESPONSEが読めるようになった。
スタート・ストップ設定機能がまだないので、1から最後まで一気に表示されます(笑)。

ShiftJISからUTF-8変換を行っている関係で、少々めんどくさくなってます。
ついでに改行コードも、0x0D 0x0Aから0x0Aに変換しなければなりませんでした。

とりあえず、Web化したいので、認証機能をつけなければなりません。^^;
まだ、しばらくかかりそうです^^;

パソ通ホスト「Midnight Driving」をWebでもアクセスできるように・・・

夏休みの宿題と称して(笑)、パソ通ホスト「Midnight Driving」をWebでもアクセスできるように改修工事をすることにした。
なんといっても、いまから20年くらい前のBBSシステムであるので、MS-DOSで動いており、当然未対応(笑)。

MASHホスト本体は、MS-DOSのため外部からファイル構造体を参照できない。
オープンソースでもないため、事実上MASHホスト本体は手が加えられない。
(作者のNEM氏は今頃、なにしているのだろう?^^;。ご無沙汰しておりますm(_ _)m)

これだとWebサービスが実現できないので、手法を変える。
別途ファイルサーバにMASHリソースを置き、MS-DOSからファイルサーバにアクセスするように構成変更。
ファイルサーバ自体にMASHリソースをおいてしまえば、ファイルサーバにWebサーバを構築し、そのままCGIプログラム等でファイルにアクセス可能(排他処理問題は別途調整予定)。

まず、ファイルサーバにアクセスするMS-DOSをLANに対応させるため、いろいろ手法を考える。

・NetWare(IPX/SPX)
・MS LanManager(TCP/IP or NetBEUI)
・NFS(TCP/IP)

などが考えられた。

NetWare(IPX/SPX)を考えてみたが、昔のようにマルチプロトコルルータを持っていないので^^;、どうしてもTCP/IPが必須。
同様の理由で、MS LanManager(NetBEUI)もだめ。
NFS(TCP/IP)は、MS-DOSでNFSを使用する手段が、厳しそうなので断念。

ということで、「MS LanManager(TCP/IP)」の構成とすることにした。
ファイルサーバは、CentOS(Linux) + SAMBAで構成することにした。

ということで、ホスト構成を下記のようにした。
いままのでの2台構成から、

・TELNET Gateway
・MASHホスト本体
・ファイルサーバ兼Webサーバ(新規)

3台構成に変更した(いずれも、VMware Server ゲスト環境下です)。

で、とりあえずホスト環境を構築。無事に移行できました。

MS LanManagerもちょっと設定にハマリました(笑)。むかしはよく設定やっていたんですが、もうだいぶ忘れてますwww
だいぶ前のシステムなんで、資料がほとんどそろっていないのと、VMware Server ゲスト環境下なので、LANドライバ関係も調整が必要だった。

構築途中、SAMBAを今回使用したが、構築時にsmb.confの「deadtime = 15」と設定していたため、無通信時間が続くとMASHホスト側のMS LanManagerが接続を切られ、MASHリソースを参照できなくなり、MASHホストが大暴走(笑)、「deadtime = 0」とすることで解決した。

で、ここからが、開発本番^^;

まぁ例によって、バイナリデータの仕様書なんてないんで、バイナリエディタとにらめっこ(笑)。
とりあえず、basenoteのインデックス取得はできるようになりました。

まぁ、LinuxとMS-DOSなんで、内部のタイムスタンプでtime関数系が、GMTの関係で+9時間の調整が必要でした。
それに気がつかず、最初大混乱(笑)。

まぁ、少しずつやっていいきたいと思います。(^^)

自宅のサーバを修理

自宅のサーバを修理しました。
どうも、最近、突然電源が落ちるので、なぜかな〜?
とみてみたら、CPUクーラーが死亡していて、Core温度が85度を超えてましたw

てことで、CPUクーラーを新調して、修理。
クーラーはちょっと奮発してみました。

修理の結果、40度前後まで落ちましたので、良さそうです。
しばらく様子を見てみます・・・。

20120807-104536.jpg

20120807-104545.jpg

20120807-104610.jpg

20120807-104620.jpg

20120807-104632.jpg

20120807-104641.jpg

Dovecotへ移行。iPhone+Becky!対策

新しくサーバを移行したタイミングで、UW-IMAPからDovecotに移行することにした。
結構動作も警戒でいい感じです。

が、標準設定だと、iPhoneがINBOX以外のフォルダが見えないトラブルが発生。
下記のように調整したら、改善しました。

●Dovecotの設定(/etc/dovecot/conf.d/10-mail.conf)
-----
・変更前
mail_location = mbox:~/mail/:INBOX=mbox

・変更後
mail_location = mbox:%h/:INBOX=%h/mbox
-----

●iPhoneの設定
IMAP接頭辞:mail

●Becky!の設定
Beckey!を使っていますが、IMAPフォルダもこうしました。

IMAPフォルダ:mail
※mail/にしないとまずいのかと思いきや、逆に/をつけない方がうまくいってます?(謎)

当ブログのコメントできなかったので修正ww

画像認証の調整がうまくいってなかったので、調整してみた。
たぶん、これでうまくいくと思う。

一時的に外していたのですが、SPAMコメントの嵐になったので対策します。

DQ67OW+SoftRAID1、カーネル落ちる。断末魔の叫び(Kernel Oops)を聞く。

kernel Oopsを取れるようになったが・・・。
2.6.39.4に上げてみても状況変わらず。

原因がよくわからない・・・。

Jul 25 12:05:16 10.10.10.100 Kernel panic - not syncing: Fatal exception
Jul 25 12:05:16 10.10.10.100 Pid: 101, comm: md2_raid1 Tainted: G D 2.6.39.4 #1

どうも、RAID1に負荷かけると、落ちる。

構成的に、

・/dev/md0~/dev/md2
/dev/sda
/dev/sdb

・/dev/md3
/dev/sdc
/dev/sdd

としているのだが・・・。大容量ディスクをソフトウェアRAID1って厳しいのだろうか・・・。
/dev/md3 → /dev/md2 に120GBほどファイルをコピーすると、40GB~50GBコピーし終わったところで、落ちます(T_T)。

Jul 25 12:05:13 10.10.10.100 BUG: unable to handle kernel
Jul 25 12:05:13 10.10.10.100 paging request
Jul 25 12:05:13 10.10.10.100  at ffff88872a004f70
Jul 25 12:05:13 10.10.10.100 IP:
Jul 25 12:05:13 10.10.10.100  [] __blk_recalc_rq_segments+0x58/0x16e
Jul 25 12:05:13 10.10.10.100 PGD 0
Jul 25 12:05:14 10.10.10.100
Jul 25 12:05:14 10.10.10.100 Oops: 0000 [#1]
Jul 25 12:05:14 10.10.10.100 SMP
Jul 25 12:05:14 10.10.10.100
Jul 25 12:05:14 10.10.10.100 last sysfs file: /sys/devices/system/cpu/cpu7/cache/index2/shared_cpu_map
Jul 25 12:05:14 10.10.10.100 CPU 1
Jul 25 12:05:14 10.10.10.100
Jul 25 12:05:14 10.10.10.100 Modules linked in:
Jul 25 12:05:14 10.10.10.100  loop
Jul 25 12:05:14 10.10.10.100  ip6_tables
Jul 25 12:05:14 10.10.10.100  iptable_filter
Jul 25 12:05:14 10.10.10.100  ip_tables
Jul 25 12:05:14 10.10.10.100  ebtable_nat
Jul 25 12:05:14 10.10.10.100  ebtables
Jul 25 12:05:14 10.10.10.100  x_tables
Jul 25 12:05:14 10.10.10.100  netconsole
Jul 25 12:05:14 10.10.10.100  cpufreq_ondemand
Jul 25 12:05:14 10.10.10.100  acpi_cpufreq
Jul 25 12:05:14 10.10.10.100  freq_table
Jul 25 12:05:14 10.10.10.100  mperf
Jul 25 12:05:14 10.10.10.100  bridge
Jul 25 12:05:14 10.10.10.100  stp
Jul 25 12:05:14 10.10.10.100  be2iscsi
Jul 25 12:05:14 10.10.10.100  iscsi_boot_sysfs
Jul 25 12:05:14 10.10.10.100  iscsi_tcp
Jul 25 12:05:14 10.10.10.100  bnx2i
Jul 25 12:05:14 10.10.10.100  cnic
Jul 25 12:05:14 10.10.10.100  uio
Jul 25 12:05:14 10.10.10.100  ipv6
Jul 25 12:05:14 10.10.10.100  cxgb3i
Jul 25 12:05:14 10.10.10.100  libcxgbi
Jul 25 12:05:14 10.10.10.100  cxgb3
Jul 25 12:05:14 10.10.10.100  mdio
Jul 25 12:05:14 10.10.10.100  libiscsi_tcp
Jul 25 12:05:14 10.10.10.100  libiscsi
Jul 25 12:05:14 10.10.10.100  scsi_transport_iscsi
Jul 25 12:05:14 10.10.10.100  dm_multipath
Jul 25 12:05:14 10.10.10.100  scsi_dh
Jul 25 12:05:14 10.10.10.100  video
Jul 25 12:05:14 10.10.10.100  sbs
Jul 25 12:05:14 10.10.10.100  sbshc
Jul 25 12:05:14 10.10.10.100  power_meter
Jul 25 12:05:14 10.10.10.100  hwmon
Jul 25 12:05:14 10.10.10.100  battery
Jul 25 12:05:14 10.10.10.100  acpi_memhotplug
Jul 25 12:05:14 10.10.10.100  ac
Jul 25 12:05:14 10.10.10.100  parport_pc
Jul 25 12:05:14 10.10.10.100  lp
Jul 25 12:05:14 10.10.10.100  parport
Jul 25 12:05:14 10.10.10.100  kvm_intel
Jul 25 12:05:14 10.10.10.100  kvm
Jul 25 12:05:14 10.10.10.100  sg
Jul 25 12:05:14 10.10.10.100  usb_storage
Jul 25 12:05:14 10.10.10.100  snd_hda_codec_realtek
Jul 25 12:05:14 10.10.10.100  snd_hda_intel
Jul 25 12:05:14 10.10.10.100  snd_hda_codec
Jul 25 12:05:14 10.10.10.100  snd_hwdep
Jul 25 12:05:14 10.10.10.100  snd_seq_dummy
Jul 25 12:05:14 10.10.10.100  snd_seq_oss
Jul 25 12:05:14 10.10.10.100  snd_seq_midi_event
Jul 25 12:05:14 10.10.10.100  snd_seq
Jul 25 12:05:14 10.10.10.100  serio_raw
Jul 25 12:05:14 10.10.10.100  snd_seq_device
Jul 25 12:05:14 10.10.10.100  rtc_cmos
Jul 25 12:05:14 10.10.10.100  tpm_tis
Jul 25 12:05:14 10.10.10.100  rtc_core
Jul 25 12:05:14 10.10.10.100  button
Jul 25 12:05:14 10.10.10.100  snd_pcm_oss
Jul 25 12:05:14 10.10.10.100  e100
Jul 25 12:05:14 10.10.10.100  snd_mixer_oss
Jul 25 12:05:14 10.10.10.100  mii
Jul 25 12:05:14 10.10.10.100  rtc_lib
Jul 25 12:05:14 10.10.10.100  floppy
Jul 25 12:05:14 10.10.10.100  snd_pcm
Jul 25 12:05:14 10.10.10.100  tpm
Jul 25 12:05:14 10.10.10.100  tpm_bios
Jul 25 12:05:14 10.10.10.100  snd_timer
Jul 25 12:05:14 10.10.10.100  snd
Jul 25 12:05:14 10.10.10.100  i2c_i801
Jul 25 12:05:14 10.10.10.100  i2c_core
Jul 25 12:05:14 10.10.10.100  pcspkr
Jul 25 12:05:14 10.10.10.100  e1000e
Jul 25 12:05:14 10.10.10.100  shpchp
Jul 25 12:05:14 10.10.10.100  soundcore
Jul 25 12:05:14 10.10.10.100  snd_page_alloc
Jul 25 12:05:14 10.10.10.100  dm_snapshot
Jul 25 12:05:14 10.10.10.100  dm_zero
Jul 25 12:05:14 10.10.10.100  dm_mirror
Jul 25 12:05:14 10.10.10.100  dm_region_hash
Jul 25 12:05:14 10.10.10.100  dm_log
Jul 25 12:05:14 10.10.10.100  dm_mod
Jul 25 12:05:14 10.10.10.100  ahci
Jul 25 12:05:14 10.10.10.100  libahci
Jul 25 12:05:14 10.10.10.100  libata
Jul 25 12:05:14 10.10.10.100  sd_mod
Jul 25 12:05:14 10.10.10.100  scsi_mod
Jul 25 12:05:14 10.10.10.100  raid1
Jul 25 12:05:14 10.10.10.100  ext3
Jul 25 12:05:14 10.10.10.100  jbd
Jul 25 12:05:14 10.10.10.100  uhci_hcd
Jul 25 12:05:14 10.10.10.100  ohci_hcd
Jul 25 12:05:14 10.10.10.100  ehci_hcd
Jul 25 12:05:14 10.10.10.100  [last unloaded: microcode]
Jul 25 12:05:14 10.10.10.100
Jul 25 12:05:14 10.10.10.100
Jul 25 12:05:14 10.10.10.100 Pid: 101, comm: md2_raid1 Not tainted 2.6.39.4 #1
Jul 25 12:05:14 10.10.10.100
Jul 25 12:05:14 10.10.10.100 /DQ67OW
Jul 25 12:05:14 10.10.10.100
Jul 25 12:05:14 10.10.10.100 RIP: 0010:[]
Jul 25 12:05:14 10.10.10.100  [] __blk_recalc_rq_segments+0x58/0x16e
Jul 25 12:05:15 10.10.10.100 RSP: 0018:ffff88081d699ba0  EFLAGS: 00010297
Jul 25 12:05:15 10.10.10.100 RAX: 0000000000000000 RBX: ffff88072a004f08 RCX: 0000000000000400
Jul 25 12:05:15 10.10.10.100 RDX: 0000000000000001 RSI: ffff88072a004f08 RDI: 0000000000000000
Jul 25 12:05:15 10.10.10.100 RBP: ffff88081cb07948 R08: ffff88872a004f70 R09: ffff880818cb86e0
Jul 25 12:05:15 10.10.10.100 R10: ffff88072a004f08 R11: 0000000000000000 R12: ffff88081cb07948
Jul 25 12:05:15 10.10.10.100 R13: ffff88081cb07948 R14: 0000000000000000 R15: 0000000000000000
Jul 25 12:05:15 10.10.10.100 FS:  0000000000000000(0000) GS:ffff88083e240000(0000) knlGS:0000000000000000
Jul 25 12:05:15 10.10.10.100 CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
Jul 25 12:05:15 10.10.10.100 CR2: ffff88872a004f70 CR3: 000000081c950000 CR4: 00000000000406e0
Jul 25 12:05:15 10.10.10.100 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
Jul 25 12:05:15 10.10.10.100 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
Jul 25 12:05:15 10.10.10.100 Process md2_raid1 (pid: 101, threadinfo ffff88081d698000, task ffff88081cb9c770)
Jul 25 12:05:15 10.10.10.100 Stack:
Jul 25 12:05:15 10.10.10.100  000000011cb07948
Jul 25 12:05:15 10.10.10.100  00000000011c3148
Jul 25 12:05:15 10.10.10.100  ffff88072a004f08
Jul 25 12:05:15 10.10.10.100  ffff88081cb07948
Jul 25 12:05:15 10.10.10.100
Jul 25 12:05:15 10.10.10.100  0000000000000000
Jul 25 12:05:15 10.10.10.100  ffff88081cb07948
Jul 25 12:05:15 10.10.10.100  0000000000000001
Jul 25 12:05:15 10.10.10.100  0000000000000001
Jul 25 12:05:15 10.10.10.100
Jul 25 12:05:15 10.10.10.100  ffffffff81164a0b
Jul 25 12:05:15 10.10.10.100  ffff88081d34a270
Jul 25 12:05:15 10.10.10.100  ffff88072a004f08
Jul 25 12:05:15 10.10.10.100  ffffffff81165173
Jul 25 12:05:15 10.10.10.100
Jul 25 12:05:15 10.10.10.100 Call Trace:
Jul 25 12:05:15 10.10.10.100  [] ? blk_recount_segments+0x17/0x27
Jul 25 12:05:15 10.10.10.100  [] ? ll_back_merge_fn+0x5d/0xae
Jul 25 12:05:15 10.10.10.100  [] ? bio_attempt_back_merge+0x4d/0xdd
Jul 25 12:05:15 10.10.10.100  [] ? __make_request+0x89/0x2ca
Jul 25 12:05:15 10.10.10.100  [] ? generic_make_request+0x2b2/0x379
Jul 25 12:05:15 10.10.10.100  [] ? common_interrupt+0xe/0x13
Jul 25 12:05:15 10.10.10.100  [] ? flush_pending_writes+0x56/0x68 [raid1]
Jul 25 12:05:15 10.10.10.100  [] ? raid1d+0x45/0xb69 [raid1]
Jul 25 12:05:15 10.10.10.100  [] ? common_interrupt+0xe/0x13
Jul 25 12:05:15 10.10.10.100  [] ? md_make_request+0x1d7/0x1d7
Jul 25 12:05:15 10.10.10.100  [] ? schedule_timeout+0x21/0x1e0
Jul 25 12:05:15 10.10.10.100  [] ? prepare_to_wait+0x38/0x70
Jul 25 12:05:15 10.10.10.100  [] ? md_make_request+0x1d7/0x1d7
Jul 25 12:05:15 10.10.10.100  [] ? md_thread+0xdf/0xf7
Jul 25 12:05:15 10.10.10.100  [] ? wake_up_bit+0x22/0x22
Jul 25 12:05:15 10.10.10.100  [] ? kthread+0x7e/0x86
Jul 25 12:05:15 10.10.10.100  [] ? kernel_thread_helper+0x4/0x10
Jul 25 12:05:15 10.10.10.100  [] ? kthread_stop+0xa6/0xa6
Jul 25 12:05:15 10.10.10.100  [] ? gs_change+0xb/0xb
Jul 25 12:05:15 10.10.10.100 Code:
Jul 25 12:05:15 10.10.10.100 f2
Jul 25 12:05:15 10.10.10.100 45
Jul 25 12:05:15 10.10.10.100 31
Jul 25 12:05:15 10.10.10.100 db
Jul 25 12:05:15 10.10.10.100 c7
Jul 25 12:05:15 10.10.10.100 44
Jul 25 12:05:15 10.10.10.100 24
Jul 25 12:05:15 10.10.10.100 04
Jul 25 12:05:15 10.10.10.100 01
Jul 25 12:05:15 10.10.10.100 00
Jul 25 12:05:15 10.10.10.100 last message repeated 2 times
Jul 25 12:05:15 10.10.10.100 31
Jul 25 12:05:15 10.10.10.100 ff
Jul 25 12:05:15 10.10.10.100 88
Jul 25 12:05:15 10.10.10.100 44
Jul 25 12:05:15 10.10.10.100 24
Jul 25 12:05:15 10.10.10.100 0b
Jul 25 12:05:15 10.10.10.100 66
Jul 25 12:05:15 10.10.10.100 45
Jul 25 12:05:15 10.10.10.100 8b
Jul 25 12:05:15 10.10.10.100 7a
Jul 25 12:05:15 10.10.10.100 2a
Jul 25 12:05:15 10.10.10.100 45
Jul 25 12:05:15 10.10.10.100 31
Jul 25 12:05:15 10.10.10.100 f6
Jul 25 12:05:15 10.10.10.100 45
Jul 25 12:05:15 10.10.10.100 0f
Jul 25 12:05:15 10.10.10.100 b7
Jul 25 12:05:15 10.10.10.100 c7
Jul 25 12:05:15 10.10.10.100 49
Jul 25 12:05:15 10.10.10.100 c1
Jul 25 12:05:15 10.10.10.100 e0
Jul 25 12:05:15 10.10.10.100 04
Jul 25 12:05:15 10.10.10.100 4d
Jul 25 12:05:15 10.10.10.100 03
Jul 25 12:05:15 10.10.10.100 42
Jul 25 12:05:15 10.10.10.100 48
Jul 25 12:05:15 10.10.10.100 e9
Jul 25 12:05:15 10.10.10.100 c6
Jul 25 12:05:15 10.10.10.100 00
Jul 25 12:05:15 10.10.10.100 last message repeated 2 times
Jul 25 12:05:15 10.10.10.100 d>
Jul 25 12:05:15 10.10.10.100 8b
Jul 25 12:05:15 10.10.10.100 08
Jul 25 12:05:15 10.10.10.100 48
Jul 25 12:05:15 10.10.10.100 ba
Jul 25 12:05:15 10.10.10.100 00
Jul 25 12:05:15 10.10.10.100 last message repeated 4 times
Jul 25 12:05:15 10.10.10.100 16
Jul 25 12:05:15 10.10.10.100 00
Jul 25 12:05:15 10.10.10.100 00
Jul 25 12:05:15 10.10.10.100 48
Jul 25 12:05:15 10.10.10.100 b9
Jul 25 12:05:15 10.10.10.100 b7
Jul 25 12:05:15 10.10.10.100 6d
Jul 25 12:05:15 10.10.10.100 db
Jul 25 12:05:15 10.10.10.100 b6
Jul 25 12:05:15 10.10.10.100 6d
Jul 25 12:05:15 10.10.10.100 db
Jul 25 12:05:15 10.10.10.100
Jul 25 12:05:15 10.10.10.100 RIP
Jul 25 12:05:16 10.10.10.100  [] __blk_recalc_rq_segments+0x58/0x16e
Jul 25 12:05:16 10.10.10.100  RSP 
Jul 25 12:05:16 10.10.10.100 CR2: ffff88872a004f70
Jul 25 12:05:16 10.10.10.100 ---[ end trace 057474f8c1b4cac3 ]---
Jul 25 12:05:16 10.10.10.100 Kernel panic - not syncing: Fatal exception
Jul 25 12:05:16 10.10.10.100 Pid: 101, comm: md2_raid1 Tainted: G      D     2.6.39.4 #1
Jul 25 12:05:16 10.10.10.100 Call Trace:
Jul 25 12:05:16 10.10.10.100  [] ? panic+0x9d/0x194
Jul 25 12:05:16 10.10.10.100  [] ? vga_set_palette+0x10f/0x129
Jul 25 12:05:16 10.10.10.100  [] ? vga_set_palette+0x10f/0x129
Jul 25 12:05:16 10.10.10.100  [] ? up+0xe/0x36
Jul 25 12:05:16 10.10.10.100  [] ? kmsg_dump+0x46/0xdb
Jul 25 12:05:16 10.10.10.100  [] ? console_unlock+0x15c/0x177
Jul 25 12:05:16 10.10.10.100  [] ? oops_end+0xa0/0xad
Jul 25 12:05:16 10.10.10.100  [] ? no_context+0x1f4/0x203
Jul 25 12:05:16 10.10.10.100  [] ? do_page_fault+0x3bb/0x3cd
Jul 25 12:05:16 10.10.10.100  [] ? page_fault+0x1f/0x30
Jul 25 12:05:16 10.10.10.100  [] ? __blk_recalc_rq_segments+0x58/0x16e
Jul 25 12:05:16 10.10.10.100  [] ? blk_recount_segments+0x17/0x27
Jul 25 12:05:16 10.10.10.100  [] ? ll_back_merge_fn+0x5d/0xae
Jul 25 12:05:16 10.10.10.100  [] ? bio_attempt_back_merge+0x4d/0xdd
Jul 25 12:05:16 10.10.10.100  [] ? __make_request+0x89/0x2ca
Jul 25 12:05:16 10.10.10.100  [] ? generic_make_request+0x2b2/0x379
Jul 25 12:05:16 10.10.10.100  [] ? common_interrupt+0xe/0x13
Jul 25 12:05:16 10.10.10.100  [] ? flush_pending_writes+0x56/0x68 [raid1]
Jul 25 12:05:16 10.10.10.100  [] ? raid1d+0x45/0xb69 [raid1]
Jul 25 12:05:16 10.10.10.100  [] ? common_interrupt+0xe/0x13
Jul 25 12:05:16 10.10.10.100  [] ? md_make_request+0x1d7/0x1d7
Jul 25 12:05:16 10.10.10.100  [] ? schedule_timeout+0x21/0x1e0
Jul 25 12:05:16 10.10.10.100  [] ? prepare_to_wait+0x38/0x70
Jul 25 12:05:16 10.10.10.100  [] ? md_make_request+0x1d7/0x1d7
Jul 25 12:05:16 10.10.10.100  [] ? md_thread+0xdf/0xf7
Jul 25 12:05:16 10.10.10.100  [] ? wake_up_bit+0x22/0x22
Jul 25 12:05:16 10.10.10.100  [] ? kthread+0x7e/0x86
Jul 25 12:05:16 10.10.10.100  [] ? kernel_thread_helper+0x4/0x10
Jul 25 12:05:16 10.10.10.100  [] ? kthread_stop+0xa6/0xa6
Jul 25 12:05:16 10.10.10.100  [] ? gs_change+0xb/0xb
Jul 25 12:05:16 10.10.10.100 Rebooting in 5 seconds..

lvm2 on RAID1の構築方法。

Linuxにおける、lvm2 on RAID1の構築方法。
忘れてしまうので、メモしておきます。

●ディスク追加(20120723)

/dev/sda  既存の1台目  2000.3 GB
/dev/sdb  既存の2台目  2000.3 GB

/dev/sdc  今回追加1台目  2000.3 GB
/dev/sdd  今回追加2台目  2000.3 GB



1)ディスクの現状確認
# fdisk -l /dev/sda
-----
Disk /dev/sda: 2000.3 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *          64          79      128520   fd  Linux raid autodetect
/dev/sda2              80        6159    48837600   fd  Linux raid autodetect
/dev/sda3            6160      243201  1904039865   fd  Linux raid autodetect
-----


# fdisk -l /dev/sdb
-----
Disk /dev/sdb: 2000.3 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *          64          79      128520   fd  Linux raid autodetect
/dev/sdb2              80        6159    48837600   fd  Linux raid autodetect
/dev/sdb3            6160      243201  1904039865   fd  Linux raid autodetect
-----

※参考まで。



2)fdiskでスライス。
下記のように、fdisk でスライス。
4096バイトセクタを考慮にいれ、スタートを64とする。
id は fd 。


# fdisk -l /dev/sdc
-----
Disk /dev/sdc: 2000.3 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1              64      243201  1953005985   fd  Linux raid autodetect
-----


# fdisk -l /dev/sdd
-----
Disk /dev/sdd: 2000.3 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdd1              64      243201  1953005985   fd  Linux raid autodetect
-----



3)RAID1を追加
# mdadm --create /dev/md3 --level=raid1 --raid-devices=2 /dev/sdc1 /dev/sdd1
-----
mdadm: array /dev/md3 started.
-----


# mdadm --detail /dev/md3
-----
/dev/md3:
        Version : 0.90
  Creation Time : Mon Jul 23 13:45:36 2012
     Raid Level : raid1
     Array Size : 1953005888 (1862.53 GiB 1999.88 GB)
  Used Dev Size : 1953005888 (1862.53 GiB 1999.88 GB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 3
    Persistence : Superblock is persistent

    Update Time : Mon Jul 23 13:47:55 2012
          State : active, resyncing
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

 Rebuild Status : 1% complete

           UUID : XXXX
         Events : 0.2

    Number   Major   Minor   RaidDevice State
       0       8       33        0      active sync   /dev/sdc1
       1       8       49        1      active sync   /dev/sdd1
-----


# cat /proc/mdstat
-----
Personalities : [raid1]
md3 : active raid1 sdd1[1] sdc1[0]
      1953005888 blocks [2/2] [UU]
      [>....................]  resync =  0.1% (2493440/1953005888) finish=208.6min speed=155840K/sec

md0 : active raid1 sda1[1] sdb1[0]
      128448 blocks [2/2] [UU]

md1 : active raid1 sda2[1] sdb2[0]
      48837504 blocks [2/2] [UU]

md2 : active raid1 sda3[1] sdb3[0]
      1904039744 blocks [2/2] [UU]

unused devices: 
-----



4)mdadm.confに追記
# cd /etc
# cat mdadm.conf
-----
# mdadm.conf written out by anaconda
DEVICE partitions
MAILADDR root
ARRAY /dev/md0 level=raid1 num-devices=2 uuid=XXXX
ARRAY /dev/md1 level=raid1 num-devices=2 uuid=XXXX
ARRAY /dev/md2 level=raid1 num-devices=2 uuid=XXXX
-----


# cp mdadm.conf mdadm.conf-12072301
# mdadm --detail --scan
-----
ARRAY /dev/md2 level=raid1 num-devices=2 metadata=0.90 UUID=XXXX
ARRAY /dev/md1 level=raid1 num-devices=2 metadata=0.90 UUID=XXXX
ARRAY /dev/md0 level=raid1 num-devices=2 metadata=0.90 UUID=XXXX
ARRAY /dev/md3 level=raid1 num-devices=2 metadata=0.90 UUID=XXXX
-----


# mdadm --detail --scan >> mdadm.conf
# vi mdadm.conf
-----
# mdadm.conf written out by anaconda
DEVICE partitions
MAILADDR root
ARRAY /dev/md0 level=raid1 num-devices=2 uuid=XXXX
ARRAY /dev/md1 level=raid1 num-devices=2 uuid=XXXX
ARRAY /dev/md2 level=raid1 num-devices=2 uuid=XXXX
ARRAY /dev/md3 level=raid1 num-devices=2 uuid=XXXX
-----



5)lvm2を使うのでこちらも追加
・kvm2 ボリューム作成

# pvcreate /dev/md3
  Writing physical volume data to disk "/dev/md3"
  Physical volume "/dev/md3" successfully created


# vgcreate -s 32m VolGroup01-kvm2 /dev/md3
  Volume group "VolGroup01-kvm2" successfully created


# lvcreate -n LogVol00 -l 100%FREE VolGroup01-kvm2
  Logical volume "LogVol00" created


・できたか確認
# lvdisplay
  --- Logical volume ---
  LV Name                /dev/VolGroup01-kvm2/LogVol00
  VG Name                VolGroup01-kvm2
  LV UUID                XXXX
  LV Write Access        read/write
  LV Status              available
  # open                 0
  LV Size                1.82 TB
  Current LE             59601
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:1

  --- Logical volume ---
  LV Name                /dev/VolGroup00/LogVol00
  VG Name                VolGroup00
  LV UUID                XXXX
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                1.77 TB
  Current LE             58106
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:0



6)ext3でfsを構築
# mkfs.ext3 /dev/mapper/VolGroup01--kvm2-LogVol00
-----
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
244137984 inodes, 488251392 blocks
24412569 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
14901 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
        102400000, 214990848

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 28 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
-----


7)仮マウント
# mount -t ext3 /dev/mapper/VolGroup01--kvm2-LogVol00 /kvm2


# df -k -T
Filesystem    Type   1K-blocks      Used Available Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
              ext3   1844389860 190922896 1558266096  11% /
/dev/md0      ext3      124387     47709     70256  41% /boot
tmpfs        tmpfs    16465284         0  16465284   0% /dev/shm
/dev/mapper/VolGroup01--kvm2-LogVol00
              ext3   1922360144    200164 1824509704   1% /kvm2



8)起動時に自動マウント
# cat /etc/fstab
-----
/dev/VolGroup00/LogVol00 /                       ext3    defaults        1 1
/dev/md0                /boot                   ext3    defaults        1 2
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
/dev/md1                swap                    swap    defaults        0 0
/dev/VolGroup01-kvm2/LogVol00   /kvm2           ext3    defaults        0 0
-----

※/dev/VolGroup01-kvm2/LogVol00 を追加


・マウント確認
# df -k -T
Filesystem    Type   1K-blocks      Used Available Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
              ext3   1844389860 190922896 1558266096  11% /
/dev/md0      ext3      124387     47709     70256  41% /boot
tmpfs        tmpfs    16465284         0  16465284   0% /dev/shm



# mount -a



# df -k -T
Filesystem    Type   1K-blocks      Used Available Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
              ext3   1844389860 190922896 1558266096  11% /
/dev/md0      ext3      124387     47709     70256  41% /boot
tmpfs        tmpfs    16465284         0  16465284   0% /dev/shm
/dev/mapper/VolGroup01--kvm2-LogVol00
              ext3   1922360144    200164 1824509704   1% /kvm2



あとは、リブートしてみて、マウントされていればOK。
RAID1の再構築をひたすら待つ。

完了。