如何始终将同一个驱动器安装到同一个位置?

如何始终将同一个驱动器安装到同一个位置?

我的笔记本电脑上运行着 Debian,并且rsnapshot配置可以出色地将数据逐步备份到我的 1TB 外部驱动器。不幸的是,有时驱动器会在/media/ivy我插入时安装到,有时则安装到/media/usb0。我该如何标准化安装点?我最初考虑使用fstab,但作为新手,我认为fstab通常可以处理更永久的驱动器连接——因为我想在笔记本电脑上执行此操作,驱动器经常来来去去。

答案1

我解决类似问题的方法是确保外部 USB 卷已标记,然后使用 /dev/disk/by-label/labelname 手动挂载和卸载它(如果您旋转有多个磁盘和一个脚本,然后将磁盘标记为 Backup_01、Backup_02 等,这将很有用)

为了“修复”安装点,使其按您希望的方式运行,您可能需要查看 UDEV,它可以枚举设备。配置它需要反复试验,但对于我想要识别和运行脚本的安装,我使用了:

KERNEL=="sd?1",ATTRS{产品}=="EXTIDPRODUCTIDENTIFUER",ATTRS{序列号}=="DEVICE_SERIAL_NO",RUN+="/usr/local/bin/script.to.run"

为了发现传递给 udev 的参数,我发出了命令 udevadm info -a -p $(udevadm info -q path -n /dev/sdXX)

我认为没有理由认为您执行的脚本不能是 mount 命令。

答案2

我非常确定您可以使用 来做到这一点gvfs-mount,但我无法告诉您如何操作。默认情况下gvfs-mount应安装在/media/YOUR_DRIVE_VOLUME_NAME。只要您的驱动器有卷名(我假设它有,因为它有时安装在 /media/ivy)。无论如何,一种解决方法fstab是使用UUID外部驱动器的 添加条目。

  • 要获取驱动器的 UUID,请执行以下操作

    ls -l /dev/disk/by-uuid/
    

    你应该看到类似

    lrwxrwxrwx 1 root root 10 Feb 14 16:58 E208CFC0FGG345JDB -> ../../sdb1
    
  • 假设您的外部驱动器的分区是/dev/sdb1,您可以像这样添加一个条目fstab

    UUID=C0BCD19CBCD18D72   /media/ivy  ntfs    nofail,defaults 0   0
    

现在,根据man mountnofail只会抑制错误消息。但是,根据这一页,这也会导致mountall跳过不存在的设备。如果这不起作用,您还可以尝试bootwait源1来源2) 和/或bg(来源) 选项。遗憾的是,我目前手边没有外部驱动器,因此无法检查。

相关内容