私が所有しているNTFSパーティションにあるスクリプトを実行しようとしています。
私はマウントポイントを所有しています~/Migration
。
ls -l
マウントポイントを含むディレクトリを表示してください。
drwxrwxrwx 1 technomage technomage 4096 Sep 30 18:04 Migration
たとえ私が構造全体(マウントポイントから始まる)の所有者であり、rwx権限を持っているにもかかわらず、このスクリプトを実行することはできませんstartup.sh
。 Bashでは、次のエラーが発生します。
bash: ./startup.sh: Permission denied
スクリプトを含むディレクトリにはls-la
次のものが表示されます。
drwxrwxrwx 1 technomage technomage 4.0K Oct 1 12:51 .
drwxrwxrwx 1 technomage technomage 4.0K Oct 1 12:51 ..
-rwxrwxrwx 1 technomage technomage 1.9K Oct 1 12:51 startup.sh
まだ実行できませんstartup.sh
。
LinuxのNTFSパーティションに対する権限は少し難しいかもしれないことを知っているので、私は入って、/etc/fstab
権限、所有者、マスクをできるだけ設定しました。
UUID=6F537BB96F6E0CBC /home/technomage/Migration ntfs-3g rw,exec,user,umask=000,uid=1000,gid=1000 0 0
sudo umount Migration
その後、設定を使用してfstabファイルを再ロードしましたsudo mount -a
。再インストールに成功しました。
ところで、root権限を持っていてもスクリプトを実行することはできません。
コマンドはmount | grep sda6
以下を示します。これは、パーティションが正しくマウントされていないか、私が提供した構成を使用していないことを示しています。
/dev/sda6 on /home/technomage/Migration type fuseblk (rw,nosuid,nodev,noexec,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096,user)
私はDebian Jessieを実行しており、最新バージョンのntfs-3g
ドライバを入手するためにStretchのリポジトリに行き、それがバグの一種だと思いました。サイコロではありません。
何が間違っているのかよくわかりません。 NTFSパーティションをマウントする方法を間違って設定した方法を教えてください。完全なアクセス権が必要です。
答え1
どちらかを選択できますが、/etc/fstab
順序は重要ですexec
。後ろに user
(何よりも)user
賦課のためです。noexec
したがって、/etc/fstab
項目は次のようにする必要があります。
UUID=6F537BB96F6E0CBC /home/technomage/Migration ntfs-3g rw,umask=000,uid=1000,gid=1000,user,exec 0 0
に変更したら、/etc/fstab
ドライブをマウント解除してsudo mount -a
もう一度やり直してください。
また、合計が正しいことを確認してくださいuid
(ユーザーとしてログインしている間にコマンドを実行してgid
)。id