web-dev-qa-db-ja.com

USBディスクからのファイルの正しいパーミッションを取得するにはどうすればよいですか?

誰かが次の問題を抱えていますか?

私はUbuntuボックスを職場と自宅に持っています。
私はいつもフォルダ/ファイルをUSBディスクとの間でボックスとの間でコピーします。
ボックスにコピーされたフォルダ/ファイルの権限を変更する必要があります。フォルダとファイルのアクセス許可は700です。

フォルダやフォルダにchmod 755 or 644するのは面倒です。すべての転送後にファイル。 /mediaにマウントされたUSBディスクに望ましくない権限があることがわかりました。

それは変更できますか? USBディスクにはvfatまたはntfsファイルシステムがあります。

3
slnyeo

vfatおよびntfsファイルシステムには、UNIXファイルのアクセス許可を表す情報は含まれていません。ファイルに特定のアクセス許可を設定して保持することはできません。

初期権限を特定の値に設定し、これを新しいファイルの作成にも使用できます。これはumaskと呼ばれ、mountコマンドでサポートされています。ファイルとディレクトリを区別することもできます。 man mountのいくつかの行は次のとおりです。

umask=value
       Set  the  umask  (the  bitmask  of  the permissions that are not
       present). The default is the umask of the current process.   The
       value is given in octal.
dmask=value
       Set  the  umask applied to directories only.  The default is the
       umask of the current process.  The value is given in octal.
fmask=value
       Set the umask applied to regular files only.  The default is the
       umask of the current process.  The value is given in octal.

/etc/fstabファイルのオプション列でこれを使用します。次に例を示します。

# <file system> <mount point>   <type>  <options>                                                        <dump>  <pass>
/dev/hda1       /mnt/usb      auto    rw,suid,dev,exec,auto,user,async,umask=755      0       1
3
echox