我经常处理格式化 USB 驱动器,这些驱动器注册为 /dev/sdX。这包括执行mkfs
和fdisk
以及mount
其他通常以 root 身份执行的命令。然而,我担心我可能会不小心输错一个字母,并格式化我的硬盘。
理想情况下,我希望将/dev/sdX*
设备设置为“只读”模式,这样任何fdisk
mkfs
wipefs
设备都会失败,除非通过手动命令将设备切换到“读写”模式。
我以为chmod ugo-w /dev/sdX
会像那样工作。然而令我惊讶的是,chmod 0000 /dev/sdc1
接下来的mkfs /dev/sdc1
作品完全没问题。
如何防止所有用户(包括 root 用户)修改硬盘驱动器及其分区表、对硬盘驱动器进行分区以及以通过已安装的文件系统以外的方式写入分区?如果我愿意,如何使用此方法启用对驱动器的写入?
我知道我可以使该设备归用户所有。然而,这需要我在用户和 root 之间切换才能发出类似chroot
ormount
或 之类的命令umount
,这是一个安全漏洞。我不希望所有 USB 存储设备都归用户所有。我正在寻找更好的解决方案。理想情况下,我希望保留 root 用户身份,但不会格式化错误的光盘。
我想要做一些日常的目录,我想看看如果给定的目录中有任何指向符号链接到它。我可以很容易地看到符号链接指向的目录,但现在我想看到相反的关系。