シェルで私のデータパーティションにあるいくつかのスクリプトを実行しようとしていますが、権限の問題があります。
bash: /media/storage/ss/script.py: Permission denied
実行する前にスクリプトの実行権限を付与しました。
chmod +x script.py
問題は、私のfstabファイルの設定に関連している可能性があります。 /etc/fstab設定を編集してみました。現在、彼らは次のとおりです。
UUID=F6C09DB5C09D7C95 /media/storage/ ntfs-3g uid=1000,gid=1000,umask=0022,auto,rw 0 0
ただし、次の実行時に更新されたuidとgidは表示されません。
編集する:
~$ stat /media/storage
出力:
File: /media/storage/
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: 804h/2052d Inode: 5 Links: 1
Access: (0777/drwxrwxrwx) Uid: ( 0/ root) Gid: ( 0/ root)
それでは、ntfsデータパーティションのスクリプトに対する実行権限を持つように/ etc / fstabファイルをどのように変更しますか?
- 編集する -
~$ stat /media/storage/ss/script.py
出力:
File: /media/storage/ss/script.py
Size: 525 Blocks: 2 IO Block: 4096 regular file
Device: 804h/2052d Inode: 10208 Links: 1
Access: (0777/-rwxrwxrwx) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2019-03-13 13:17:31.980325600 +0000
Modify: 2019-03-13 13:14:11.690160100 +0000
Change: 2019-03-13 13:14:11.690160100 +0000
Birth: -
私が実行したとき:
~$ head -n 1 /media/storage/ss/script.py
出力:
#! /usr/bin/env python
私が実行したとき:
mount | grep /media/storage
出力:
/dev/sda4 on /media/storage type fuseblk (rw,nosuid,nodev,noexec,relatime,user_id=0,group_id=0,allow_other,blksize=4096,user)
ありがとうございます!
ベストアンサー1
/media/storage
としてインストールしましたnoexec
。noexec
マウントされたファイルシステムではバイナリ実行は許可されません(参考資料を参照man 8 mount
)。
あなたexec
はにいる必要がありますfstab
。fstab
項目にも対応するdefaults
オプションがありません(参照man 5 fstab
)。あなたは次のようなものが欲しいかもしれません
UUID=F6C09DB5C09D7C95 /media/storage/ ntfs-3g defaults,uid=1000,gid=1000,umask=0022 0 0
man 5 fstab
またはのman 8 mount
意味を確認してくださいdefaults
。少なくとも私のシステムでは同じです
rw,suid,dev,exec,auto,nouser,async
ただし、これはファイルシステムによって異なります。
変更せずにこれを確認したい場合はお試しくださいfstab
。
mount -o remount,exec /media/storage/
まず、/media/storage/
実行権限で再インストールしてスクリプトを再確認してください。