noexecを使用するntfsのumask、fmask、dmaskのfstabマウントオプション

noexecを使用するntfsのumask、fmask、dmaskのfstabマウントオプション

ntfsパーティションがあり、fstabでデフォルトオプションを使用してマウントすると、ファイルとディレクトリが表示されます。 rwxrwxrwx = 0777明らかにntfsは "noexec"オプションをサポートしておらず、ファイルとディレクトリに "x"があることを望んでいません。フラグ。

/dev/sda3       /ntfsPartition  ntfs-3g     defaults,noatime,umask=0666,locale=en_US.utf8,errors=ro 0 0

パーティションのマウントディレクトリとして d--x--x--x を取得します。次のディレクトリに移動できます。

cd /ntfsPartition

しかし、内容を読むことはできません。

ls /ntfsPartition
ls: cannot open directory '.': Permission denied

よろしくお願いします!

答え1

このxフラグは、ディレクトリの内容にアクセスするために必要です。

ディレクトリのフラグのみを使用するとrディレクトリのリストを取得できますが、その中のファイルとサブディレクトリにはアクセスできません。ディレクトリにフラグがあるx場合は、ディレクトリのリストは表示されませんが、権限が許可されている場合はファイルとサブディレクトリにアクセスできます。アクセスするコンテンツの正確な名前を指定できます。r-xしたがって、ほとんどの場合、ディレクトリに一般的に役立つ2つの権限選択肢がありますrwx

したがって、umaskマウントオプションはファイルとディレクトリの両方に適用され、そのフラグをファイルに使用したくないため、ファイルに1つの権限セットを付与し、ディレクトリに別の権限セットを付与する目的でのみandをx使用する必要があります。fmaskdmask

権限と対応するマスク番号:

  • rwx=マスク番号0
  • rw-=マスク番号1(ディレクトリにはあまり役に立ちません)
  • r-x=マスク番号2
  • r--=マスク番号3
  • -wx=マスク番号4(特殊事例:「書き込み専用ディレクトリ」の近似値)
  • -w-=マスク番号5(ディレクトリにはあまり役に立ちません)
  • --x=マスク番号6(ディレクトリの場合:既知のファイル名でのみアクセス)
  • ---=マスク番号7(アクセス不可)

ディレクトリとxファイルフラグを除くすべてへのフルアクセスが必要な場合は、そのdmask数と1数字のゼロが必要ですfmask

NTFS-3gマスク番号の場合、最初の数字は常に0であり、これは値が8進数であることを示します。 2番目の数字はuid=このオプションで指定されたユーザー(または指定されていない場合はインストールを実行したユーザー)へのアクセス権を指定し、3番目の数字はこのオプションで識別されたgid=グループへのアクセス権を指定し、最後の数字はそれぞれのアクセス権を指定します。個々のアクセス権はさまざまです。

これがプライベートシステムで、他のユーザーがNTFSファイルシステムにアクセスする必要がない場合は、このidコマンドを使用してUID番号を識別してからマウントオプションを使用できますuid=<your UID here>,dmask=0077,fmask=0177。これにより、NTFSファイルシステム内のすべてのファイルがユーザーが所有し、権限を持っているように見え-rw-------ますdrwx------

NTFSファイルシステムにアクセスする必要がある他のユーザーがいる場合は、NTFSアクセス用のグループを作成し、そのユーザーをすべてグループに追加してから、マウントオプションでグループのGIDを指定できますuid=<your UID here>,gid=<NTFS access group GID here>,dmask=0007,fmask=0117。これにより、グループ内のすべての人にあなたと同じアクセス権(ファイル-rw-rw----とディレクトリ)が付与されますdrwxrwx---

または、自分には書き込みアクセス権を維持し、グループメンバーには読み取り専用アクセス権を付与することもできますuid=<your UID here>,gid=<NTFS access group GID here>,dmask=0027,fmask=0137。これにより、-rw-r-----ファイルとdrwxr-x---ディレクトリの権限が付与されます。

または、複数のユーザーアカウントにフルアクセス権を付与し、他のユーザーアカウントに読み取り専用アクセス権を付与する場合は、マウントオプションは次のとおりですuid=<your UID here>,gid=<NTFS access group GID here>,dmask=0002,fmask=0113。これにより、-rw-rw-r--ファイルとdrwxrwxr-xディレクトリの権限が付与されます。


マウントオプションを使用してNTFSファイルとディレクトリの権限を指定することに加えてユーザーマッピングファイルWindows NTFSセキュリティID(SID)をUnixスタイルのUIDとGIDにマッピングします。ntfsusermapこのファイルを生成するのに役立つツールもあります。マッピングファイルを作成してから挿入するだけで、<root of NTFS filesystem>/.NTFS-3G/UserMapping次回ファイルシステムをマウントするときに自動的に使用されます。その後、実際のNTFSファイルの所有権と権限はLinux(該当する場合)で使用され、chown//を使用してchgrp保持することもできますchmod

詳細については、およびを参照してくださいman ntfs-3gman ntfsusermap

LinuxとWindowsをデュアルブートする場合は、次のものが必要になることがあります。Windowsのコマンドラインバージョンntfsusermapそして、Windowsを実行すると、ユーザーマッピングファイルが生成されます。 Windowsバージョンのツールを使用すると、ファイル名と関連するSIDだけでなく、実際のWindowsユーザー名も表示できるため、これが簡単になります。

Windowsのバージョンが必要なくても、ntfsusermapこのページにはツールの使用方法に関する詳細な説明が含まれています。これはLinux側でも役立ちます。

関連情報