とうもー ('A`)/です。
昨日はエース( ,_ノ` )がsmartmontoolsを使ってSSDを色々調べてました。
特化型スレの方でも◆NAO/2MXDEk さんが慌ててコメント書いていました。
自宅サーバでHDDの状態を知りたい人は使ってみるといいかも、です。
そうだ、前回changi設定について書きまして、試した人達もいる様ですが、一言。
自分のサーバの搭載しているメモリ容量を考えて使って下さいね。
(特にライブラリをメモリディスクに展開するところは)
メモリはライブラリを載せた時にこの位使われます。
FreeBSD 7.0R amd64で/md(メモリディスク)の総容量を400MBで設定した時
/dev/md0 350M 226M 95M 70% /md
/md/usr/local/bin 350M 226M 95M 70% /usr/local/bin
/md/usr/local/sbin 350M 226M 95M 70% /usr/local/sbin
/md/usr/local/lib 350M 226M 95M 70% /usr/local/lib
/md/usr/local/libexec 350M 226M 95M 70% /usr/local/libexec
/md/usr/local/apache2/bin 350M 226M 95M 70% /usr/local/apache2/bin
/md/usr/local/apache2/lib 350M 226M 95M 70% /usr/local/apache2/lib
/md/usr/local/apache2/modules 350M 226M 95M 70% /usr/local/apache2/modules
|
またOSバージョンによっても容量が変わってきます。例えば8.0系だったら、
同じ構成にする為に400MB->560MBに増量しないとあふれます。
(ライブラリ内のモジュールサイズが大きくなっているからです。)
さて、('A`)の方はと言いますと・・・とっても忙しいのですよ。
どうしてか、と言いますとね、こんな私が先生役をしているのですよ。
4/28(水)に念願の新入社員さんが出社して、早速サーバの動作チェック
(弊社でサーバを作ったらいつも行なっている製品チェックの様なものです、ハイ。)
のやり方を教えていました。
まあ、他にも会社のフロアの掃除の仕方とか、細々とした事を説明しています。
('A`)の仕事は朝早く来て終えないと時間が取れないので、
しばらくは早起きしないといけない、かな?
まあ、貴重な戦力ですから・・・大切に育てないと。
どうも新人の彼はC言語は少し判るみたいです。
詳しく聞いてみないと判断が難しいですが、
今ニダーランでてんてこまいのroot兄(・∀・)のよき助けになれればいいなあ、と。
(あ、root兄(・∀・)はPHPの方か・・・でも似たようなもんだろう、きっと。)
で、第148&151日目にもお話したOSのダウングレードですが、挑戦していますよ。
なんでそんな事をしているの?と言われると、ちょっと説明に苦労しますが・・・
うちのサーバ(製品)としては稼働実績があるのは7.0-RELEASEでして、、、
できれば、同じOSバージョンで動く様になれば、既に作ってあるパッケージも
ちゃんと動くだろう、って思いまして。
さすがに開発バージョンのOSでサーバを作っても、不具合が出た時に対処できなくなると
困りますから・・・
さて、('A`)が今手にしているSSDがマザーボードのRAIDコントローラーできちんとRAID1として
認識できるのは今のところ FreeBSD 9.0-CURRENT-201004だけ、です。
DAT落ちした以前の特化型スレの908でむむむさんが解説していた内容がまさしく答えでした。
908 名前:root▲▲ ★[] 投稿日:2010/04/20(火) 18:58:00 ID:???0
で、SSD で RAID1 を認識しないのは、
これなのではないかと予測してみたり。
kern/124064: [ar] [patch] cannot handle >16 serial number with Intel MatrixRAID
http://www.freebsd.org/cgi/query-pr.cgi?pr=124064
で、これだと最新の8-STABLEにもパッチ入っているから、
/usr/src/sys/dev/ata/ata-raid.c を最新の8-STABLEのものに上げると、
いけるかもしれなかったり(責任はとれないっす)。
952 名前:root▲▲ ★[] 投稿日:2010/04/24(土) 21:19:55 ID:???0
あ、
新タイプだと、9-CURRENT でないとRAID 1として動かなくて、
旧タイプだったら7.0RとかでもRAID 1で動く、とかいうのはあるかもですね。
SSDだから、というのではなくて、
その SSD がたまたまこのバグ (>>908) を踏むバージョンだったとかで。
|
あー、DAT落ちしたスレを見るには●(2ちゃんねるビューアー(有料))が必要になります。
リンクのページから申し込むか、ニダーランでゲームをやって、お試し●を手に入れると
見れるようになります。
詳しくはこちらをご覧下さい。
上記の新タイプ・旧タイプといってるのは、SSDの型番です。
ちなみに新タイプはこの型番のSSDです。
Intel SSDSA2M080G2R5(若しくは「SSDSA2M080G2GC」と書かれています。)
で、旧タイプはこの型番のSSDです。
Intel SSDSA2MH080G1GC
で、スレ上でむむむさんがおっしゃったata-raid.cを差し替えてちゃんと認識できるか
ちょっとやってみました。
えーと、4/30時点での状況(星取り表)をちょっと書きます。
====================================================================
◎ 9.0-CURRENT-201004 => 8-STABLE
× 9.0-CURRENT-201004 => 8.0-RELEASE + 8-STABLEのata-raidのソース
× 9.0-CURRENT-201004 => 8-STABLE => + 7-STABLE
× 9.0-CURRENT-201004 => 7-STABLE
====================================================================
さんざんな結果、となりました(涙
なんかソースを入れ替えただけではうまくいきません。
(/usr/src/sys/dev/ata/ を丸ごと移し換えても、うまくいきませんでした。)
なんでだろう。。。
ちなみに対応版のソースはcvsupで取得した最新ソース(8-STABLE、7-STABLE)にも
入っています。
対応版のソースかどうかは、取得した/usr/src/sys/dev/ata/ata-raid.cを見て
以下の行が入っていたらOKです。
[8-STABLEの場合]
__FBSDID("$FreeBSD: src/sys/dev/ata/ata-raid.c,v 1.133.2.5 2010/04/15 12:20:13 mav Exp $");
|
[7-STABLEの場合]
__FBSDID("$FreeBSD: src/sys/dev/ata/ata-raid.c,v 1.124.2.4 2010/04/15 12:22:47 mav Exp $");
|
まず、8-STABLEのソースでカーネル&worldの再構築をして、
9.0-CURRENT->8-STABLEへのダウングレードは成功しました。
しかし、試しに8.0-RELEASEのソースで、/usr/src/sys/dev/ata以下のソースを
8-STABLEに収録しているものに置き換えてカーネル&worldの再構築を行うと、
buildkernelで下記の様なエラーになります。
===> ata/atapicam (all)
cc -O1 -fno-strict-aliasing -pipe -Werror -D_KERNEL -DKLD_MODULE -nostdinc
-DHAVE_KERNEL_OPTION_HEADERS -include /home/service/obj/usr/src/sys/GENERIC/opt_global.h -I. -I@
-I@/contrib/altq -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000
-fno-common -g -fno-omit-frame-pointer -I/home/service/obj/usr/src/sys/GENERIC -mcmodel=kernel
-mno-red-zone -mfpmath=387 -mno-sse -mno-sse2 -mno-sse3 -mno-mmx -mno-3dnow -msoft-float
-fno-asynchronous-unwind-tables -ffreestanding -fstack-protector -std=iso9899:1999
-fstack-protector -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes
-Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign
-fformat-extensions -c /usr/src/sys/modules/ata/atapicam/../../../dev/ata/atapi-cam.c
cc1: warnings being treated as errors
/usr/src/sys/modules/ata/atapicam/../../../dev/ata/atapi-cam.c: In function 'cam_rescan':
/usr/src/sys/modules/ata/atapicam/../../../dev/ata/atapi-cam.c:830: warning: implicit declaration of function 'xpt_alloc_ccb_nowait'
/usr/src/sys/modules/ata/atapicam/../../../dev/ata/atapi-cam.c:830: warning: nested extern declaration of 'xpt_alloc_ccb_nowait'
/usr/src/sys/modules/ata/atapicam/../../../dev/ata/atapi-cam.c:830: warning: assignment makes pointer from integer without a cast
/usr/src/sys/modules/ata/atapicam/../../../dev/ata/atapi-cam.c:835: warning: implicit declaration of function 'xpt_free_ccb'
/usr/src/sys/modules/ata/atapicam/../../../dev/ata/atapi-cam.c:835: warning: nested extern declaration of 'xpt_free_ccb'
*** Error code 1
1 error
*** Error code 2
1 error
*** Error code 2
1 error
cc -c -O1 -fno-strict-aliasing -pipe -std=c99 -g -Wall -Wredundant-decls -Wnested-externs
-Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual
-Wundef -Wno-pointer-sign -fformat-extensions -nostdinc -I. -I/usr/src/sys
-I/usr/src/sys/contrib/altq -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS
-include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100
--param large-function-growth=1000 -fno-omit-frame-pointer -mcmodel=kernel
-mno-red-zone -mfpmath=387 -mno-sse -mno-sse2 -mno-sse3 -mno-mmx -mno-3dnow
-msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector
-Werror /usr/src/sys/dev/mem/memdev.c
*** Error code 2
1 error
*** Error code 2
1 error
*** Error code 2
1 error
#
|
で、9.0-CURRENTの状態から一旦8-STABLEにダウングレードして、
更に7-STABLEのソースでカーネル&worldの再構築をしても
再構築の処理ではエラーが起きないのですが、サーバを再起動すると、
なぜかSSHでもコンソールからでもログインできなくなります。
つまりrootになれないのです。
ちなみにコンソール上からはサーバを再起動した後で以下のメッセージが出力されます。
init: getting swapuse resource limit: Invalid argument.
init: getings preudoterminals resource limit: Invalid argument.
|
そして、9.0-CURRENTからダイレクトに7-STABLEのソースでカーネル&worldの再構築を
実行すると、worldのインストールでコケます。
(どうも、共用ライブラリの参照先が見つからない事で起きている様です。)
その時のエラーメッセージはこうです。
/libexec/ld-elf.so.1: /tmp/install.eaCIE68u/ln: Undefined symbol "linkat"
*** Error code 1
Stop in /usr/src/lib/libc.
|
困ったなあ・・・
STABLE版のportsとかは今作り変えをしていて、まだ終わっていないのですよ・・・
なので、自分で地雷を仕掛けるような事は避けたいのです、ハイ。
それに9.0-CURRENTは開発途中のOSですので、それでなくても地雷が仕掛けられている
恐れは十分あります。こんなのをgimpoサーバとして出す訳にはいきませんからね。
ちょっとどこまでいけるのか、もう少し粘ってみます。
相も変わらず、尻切れトンボでごめんなさい・・・
それでは、また。
【追記 12:50】
えーと、ようやっと新人さんにBananaサーバ2台の動作チェックを先程お願いしました。
今3人がかりで、Bananaサーバを再インストール&セットアップして、最終的には
6台のチェックをお願いする予定です。毎度恒例の「千本ノック」です。
まあ、このサーバの動作チェック作業でサーバに慣れ親しんでもらってから、
サーバのセットアップ作業を覚えてもらう、というのがうちの会社の鍛え方ですので・・・
最初からFreeBSDとかLinuxに精通している人が入社する訳ではありませんので。
(かく言う('A`)も会社に入った時にはLinuxとかFreeBSDなんて触った事が無かったです。
大型汎用機の経験はありましたけど、ね。
ただ、基本の知識(情報処理の知識)があれば、すぐ判りますよ。
連休明けにでも、(会社のマシンを使って)サーバのセットアップを教えようかな。
そうだ、今日は午後から左肩のリハビリに行ってきますので、ちょっと留守にします。
それでは、また。
|