Udev

如何在 udev 規則中檢測任意 SSD?

  • November 23, 2021

我想sysctl -w vm.swappiness = 100在引導分區位於快閃記憶體設備上的機器上添加一個 udev 規則。

我目前的系統使用 NVMe 卡,我可以將其檢測為SUBSYSTEM="nvme",但我認為(我目前沒有可檢查的)SATA SSD 的值是"scsi",這不是 SSD 特定的。實際上,在我寫這篇文章的時候,我隱約記得一些製造商最近宣布將旋轉磁碟 NVMes 用於某些利基用途,所以這也不是完美的(儘管這對我的目的來說很好)。

如何在 udev 規則中可靠地檢測儲存設備的“技術”?

您可以檢查/sys/block/*/queue/rotational以了解核心是否認為它是具有旋轉介質的儲存設備。這與子系統無關。

它甚至可用於udev

udevadm info -a /dev/nvme0n1 | grep -F 'ATTR{queue/rotational}'
   ATTR{queue/rotational}=="0"

引用自:https://unix.stackexchange.com/questions/678717