如何让Ubuntu Server识别并自动挂载热插拔SATA驱动器?

AHCI开启,我可以手动安装,但因为这个设备注定是一个无人设备使用的人没有关于终端的线索所以我需要一些尽可能耐用的东西。

我希望我需要制定一些udev规则,但我不知道如何开始。

我已经设法使用fstab使其自动挂载,但这不适合热插拔。

现在,我需要的是它能够识别具有一个主要NTFS分区的特定驱动器,但我会将其提升到包括一堆驱动器,甚至“驱动器之前从未见过”驱动器,所以如果有人也可以提供帮助然后我就更好了。

在Linux上,您可以告诉系统重新扫描单个SATA端口。要重新扫描SATA3端口,只需执行以下操作:

echo "- - -" | sudo tee -a /sys/class/scsi_host/host2/scan 

系统将扫描驱动器并将条目添加到驱动器及其各个分区的/ dev /(例如/ dev / sdb,/ dev / sdb1,/ dev / sdb2)。 Ubuntu将自动挂载/ media下的所有可安装分区,并在桌面上放置一个图标。

这是一个可以帮助您扫描电路板的脚本。

 #!/bin/bash export SCAN_TEMP=$(mktemp -d) ls /dev/sd? > ${SCAN_TEMP}/before.txt for i in /sys/class/scsi_host/host*/scan do echo "- - -" >> $i done ls /dev/sd? > ${SCAN_TEMP}/after.txt for i in $(diff ${SCAN_TEMP}/before.txt ${SCAN_TEMP}/after.txt | grep \> | awk -F/ '{print $NF}'); do echo Added /dev/$i: /sbin/sfdisk -uM -l /dev/$i | grep -E "^/dev/$i" | awk '{print " "$1" "$4" MiB"}' done rm -rf ${SCAN_TEMP} 

资料来源: http : //www.makestuff.eu/wordpress/sata-hotplug-in-ubuntu/

为此 ,我在Debian上使用了usbmount 。 它修改了udev规则,因此它们调用usbmount脚本。 它没有维护,但是一个非常简单的自定义脚本。 问题是如果在拔出之前没有人卸载磁盘,你需要使用“sync”选项挂载它,这使得它非常慢。