@arrangeがコメントに示している質問(および回答)に続いて、新しいファイルを作成しましょう
/etc/udev/rules.d/11-media-by-label-auto-mount.rules
次の内容を書き込みます(/ mediaの下のudev :: Mountを参照してください。存在する場合はパーティションラベルを使用してください)
KERNEL!="sd[a-z][0-9]", GOTO="media_by_label_auto_mount_end"
# Import FS infos
IMPORT{program}="/sbin/blkid -o udev -p %N"
# Get a label if present, otherwise specify one
ENV{ID_FS_LABEL}!="", ENV{dir_name}="%E{ID_FS_LABEL}"
ENV{ID_FS_LABEL}=="", ENV{dir_name}="usbhd-%k"
# Global mount options
ACTION=="add", ENV{mount_options}="relatime,sync"
# Filesystem-specific mount options
ACTION=="add", ENV{ID_FS_TYPE}=="vfat|ntfs", ENV{mount_options}="$env{mount_options},utf8,uid=1000,gid=1000,umask=002"
# Mount the device
ACTION=="add", RUN+="/bin/mkdir -p /media/%E{dir_name}", RUN+="/bin/mount -o $env{mount_options} /dev/%k /media/%E{dir_name}"
# Clean up after removal
ACTION=="remove", ENV{dir_name}!="", RUN+="/bin/umount -l /media/%E{dir_name}", RUN+="/bin/rmdir /media/%E{dir_name}"
# Exit
LABEL="media_by_label_auto_mount_end"
私はウェブサイトで報告されたものに関していくつかの小さな修正を行いました
sync
オプションを追加しましたENV{mount_options}
gid=100
オプションをuid=1000,gid=1000
に変更しました。ここで、番号は、id -u
およびによって返される、used-idおよびgroup-idに関連しています。id -g
2番目の方法では、マウントされたパーティション上のすべてのファイルの所有者になるため、権限の問題は発生しません。複数のユーザーがファイルにアクセスする必要がある場合は明らかにそうではありませんが、これは他の方法で処理できます。
Windows以外のファイルシステムの場合、所有者とグループはファイルシステム上のメタデータであり、マウントオプションで変更することはできません。
新しいルールはすぐにアクティブになります(udevはinotifyを使用して、新しいルールファイルと変更されたルールファイルを検出します)。
ご覧のように、マウントされたドライブはファイルマネージャウィンドウで自動的に開かれません。これは、マウントプロセスがルートによって所有され、グラフィカルログインセッションにアクセスできないため、達成が困難です。ただし、ドライブはデスクトップ上にあるため、単純なダブルクリックで開きます。
残念ながら、デスクトップの右クリックによるアンマウントを機能させることはできませんが、これは大きな問題ではありません。sync
オプションを用意しておくと、デバイスを単に取り外すことができ、udevルールがエントリの/proc/mounts
削除とマウントの削除を処理します。ポイント。