web-dev-qa-db-ja.com

OSXでdiskutilからUUIDを取得しない

Mac OSX 10.7.5を実行しています。USB3外付けハードディスクでNTFSを有効にしたいのですが、UUIDが必要です( http://ntfsonmac.com )が、diskutilがUUIDの提供を拒否しています。最初に:

diskutil info /Volumes/HD-PCTU3/

次にこれから:

diskutil info disk2s1
   Device Identifier:        disk2s1
   Device Node:              /dev/disk2s1
   Part of Whole:            disk2
   Device / Media Name:      Untitled 1

   Volume Name:              HD-PCTU3
   Escaped with Unicode:     HD-PCTU3

   Mounted:                  Yes
   Mount Point:              /Volumes/HD-PCTU3
   Escaped with Unicode:     /Volumes/HD-PCTU3

   File System Personality:  NTFS
   Type (Bundle):            ntfs
   Name (User Visible):      Windows NT File System (NTFS)

   Partition Type:           Windows_NTFS
   OS Can Be Installed:      No
   Media Type:               Generic
   Protocol:                 USB
   SMART Status:             Not Supported

   Total Size:               500.1 GB (500107804672 Bytes) (exactly 976773056 512-Byte-Blocks)
   Volume Free Space:        499.9 GB (499896778752 Bytes) (exactly 976360896 512-Byte-Blocks)
   Device Block Size:        512 Bytes

   Read-Only Media:          No
   Read-Only Volume:         Yes
   Ejectable:                Yes

   Whole:                    No
   Internal:                 No

ご覧のように、UUIDは表示されていません。 UUIDを取得する理由および/または方法についてのアイデアはありますか?

14
mercergeoinfo

私が見つけることができた唯一の方法は、hfs.utilの文書化された機能がいくらか不十分であることです。

diskutilコマンドを実行してから、Device Identifierをコピー/記憶/保存します。

diskutil info /Volumes/my_drive_label | grep "Device Identifier" 

hfs.utilDevice Identifierと共に使用して(以下のdisk2s1を置き換える)、diskutilからボリュームのUUIDを(再)生成できます。

/System/Library/Filesystems/hfs.fs/hfs.util -s disk2s1

ボリュームがHFSドライブではない場合や、他のFilesystem/*.fs/*.utilコマンドでUUIDを生成するための-s動詞がない場合は、これがすべてのボリュームで機能するわけではないことに注意してください。

[〜#〜]更新[〜#〜]

ヨセミテ以降、-sフラグがソースレベルで無効にされました。私はhfs.utilの変更前のバージョンを見つけることができませんでしたが、 this Superuser question にある情報を使用して自分で行うことができます。

  1. Hfs.utilソース Appleから をダウンロードし、一時フォルダーに抽出します
  2. Hfs_fsctl.h Appleから をダウンロードして、hfs.utilフォルダーに配置します。
  3. hfsutil_jnl.cの行47#include <hfs_fsctl.h>に変更します
  4. hfsutil_main.cの行80#include <System/uuid/uuid.h>に変更します
  5. hfsutil_main.cの行81static unsigned char kFSUUIDNamespaceSHA1[] = {0xB3,0xE2,0x0F,0x39,0xF2,0x92,0x11,0xD6,0x97,0xA4,0x00,0x30,0x65,0x43,0xEC,0xAC};に変更します(インクルード行を置き換えます)
  6. また、#define HFS_UUID_SUPPORT 1hfsutil_main.cに追加します

上記が機能しない場合でも、引数の解析セクションに何か不足している可能性があります。何か不足している場合は、スーパーユーザーの質問とコメントを参照してください。

Gparted を使用してドライブのUUIDを変更できる可能性があることも報告されています。

Mac OS X 10.6.8を使用しており、NTFS 4TB Seagate USB3.0ドライブを購入しました。 Macを接続すると、ファイルを読み取ることはできましたが、書き込むことはできませんでした。ボリューム/ディスクの「情報を見る」を選択すると、「共有と権限」の下に_'You can read only'_が表示されます。
Windows 10からUSBドライブに大きなファイルをコピーしましたが、うまくいきました。次に、ファイルをMacにダウンロードして問題なく動作しましたが、MacからUSBドライブに何かを書き込んだり、ファイルに変更を加えたりすることはできません。 USBドライブ上のファイルを削除または名前を変更します。このUSBドライブをNTFSでフォーマットする理由は、FATで4GBの制限があるため、冗長バックアップのために4GBより大きいMacからWindowsにファイルをコピーするためでした。

オンラインで見つけた解決策の1つは、Sudoが/ etc/fstabにUUIDをエコーすることでした。diskutil情報を取得すると、UUIDが取得されません。次の抜粋も表示されます。

File System Personality: NTFS Type (Bundle): ntfs Name (User Visible): Windows NT File System (NTFS)

_Read-Only Media: No Read-Only Volume: Yes Ejectable: Yes_

私の解決策は、Mac Driver for Samsung NTFSを次の場所からダウンロードすることでした https://www.seagate.com/au/en/support/downloads/item/samsung-ntfs-driver-master-dl/

インストールと再起動後、次の変更に気付きました。

  1. ボリューム/ディスクの[情報を見る]を選択すると、[共有とアクセス許可]の下に_'You can read and write'_が表示されます。

2. File System Personality: UFSD_NTFS Type (Bundle): ufsd_NTFS Name (User Visible): Windows NT Filesystem

3. _Read-Only Media: No Read-Only Volume: No Ejectable: Yes_

ダウンロードに付属しているreadmeファイル(pdf)には、NTFS機能がUSBドライブのMacでも機能することが記載されています。これで、ディスクを読み書きできるようになり、Finderにも表示されます。 2GBのファイルで読み取りと書き込みの速度をテストしましたが、NTFSとHFS +のジャーナルボリュームのパフォーマンス/速度に違いはありません。

最後に、sudo、hfs.util、diskutilについて2日間読んだ後、Mac 10.6からUSB NTFSドライブへのデータのバックアップに戻ることができます。

0
Zimba