さまざまなLinuxディストリビューションから同じUUIDを取得する

さまざまなLinuxディストリビューションから同じUUIDを取得する
# dmidecode --string system-uuid

私は私の環境の各ホストからUUIDを取得するために上記のコードを使用しています。私が理解したように、UUIDは、同じハードウェア構成を使用する同じホスト上の異なるLinuxディストリビューション間で変更しないでください。しかし、他のLinuxディストリビューションでいくつかのテストを実行した後、同じコマンドを使用して別のuuidを見つけました。

dmidecode以前のバージョンでは、異なるUUID結果が得られたようです。

たとえば、dmidecode 2.9SLES11.2の結果はstring Admidecode 2.12Debian 8の結果はですstring B

自分のコンピュータにどのLinuxディストリビューションを配布しても同じUUIDを取得するにはどうすればよいですか?

追加情報:

dmidecodeネットワークアダプタや他のハードウェアの設定を変更してもUUIDが変わらないことがわかったので、UUIDの代わりにMACアドレスを使用したいと思います。

私にとって必要なのは、マイナーなハードウェア変更と、さまざまなオペレーティングシステムでそれを識別するために、自分のコンピュータに固有の識別子を持つことができることです。dmidecodeUUIDを生成してファイルに書き込んで使用する代わりに、何らかの方法でfalseにすることはできませんを使用したいと思います。

私はVMwareとレプリケーションシステムの多くを使用しているので、レプリケーションでコピーされないことが必要です。

答え1

それはswです。欲しいとか望んでいなくても変わります:)

私はデータベースインデックスを取得するためにこれに依存しません(そしてほとんどすべてのソフトウェアまたはハードウェアベースの情報の自動検出)。ハードウェアとソフトウェアの両方を変更する必要があり、情報が変更されたら再起動する必要があります。もっと悪いかもしれません。重複したデータが得られると、データベースに問題が発生する可能性があります。

一意性を確保するために、インデックスに資産管理ツールを使用し、自動検出された情報(MAC、HDD、RAM、CPU、uuidなど)をインデックスにマッピングしますが、個別の/独立した値に、単一の値に分解せずに。これにより、単一値/多値クエリ(ほとんどの場合)を使用してシステムをターゲットにし、必要に応じてインデックス/資産管理システムに置き換えることができます。また、ハードウェア/ソフトウェアのアップグレード/スワップを処理し、1つ以上の情報値(更新されたuuidなど)を追加/変更/削除することもできます。

答え2

私は使用しますhostname

 i = gethostname(tmp,2047); 
 if (i)                     /* found host name */
     strcpy(wrk,tmp);       

大きく変わらないといいと思います:-)。

関連情報