Linuxでは、smartctl
を使用して、ハードドライブのベンダー、モデル、ファームウェアリビジョン、シリアル番号を取得できます。
# smartctl -a /dev/sdb
smartctl 5.40 2010-07-12 r3124 [x86_64-unknown-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net
Device: SEAGATE ST9300603SS Version: 0006
Serial number: 6SE1ZCSR0000B121LU63
Device type: disk
Transport protocol: SAS
ハードドライブのシリアル番号です(ここで6SE1ZCSR0000B121LU63
)グローバルに一意であることが保証されていますか?特定のベンダーにのみ固有ですか?それとも特定のモデルですか?
S/Nが一意であるとは限りません。しかし、メーカーが異なればS/Nの生成に異なるスキームを使用するため、それらはほとんどがユニークです。また、メーカーが1つのS/Nで2つ以上のHDDを作成する理由はありません。そうした場合、保証による返品は非常に困難になります。彼らはどのようにして異なるデバイスを目立たなくしますか? S/Nの目的です。
衝突は実際にはありそうもない
ソフトウェアがHDDモデルとS/Nに制限されている場合があります。 HDDが故障すると、すべてのシステムを再構成するのは大変です。そのような場合、古いHDDの完全な複製を作成するオプションがあります。 HDDのシリアル番号とモデルを書き換えるには、特別なソフトウェアやハードウェアが必要ですが、可能です。そしてそれは多くの時間やお金を節約できます。
また、ゲームコンソールのXBOXに大容量のHDDを取り付けたい場合は、安価な一般的なHDDを市場で購入し、特別なソフトウェアでこれらのHDDをXBOXに合わせて調整します。このプログラムは、HDDのモデル、S/Nおよび一部の隠し情報を書き換えるため、XBOXは、HDDがコンソールベンダーからのオリジナルであると「考え」ます。命令を探す ここ 。
本当にHDDの一意のIDを取得したい場合は、SASプロトコル仕様およびそのようなインターフェースを持つHDDの仕様を調べてみてください。興味深いことがわかります。
SASでは、デバイス名とポート名は、トランスポートプロトコル内で世界中で一意の名前です。ポート識別子は、ドメイン内でポートを識別するための値であり、SASアドレスとして使用されます。PHY識別子はデバイス内で一意です。
こちら からも
SASドメイン内の各ポートSASドメインには、SASドメイン内でポートを一意に識別するSCSIポート識別子があります。イーサネットデバイスのMACアドレスのように、デバイスの製造元によって割り当てられ、通常は世界的にも一意です。SASデバイスは、これらのポート識別子を使用して相互に通信をアドレス指定します。
これらのIDを読み取って、デバイスを区別するために使用できます。
短い答え:私の目的のために、私はそれらをユニークであると考えています。
長い答え:すべての製造元にはシリアル番号の独自の命名方式があり、製造元間でグローバルに一意であるとは限りませんが、結局のところ、特定のユニットを識別できるようにするため、製造元ごとに一意である必要があります。
誰もが独自のスキーマを持っているため、実際には衝突する可能性はほとんどありませんが、モデルとシリアル番号の組み合わせは一意である必要があります(製造中に混乱を招かない限り)。
私はすべてのベンダーが自社製品のシリアル化を使用していると思います、すべてのシリアルはユニークです。
それらはグローバルに一意であることが保証されていますか?おそらく慣例ではありません。
彼らは世界的にユニークである可能性が非常に高いですか?はい
また、ほとんどの場合、シリアルは、前面のモデル番号、次にバッチ番号などを示すシリアルの合計です。
ユニークでない可能性は非常に非常にスリムです。
最近、ソフトウェアを使用しているコンピューターをドライブのシリアル番号で識別するコードをいくつか作成しました。私が新しいコードを提供した約11の店舗のうち、そのうち3店舗にはシリアル番号が重複したハードドライブがありました。ハードドライブのシリアル番号は一貫性が非常に低いようです。どうやら、使用されているコンピューターを一意に識別する別の方法を見つける必要があります。
驚いたことに、私は最近ASUSノートブックのバッチを購入しました-すべてのハードウェアに同じシリアル番号(ソフトウェアの保護に使用)がありました。その結果、セキュリティ(ディスクのシリアル番号に基づく)はなくなりました。
ソフトウェアを特定のコンピューターに保護する別の方法を探しています
ソフトウェアが機能するためにコンピュータに接続する必要があった「ドングル」が付いたソフトウェアが販売された昔を思い出してください
シリアル番号は定義により製品に固有ですが、それだけでは製造元と製品を知らなくてもほとんど役に立ちません。
技術的には、シリアル番号は1から無限大までの整数です。
それ以外のものは、識別コードまたは単にIDと呼ばれるべきです。
ハードディスクの「シリアル番号」は、製造元、モデル、およびシリアル番号のコードの組み合わせであるため、実際には一意である必要があります。