mkntfsはなぜそんなに時間がかかるのですか?

mkntfsはなぜそんなに時間がかかるのですか?

FreeBSD 12.0では、このコマンドmkntfs -Q /dev/da3s1(高速フォーマットフラグを使用)はまだ必要です。非常に1TBハードドライブの場合は時間がかかります(数時間経っても完了しません)。

次の警告を提供します。

The partition start sector was not specified for /dev/da3s1 and it could not be obtained automatically.  It has been set to 0.
The number of sectors per track was not specified for /dev/da3s1 and it could not be obtained automatically.  It has been set to 0.
The number of heads was not specified for /dev/da3s1 and it could not be obtained automatically.  It has been set to 0.
Cluster size has been automatically set to 4096 bytes.
To boot from a device, Windows needs the 'partition start sector', the 'sectors per track' and the 'number of heads' to be set.
Windows will not be able to boot from this device.
Creating NTFS volume structures.

Windowsに似た高速フォーマット速度を取得するには?

答え1

ublioこれはライブラリのバグによるものです(ポートの直接的な依存関係sysutils/fusefs-ntfs)。開いているポートがあります。抜け穴それについて報告してください。

私は最近同じ問題に直面し、私が使用した解決策はエレガントではありませんでした。再インストールしてサポートをsysutils/fusefs-ntfs無効にしましたUBLIO。その後、実行してmkntfsデバイスをフォーマットできます。 1TBでは速いでしょう。 Windowsのローカル実行とどのように比較されるかはわかりませんが、タスクを実行し、無期限の中断に比べて改善されました!

FreeBSDからNTFSデバイスをインストールするには、再インストールする必要がありますが、sysutils/fusefs-ntfs有効UBLIOにする必要があります。そうしないと、ドライブのIOパフォーマンスが非常に低下します。再インストール後も必要に応じて使用できるように、パスのどこかに別の名前でmkntfsサポートされていないバイナリのコピーを作成できます。UBLIOUBLIO

答え2

ソリューション(言及されたエラーに関する最後のコメント)は、作成時にパーティションサイズを明示的に設定することです。

パーティション/ドライブの表示:

gpart show

パーティション/ドライブの削除:

gpart destroy -F da3

GUIDパーティションスキームを作成します。

gpart create -s GPT da3

パーティションタイプ(ntfs)を作成してサイズを追加します(バイト、GBの場合は「g」を使用)。

gpart add -t ms-basic-data -s 4000g da3

誰かが正しい利用可能なサイズを取得する方法を教えてくれたらいいでしょう。

ドライブにはNTFSファイルシステムが必要で、高速フォーマットを実行します。

mkntfs --verbose --fast --label 4TB_HD /dev/da3p1

これは私にとって効果的です

答え3

私はこの問題が発生しましたが、ヒューズfs-ntfs-2017.3.23のpkg-messageで/usr/local/share/doc/ntfs-3g/README.FreeBSDを読むことを提案しました。

現在の実装では、サイズがUBLIO_BLOCKSIZEの倍数ではないパーティションを正しく処理しません(最後のクラスタは読み書きできません)。たとえば、このため、ntfsファイルシステムを作成できない可能性があります

UBLIOレイヤーは環境変数で構成されています。

NTFS_USE_UBLIO - 1. この機能を無効にすると、パフォーマンスが大幅に低下します。

UBLIO_BLOCKSIZE - 262144(256KB)。サイズが大きいほど、大容量ファイルの読み書き速度が速くなり、サイズが小さいほどファイルシステムの操作(作成、削除、移動、ナビゲーション(1))が速くなります。

したがって、考えられる解決策は次のとおりです。

  1. UBLIOレイヤーを無効にし、NTFS速度を低下させます。何も再コンパイルする必要はありません。ただ

    setenv NTFS_USE_UBLIO 0
    

    (csh) または

    NTFS_USE_UBLIO=0
    

    (sh/bash) この端末で ntfs ツールを実行する前に。

  2. -Or- UBLIO_BLOCKSIZEを調整します。パーティションサイズはUBLIO_BLOCKSIZEの倍数でなければなりません。この変数を1と同じ方法で設定します。

  3. -Or- パーティションのサイズを変更します。パーティション・サイズはUBLIO_BLOCKSIZEの倍数でなければならず、デフォルト値は262144です。しかし、最新のWindows(Vista +)では、パーティション化されたメディアではこのエラーが発生する可能性がないと思います。 Windowsは常に1048576バイトの倍数サイズのパーティションを作成するためです。

関連情報