UDF と fstab (UUID なし)

UDF と fstab (UUID なし)

多数の異なるOSを搭載した多数のコンピュータ間でファイルを共有するための理想的なファイルシステムを探していたところ、この答えUSB スティックに UDF ファイルシステムをインストールしました。

まず、ドライブを読み取っているシステムを混乱させる残りがないことを確認するために、ディスクを空にしました。

dd if=/dev/zero of=/dev/sdb bs=1M

udftools次に、 Arch Linux の AUR を使用してドライブをフォーマットしました。

sudo mkudffs --media-type=hd --blocksize=512 /dev/sdb

明らかに、ドライブは でした/dev/sdb

ここでの質問は、私が知る限り、ドライブには従来のパーティションもパーティション テーブルもないので、UUID がないということです。そのため、これを fstab に追加できず、かなり面倒です。

これを修正するにはどうすればいいでしょうか (たとえば、デフォルトのマウント ポイントとオプションを設定する別の方法、または別のパーティション分割オプションはありますか)?

答え1

少なくとも 2K (デフォルト) のブロック サイズを選択し、パラメータ--vid=に追加しますmkudffs。( blkidfrom はutil-linux、より小さいブロック サイズには対応していないようです。)

$ mkudffs --media-type=hd --vid=my-drive /dev/sdj
$ blkid /dev/sdj
/dev/sdj: ラベル="my-drive" タイプ="udf"

これで で使用できるようになりLABEL=my-driveます/etc/fstab

答え2

Windows との互換性が必要な場合は、任意のブロック サイズでラベルとして認識するように更新するblocksize=512修正があります。これはまだリリース バージョンには組み込まれていませんが、2013 年 3 月 1 日にコミットされました。カーネル モジュールには、128G を超えるパーティションを使用できないというバグもあります。この修正は 2 月初旬にメインラインにコミットされ、3.0-stable、3.4-stable、および 3.8-stable ブランチにコミットされました。util-linuxblkidvidudf

答え3

--blocksize=512 を使用するようにしてください (ネイティブ 4k ディスクがない限り)。UDF ブロック サイズは、ディスクの論理 (セクター) サイズ (512 バイト) と一致する必要があります。古いバージョンの mkudfffs では、論理セクター サイズを検出できず、CD/DVD 値 2048 にフォールバックします (他の OS では、ハード ディスク上の CD/DVD ブロック サイズを想定していないため、問題が発生します)。

util-linux v2.30 の blkid は UDF ファイルシステムにも UUID を提供するため、util-linux を新しいバージョンにアップグレードするだけで、/etc/fstab で UUID を使用できます。UUID は UDF ボリューム セット識別子から計算されます。UDF ボリューム セット識別子は、UDF 定義により、最初の 16 文字が一意で、単純ではなく、固定されておらず、一意の識別子を保証するのに適しています。

また、mkudffs バージョン 1.1 以降には、独自の UUID を指定するためのオプション --uuid= があります。

答え4

ディストリビューションには/dev/disk/by-*シンボリックリンクがありますか?

それらの中から、UDF 付き USB スティックを、他の方法とは異なり、変化しない方法で識別する方法が見つかるかもしれません/dev/sd*

関連情報