NTFSパーティションをマウントし、UNIXファイルシステムのアクセス許可で使用できるようにする必要があります。問題は、次のfstabエントリを使用してパーティションをマウントすると、chownとchmodを正常に実行できないことです。エラーなしで実行されますが、ファイルのアクセス権は変更されません。
PARTUUID=c3e3b171-d451-44e6-9f17-ffbe9e220dc7 /mnt/mounted_drive ntfs-3g defaults,umask=0022,uid=1000,gid=1000,errors=remount-ro,permissions 0 2
Umask、uid、およびgidを設定せずにパーティションをマウントすると、前述のコマンドを正常に使用できます。
PARTUUID=c3e3b171-d451-44e6-9f17-ffbe9e220dc7 /mnt/mounted_drive ntfs-3g defaults,errors=remount-ro,permissions 0 2
パーティションを正しくマウントするにはどうすればよいですか?
NTFS-3Gでは、所有するユーザーとグループの設定は、対象のユーザー/グループのマッピングを含むUserMappingファイルが存在する場合にのみ可能と思われます。これはドキュメントからは明確ではありませんが、私は今それをテストしています、そしてそれが起こっていることです。
既存のWindowsインストールとの互換性が必要ない場合は、マウントされたパーティションに空のファイル.NTFS-3G/UserMapping
を作成し、次のように入力します。
getRUI4() { od -An -N4 -tu4 /dev/random | tr -d ' '; }
USERMAPPING=/media/NTFS_PARTITION/.NTFS-3G/UserMapping
echo ":users:S-1-5-21-$(getRUI4)-$(getRUI4)-$(getRUI4)-513" | Sudo tee -a $USERMAPPING >/dev/null
echo "$(id -un):$(id -gn):S-1-5-21-$(getRUI4)-$(getRUI4)-$(getRUI4)-1001" | Sudo tee -a $USERMAPPING >/dev/null
既存のWindows SIDを使用したい場合は、代わりにプログラムntfsusermap
をマウントされていない(!)パーティションで使用できます。これにより、対話的にユーザー名とグループ名を指定するように求められます(数値である必要はありません、メッセージに関係なく)、指定されたパスについて、まだマップされていないIDを最初に見つけます。これは簡単です。
ユーザーとグループroot
は、other
と同様にデフォルトでマッピングされます。上記の行は、users
グループと現在のユーザーのマッピングを作成します。必要に応じて繰り返します。
また、私の場合、オプションでドライブをマウントします
no_def_opts,allow_other,acl,nodev,nosuid,big_writes,hide_dot_files
ただし、これらのオプションはデフォルトでは改善されていますが、それ以外の場合、たとえば[chown/chmod
]はエラーの場合に警告なしに失敗するため、これらのオプションは必要ありません。