禁用Linux硬盘支持

时间:2014-05-08 07:53:20

标签: linux-kernel kernel

我正在构建一个自定义Linux内核,它应该能够访问cdrom和usb大容量存储设备,但不能访问硬盘。

我尝试禁用CONFIG_BLK_DEV_SD,但我失去了usb海量存储支持。

我怎样才能实现这一目标?如果不可能,有没有办法在启动时删除/ dev中的硬盘节点?

2 个答案:

答案 0 :(得分:1)

首先,你需要定义什么,"硬盘"装置

其次,您需要将上述定义表达为一组udev规则。这样,您不想要的设备的设备节点甚至不会首先在/dev/中创建。

udev规则的一个很好的教程是:

http://www.reactivated.net/writing_udev_rules.html

相关问答: https://unix.stackexchange.com/questions/66897/what-is-the-udev-rule-to-allow-specific-thumb-drive-vendors

答案 1 :(得分:0)

坦率地说,我甚至惊讶于你甚至管理了一个禁用CONFIG_BLK_DEV_SD的可启动系统:现代Linux内核几乎通过SCSI层汇集所有存储I / O,然后处理特定类型(SATA,PATA,USB海量存储,等)作为SCSI的风味。

我尝试禁用系统中下一层的内容:启用SCSI磁盘和CD-ROM支持,然后禁用与这些磁盘实际通信的所有方法:低级SCSI驱动程序,ATA SFF支持, ACHI支持等