[FreeBSD-users-jp 94072] Re: graid3 の復旧
いとうといいます. たびたびすいません. メタデータの格納位置と構造がおおよそわかったので,時間がとれたときに チャレンジしてみようかと思います. が,ちょっと先になりそうですので,もしこれよりもまっとうな方法をご存知の 方がいらっしゃいましたら,お知らせいただけると嬉しいです. 以下,メモになります. - メタデータはプロバイダが管理している領域の最終セクタに格納されている - GEOM::RAID3 で探せば見つかるだろう - sys/geom/raid3/g_raid3.h にある stuct g_raid3_metadata がメタデータ の構造だが過去のモノも含めると 3 通りあるようだ - それを見分けるのは md_version である - ディスクの状態を示すのは md_dflags である - これの G_RAID3_DISK_FLAG_BROKEN が立っているのだろう - メタデータの有効性を確認するためのハッシュ値も格納されているからメタ データをいじったらハッシュ値も更新しておかないとダメ 2012年12月13日 13:42 Yoshiharu ITO yochy4...@gmail.com: いとうといいます. 大変申し訳ありませんが,お知恵を拝借できないでしょうか. 当方 HDD 5 台で graid3 を運用しておりました. やんごとなき理由からハードウエア構成変更のため SATA ケーブルの抜き差し を含む作業を行った後に,シングルユーザーモードで起動確認を行いました. すると,こともあろうに SATA ケーブルの接続ミスで 2 台 HDD が見えない状態 になってしまっていて,RAID3 が DEGRADED するどころか,その時に見えてい た HDD 全てが broken したことになってしまい,最終的に too few valid components. と graid3 プロバイダすら起動しなくなってしまいました(ここポイント). データ部へのアクセスは行なっていないわけですから,メタデータ部だけを何とか すれば復旧するのでは,つまり graid3 label をするだけでいいのかなぁと考えて みたりもしておりますが # g_raid3_metadata って HDD のどこに格納されてるんだ とか探してみたり このような状態から復旧させる,よい方法は無いでしょうか. 以上,よろしくお願いいたします. -- よっちい -- よっちい
[FreeBSD-users-jp 94073] Re: svn update の使い方は ?
At Thu, 13 Dec 2012 08:42:10 +0900, Naomichi Nonaka wrote: SVN上ではrelease/9.1.0はreleng/9.1のある時点でのsnapshotに名前が付いた ものとなってます。 つまり、と言うか、svnでの利用方法としては、普段(stableや headの利用では 無い場合)は (例えば 9.0から始めたとして) svn checkout ~base/releng/9.0/...。セキュリティブランチは updateで。 そして 9.1にupにしようとしたら svn switch ~base/releng/9.1/ で 9.1に upして、 セキュリティブランチは updateで...と言う感じでしょうか。 / Name : Dobashi Mitsuyoshi / / Email : md...@luna.wak2.jp /
[FreeBSD-users-jp 94074] buildworld fail in FreeBSD 9.0-STABLE
鬼生田です。 9.1が出たので、updateしようとしていますが、buildworld で こけます。/usr/src/UPDATING を確認しましたが、手順は変更な さそうです。 以下、2つのuname -a なマシン両方で同じ現象となります。 9.0-STABLE FreeBSD 9.0-STABLE #1 9.1-PRERELEASE FreeBSD 9.1-PRERELEASE #3: # make buildworld Cut cc -O2 -pipe -std=gnu99 -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Ww rite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -c expr.c cc1: warnings being treated as errors /usr/src/bin/expr/expr.y: In function 'main': /usr/src/bin/expr/expr.y:291: warning: implicit declaration of function 'yyparse' /usr/src/bin/expr/expr.y:291: warning: nested extern declaration of 'yyparse' expr.c: At top level: expr.c:813: warning: no previous prototype for 'yyparse' *** Error code 1 Stop in /usr/src/bin/expr. *** Error code 1 Stop in /usr/src/bin. *** Error code 1 Stop in /usr/src. *** Error code 1 Stop in /usr/src. Googleで検索すると、以下のようなものが見つかりますが 解決できません。 http://www.mail-archive.com/freebsd-questions@freebsd.org/msg257286.html 解決方法をご存知の方おられましたら、お教えください。 --- Oniuda
[FreeBSD-users-jp 94075] Re: buildworld fail in FreeBSD 9.0-STABLE
At Thu, 13 Dec 2012 19:03:01 +0900, Koh-ichi Oniuda (鬼生田浩一) wrote: /usr/src/bin/expr/expr.y: In function 'main': /usr/src/bin/expr/expr.y:291: warning: implicit declaration of function 'yyparse' /usr/src/bin/expr/expr.y:291: warning: nested extern declaration of 'yyparse' expr.c: At top level: expr.c:813: warning: no previous prototype for 'yyparse' 当方で9.1の buildworldが完了した /usr/obj/usr/src/bin/expr を無くして /usr/src/bin/expr での操作です。 # ls -l total 28 -rw-r--r-- 1 root wheel137 12月 11 20:48 Makefile -rw-r--r-- 1 root wheel 9079 12月 11 20:48 expr.1 -rw-r--r-- 1 root wheel 10743 12月 11 20:48 expr.y # make Warning: Object directory not changed from original /usr/src/bin/expr yacc -o expr.c expr.y cc -O2 -pipe -march=nocona -std=gnu99 -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -c expr.c cc -O2 -pipe -march=nocona -std=gnu99 -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -o expr expr.o gzip -cn expr.1 expr.1.gz # ls -l total 104 -rw-r--r-- 1 root wheel137 12月 11 20:48 Makefile -rwxr-xr-x 1 root wheel 20390 12月 13 22:32 expr -rw-r--r-- 1 root wheel 9079 12月 11 20:48 expr.1 -rw-r--r-- 1 root wheel 3781 12月 13 22:32 expr.1.gz -rw-r--r-- 1 root wheel 27616 12月 13 22:32 expr.c -rw-r--r-- 1 root wheel 20896 12月 13 22:32 expr.o -rw-r--r-- 1 root wheel 10743 12月 11 20:48 expr.y となります。 /usr/obj/usr/src/bin/expr で作られるのが以下ですが、それがここで作成さ れています。 # ls -l total 80 -rw-r--r-- 1 root wheel 1962 12月 11 21:53 .depend -rwxr-xr-x 1 root wheel 20390 12月 11 21:56 expr -rw-r--r-- 1 root wheel 3781 12月 11 21:56 expr.1.gz -rw-r--r-- 1 root wheel 27963 12月 11 21:53 expr.c -rw-r--r-- 1 root wheel 20896 12月 11 21:56 expr.o 単体テストの参考にもならないかも知れませんが... ただ、言われている事ですが「buildworldが原因不明の理由で失敗する場合は /usr/objを消去してみましょう。」そうです。 # cd /usr/obj # rm -rf * # chflags -R noschg * # rm -rf * もしくは当方も今回行いましたが、/usr/srcを新しくしてから svnで checkoutしました。(これまでは csupを使っていました。) 又、省略せずに手続きを記しても、いいかも知れません。 -- / Name : Dobashi Mitsuyoshi / / Email : md...@luna.wak2.jp /