
Ubuntu日本語フォーラム

ログインしていません。
何時も教えていただき有難うございます。
今回も初歩的な質問ですが、よろしくお願いします。
マーザーボードに、SATAのコネクターが4つ有り、それぞれが、マザーボードの取り説でSATA0,1,2,3となっている時
まったく同じhddを2台接続したとすると、ドライブ名としてsdaとsdbが割り当てられると思いますが、
この時、SATA0と1につないだ場合は、0=sda 1=sdb となるのでしょうか、
同様に、SATA1と3に繋いだら、 1=sda 3=sdb となるのでしょうか、
なぜこのような疑問を持ったかというと、まったく同じHDDを二台用意して、クリーンインストール時にRAID1を組んだとして、
その後、例えば、sdaに障害が発生したと言うメッセージを受け取ったとしても、
どちらのハードディスクを交換すれば良いかをどのように識別するのか疑問だったためです。
オフライン
sss_sasaki による投稿:
この時、SATA0と1につないだ場合は、0=sda 1=sdb となるのでしょうか、
同様に、SATA1と3に繋いだら、 1=sda 3=sdb となるのでしょうか、
このようになる「可能性は比較的高い」のですが、どんな場合でも必ず 0=sda となるわけではありません。
# BIOSの設定等でも変化すると思いますし、極端な想定では「その日のPCへの電気の通り具合」とでも言えるような原因で変化する事も考えられます。
sss_sasaki による投稿:
まったく同じHDDを二台用意して、クリーンインストール時にRAID1を組んだとして、
その後、例えば、sdaに障害が発生したと言うメッセージを受け取ったとしても、
どちらのハードディスクを交換すれば良いか
何を使ってRAIDを組むのかによって、障害を報告してくるものが変わってくるため一概に言えませんが、
例えばソフトウェアRAIDのmdadmや、「マザーボードに、SATAのコネクターが4つ有り、」から察するに
いわゆるFake RAID
# http://itpro.nikkeibp.co.jp/article/Keyword/20070824/280335/
の際に使われるdmraidでは、sd? 以外にも各HDDごとの固有IDとなるUUIDで区別や指定、情報の取得が可能です。
オフライン
早速の回答ありがとうございます。
Raid1は、ソフトウエアーRAIDです。
ubuntuのインストール時にパーテーションを設定するところで、設定する奴です。
いろいろなサイトを見てみたのですが、どのようにHDDを識別すれば良いのか情報が見つけられません
現在、実際に障害が起きている訳ではないのですが、
実際に障害が起きた時に、間違うと、良い方のデータまで壊してしまいそうな気がします。
オフライン
Ubuntuの話題から外れたような気がしますが。。。。。。
raidは詳しくありませんので、お答えできませんが、ハードディスク番号についてでしたら、
お答えできます。
ちなみに、私のpc(asusマザーボード)では、デフォルトで sata1=sda(winではディスク0) sata2=sdb(winではディスク1)なのですが、
sata3=sdcとはなりません。 sata4=sdc だったりします。sata1、2以外は当てにならないようです。
接続HDにもよるし、OSによって違うかもしれません。
前の方も言われているように「可能性は比較的高い」と言う回答が一番妥当です。
一度、マザーボードメーカー(代理店)に問い合わせたら以下がでしょう?
raidについては、他の方の回答をお待ちください。
マザーボードメーカーに聞いても、はっきりとした規則はないとのこと。
また、ハードディスクの起動優先順位でも変わってきたりしますので、変えない方が良いかとおもいます。
オフライン
回答ありがとうございます。
マザーボードのコネクターの話は、一例として書きましたが、私が一番知りたいのは、
複数台のHDDが有る場合 sda、sdb、sdcとなる訳ですが、インストール時に全てのHDDが接続されていた場合、
どのドライブが、どのHDDなのか、どのようにすれば、わかるのだろうかと言うことです。
*はずしてみると言うのはなしで。
オフライン
hdparm -I /dev/sda で、sdaとして認識されているドライブの情報を取得できますよ。
HDDのメーカー・型番・シリアルなんかが分かります。
オフライン
同じ型番のHDDであれば区別はできないと思います。
上にも書きましたが、SATA番号とOS上のドライブ番号の一致は100%ではないので、、、、、
ただ SATA1=sda(winではドライブ0) だけは100%に近い確率で一致するのではないでしょうか?
私は、biosでのHDD起動優先順位設定でHDDの区別がつかなくなるので、
わざわざメーカーを変えています。(日立とWD)
BIOSレベルで、OSでの認識表記(型番)に枝番等をを加えられるといいと思うのですが。
私の環境ではできません。参考にならずにすいません。
オフライン
結局のところ、HDDの本体外観に書かれている何かを一致させられないと、なかなか確実な方法はない とすると、hdparm -Iで表示されるシリアル番号があるかどうか にかかってきそいうですね。
あとは、udevが生成する、/sys/block/sda/dev の情報も役に立つかもしれません・・・・制御チップが複数あるときびしいですが、1つの制御チップの下につながっている限りは、番号は物理的なポートの順番と一致している・・・・と思います。
# M/Bの設計者次第といえば、設計者次第ですが。複数のチップを積んでいる場合、それぞれのチップでの番号になると予想されるため、ちょっとややこしくなりそうです。
もしくは、1つのRAID内のHDDの生産ロットの統一を避けるついでに、異なるメーカのものを使うというのが1番確実そうです。
# ロットを統一させないようにするのは、同時期に故障するのを避けるためです。
オフライン
gnome-disk-utilityで見れませんかね?
([システム]-[システム管理]-[ディスク・ユーティリティ])
私の環境では(シングルHDD)、SATAコントローラの接続ポート番号が表示されてます。
オフライン
違うハードウェア環境においては、「不定である」で問題ないと思うのですが、同一環境で「不定だったら困る」はずなので、基本的には設定変更などが伴っていない限り、「固定」のはずです。
「どう設定されるか?」は環境依存ですが、BIOSなど、動作時のハードウェアのコンフィギュレーションが同じ場合にすら変わってしまうと、動作しなくなる要素が出てくると思うのですが。
基本的にはシリアルで判別できるはずですし、「その環境で」どの順番に見えるのかをあらかじめ把握しておけば用は足りそうな気がするのですけれど。
生産ロットはともかく、アクセスの速度や、プラッタ容量、総セクタ数が違う物を混ぜて使うのは不安な気がしますけどねぇ・・・。
汎用的に「この順番」という固定の条件はなくとも、実運用では「そいつはこの順番の割り当て」と導入時に確認しておけば、根本的に問題は何もない(壊れたっていわれれば、それがどこかはその情報を見ればいい)と思うのだけど、そうでもないですかね?
オフライン
皆さん、アドバイス有難うございます。
シリアル番号が、見えるようなので、私の場合、初めに確認しやすい場所にタグにして、張り付けておけば目的は達せられそうです。
オフライン
一応、拡張カード類の増減がない、という前提条件が真であれば、
・sudo lshwしたときの *-disk デバイスに表示されるノードでは、
- bus info: は 物理的なポートに対して一対一で対応します。
- serial: は 各HDDのシリアル番号と一致します。
- logical name: は 不定です。
ということが言えます。シリアル番号をメモして貼付しておく、あるいはbus info: を見て、どこにどのデバイスがぶら下がっているかをメモしておく、のいずれかが妥当です。
ただ、MDやdmraidでRAID1を構成するのであれば、極端な性能差が出ないように配慮して、別型番(別ベンダ) or 別ロットにしておくことを強くお勧めします。同一ロットかつ同一使用状況だと、冗談抜きに同じ日に壊れたりして大惨事が起きることがありえます。
オフライン