特定のUSBストレージマウントのみを提供するスクリプトを開発しています。
まず、以下を追加して/etc/udev/rules.d/85-no-automount.rulesの自動マウント機能をブロックしました。
blockrule="SUBSYSTEMS=="usb", ENV{UDISKS_AUTO}:="0", ENV{UDISKS_IGNORE}:="1";
うまくいきます。
第二に、mountコマンドはroot権限でスクリプト内で実行されます。
mount -t vfat -o umask=0000 /dev/sdb1 /media/AA;
また、うまく動作します。標準ユーザー、ログインした管理者はUSBを読み書きできます。
ユーザーがGUIからUSBドライブをマウント解除しようとすると問題が発生します。
fstabに次の行を追加すると、
/dev/sdb1 /media/AA vfat rw,umask=0 0 0
メッセージは次のように変更されます。
/media フォルダーには以下が含まれます。
(/media)
∴ ll
total 24
drwxr-xr-x 6 root root 4096 Ağu 21 11:15 .
drwxr-xr-x 24 root root 4096 Ağu 20 09:33 ..
drwxrwxrwx 3 root ossec 4096 Oca 1 1970 AA
drwxr-x---+ 2 root root 4096 Ağu 20 15:34 deneme
drwxr-x---+ 2 root root 4096 Ağu 21 10:29 root
インストールされた辞書の所有者が問題のようです。
drwxrwxrwx 3 root ossec 4096 Oca 1 1970 AA
それで、mountコマンドを次のように変更してみました。
mount -t vfat -o uid=1004,gid=1004 umask=0000 /dev/sdb1 /media/AA;
/media フォルダを次に変更します。
(/media)
∴ ll
total 24
drwxr-xr-x 6 root root 4096 Ağu 21 11:42 .
drwxr-xr-x 24 root root 4096 Ağu 20 09:33 ..
drwxrwxrwx 3 deneme deneme 4096 Oca 1 1970 AA
drwxr-x---+ 3 root root 4096 Ağu 20 15:22 aagin
drwxr-x---+ 2 root root 4096 Ağu 20 15:34 deneme
drwxr-x---+ 2 root root 4096 Ağu 21 10:29 root
インストールされた辞書の所有者は次のように変更されます。
drwxrwxrwx 3 deneme deneme 4096 Oca 1 1970 AA
しかし、それは問題を解決しません。私も変わった
/usr/share/polkit-1/actions/ org.freedesktop.udisks.policy
/usr/share/polkit-1/actions/ org.freedesktop.udisks2.policy
このファイル内では、各ノードには以下が含まれます。
<defaults>
<allow_any>yes</allow_any>
<allow_inactive>yes</allow_inactive>
<allow_active>yes</allow_active>
</defaults>
標準ユーザーはGUIからどのように削除しますか?
ありがとう