質問:
/DATA/
私はNTFSディスクパーティション(Ubuntuにインストールされている)へのアクセスを共有するデュアルブートPCであるUbuntu / Windows 10を持っています。
chmod
これらの共有パーティション上のファイルに対してコマンドを実行するときは、ユーザーがこのコマンドを呼び出すかどうかに関係なく、「許可拒否」エラーを回避する必要があります。これは私がchmod
より大きなプログラムの一部と呼ばれ、ユーザーがこれを避けることができないためです。エラーが返されると、プログラム全体が停止します。
私が試したこと:
/DATA/
permissions
オプション(マップファイルの有効化)を使用して、ID 1001の非ルートユーザーとしてマウントし、すべてのユーザーがID 1003のグループに属します。これは次のrwx
ように許可されます。
UUID=... /DATA ntfs auto,users,rw,permissions,umask=007,uid=1001,gid=1003 0 0
このソリューションはほとんど動作します。誰でもr + wを実行でき、chmod
ユーザー1001が呼び出されたときにエラーは発生しません。実際には何の変化もありませんが、問題にはなりません。問題は、他のユーザーがファイルの所有者と見なされないため、コマンドがchmod
依然としてエラーを引き起こすことです。
/DATA/
マウントされたパーティションの所有権をすべてのユーザーに付与する方法はありますか?それとも、少なくとも初めてログインするユーザーの場合は?
それとも、少なくともchmod
コマンドがエラーを返さないようにしますか?
ベストアンサー1
普及した信仰とは異なり、NTFSはPOSIX準拠のファイルシステムです。。すべてのPOSIXファイル名とPOSIX権限をサポートします§
WindowsでPOSIX権限は拡張属性として保存されます。内部に$EA_INFORMATION
小川。現在、ntfs-3gドライバがそれをサポートしているかどうかはわかりませんが、次の方法でWindows権限をPOSIX権限にマップすることができます。ユーザーマッピングファイル。設定後ntfs-3gは自動的に権限変換を処理します。実行するときchmod
。
§その理由は、1980年代に米国連邦政府が特定の種類の政府調達はPOSIXに準拠しています。したがって、MSはWindowsにPOSIXサブシステムを含める必要があります。したがって、NTFSはファイル名の特殊文字、ハードリンク、大文字と小文字の区別、権限などのPOSIX機能もサポートする必要があります。Microsoft POSIX サブシステムそれからSFU(UNIX用Windowsサービス)、UNIXベースのアプリケーション用サブシステムついにLinux用Windowsサブシステム。