Nautilusサイドペインのドライブアイコンをクリックして、/drivename
に他のドライブ(主にntfsとfat)をマウントします。ここで、「ドライブ名」はドライブのラベルを指します。デフォルトでは、nautilusは/media/drivename
フォルダーに名前drivenameのドライブをマウントします。
私の質問は次のとおりです。どうすればnautilusをそのようにできますか?
fstab:を使用したくない/etc/fstab
ファイルを編集してこれを行うことを提案しないでください。 nautilusでこの機能が必要です。ドライブをクリックすると、サイドペインにも表示されます。 (非表示にしないでください)。
Edit:この質問には誤解があるようです。ドライブにマウントしたくない/
、つまり、ドライブのすべての内容は/
になります。ドライブ名が「Main」のドライブをマウントすると、そのドライブは/Main
ではなく/media/Main
にマウントされます。
これを行うには、必要に応じてこれらのルールを拡張します-
# Start at sdb to avoid system harddrive.
KERNEL!="sd[b-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}="defaults,relatime"
# Filesystem-specific mount options
ACTION=="add", ENV{ID_FS_TYPE}=="vfat|ntfs", ENV{mount_options}="$env{mount_options},utf8,gid=100,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"
ルールを詳しく見てください。ハードディスクドライブでは機能しません。 KERNEL!="sd[b-z][0-9]", GOTO="media_by_label_auto_mount_end"
は、デバイス名がsda *の場合(sdb *またはsdc *でない場合)、ラベルmedia_by_label_auto_mount_end
すなわち。ルールの最後まで。必要に応じて行を編集します。ただし、システムドライブについては忘れないでください。例外を追加します。
システムドライブが/ dev/sda7の場合、最初の数行は
KERNEL=="sda7" GOTO="media_by_label_auto_mount_end" #sda7 is system drive, so go to end.
#KERNEL!="sd[b-z][0-9]", GOTO="media_by_label_auto_mount_end"
追加のコマンドを実行する必要がある場合、それらをRUN
と連結します。
Udevルールの詳細については、 here をクリックしてください
このためにudevルールを書く必要があります:ディレクトリにファイルを作成することができます/etc/udev/rules.d/
と
# Start at sdb to avoid system harddrive.
KERNEL!="sd[b-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}="defaults,relatime"
# Filesystem-specific mount options
ACTION=="add", ENV{ID_FS_TYPE}=="vfat|ntfs", ENV{mount_options}="$env{mount_options},utf8,gid=100,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"
そして、パスでADDおよびREMOVEアクションを変更します。この場合は/
ACTION=="add", RUN+="/bin/mkdir -p /%E{dir_name}", RUN+="/bin/mount -o $env{mount_options} /dev/%k /%E{dir_name}"
ACTION=="remove", ENV{dir_name}!="", RUN+="/bin/umount -l /%E{dir_name}", RUN+="/bin/rmdir /%E{dir_name}"