Ubuntu - 如何在预配置的挂载点自动挂载外部驱动器?

Ubuntu - 如何在预配置的挂载点自动挂载外部驱动器?

通常,当我将外部 USB 驱动器连接到我的 Ubuntu 系统时,其上的文件系统会自动挂载到 /media/标签。但是,我希望文件系统挂载在我选择的挂载点。我在我的/etc/fstab

UUID=2BE905C238C1F724   /p   ntfs-3g   defaults   0   0   # Passport 320GB

这使我能够手动安装卷/p通过运行sudo 安装/p但是,当驱动器连接到 PC 时,文件系统不再自动挂载。如果可能的话,我需要做什么才能使自动挂载到此挂载点正常工作?

答案1

GeorgeM 很接近,但还不够接近。

在 Ubuntu 上,gnome-mount负责安装媒体并维护所需的配置。gnome-mount 的手册页应该会告诉你更多信息,只要稍加尝试和错误,你就能实现你想要的。

我玩了一会儿之后,发现了以下情况:

  1. 似乎你可以不是指定外部的挂载点/media
  2. 您可以通过 hal udi 设置挂载点名称

以下命令将更改用于在我的系统上安装 USB 驱动器的设置:

gnome-mount --write-settings \
            --hal-udi /org/freedesktop/Hal/devices/volume_uuid_00AD_15D0 
            --mount-point p

插入后,USB 驱动器将安装在/media/p

答案2

挂载点由 HAL 及其复杂且神秘的规则决定。无需破解您的 fstab 文件。

答案3

对于使用 ext4 格式化的外部 USB 硬盘(如果使用 ntfs,则需要调整选项):

  • 创建了一个文件99-toshiba.rules

    IMPORT{program}="/sbin/blkid -o udev -p %N"
    ENV{ID_FS_LABEL}!="toshiba", GOTO="toshiba_end"
    ACTION=="add", RUN+="/bin/mkdir -m 0 -p /media/toshiba", RUN+="/bin/mount -o noatime,nodiratime,errors=remount-ro /dev/%k /media/toshiba"
    ACTION=="remove", RUN+="/bin/umount -l /dev/%k", RUN+="/bin/rmdir /home/toshiba"
    LABEL="toshiba_end"
    
  • 复制文件:sudo cp 99-toshiba.rules /lib/udev/rules.d/

  • 重新加载配置sudo udevadm control --reload-rules

正如您所看到的,我手动设置了挂载点,/media/toshiba但它可能在任何地方。

它确实有效 ;-)

相关内容