![不带 sudo 的 dd 来映像分区](https://linux22.com/image/172456/%E4%B8%8D%E5%B8%A6%20sudo%20%E7%9A%84%20dd%20%E6%9D%A5%E6%98%A0%E5%83%8F%E5%88%86%E5%8C%BA.png)
我需要创建 USB 驱动器分区的映像:
dd if=/dev/sdb1 of=sdb1.img
有没有办法不用 sudo/su 来做到这一点?也许通过更改 USB 驱动器的权限?这会带来什么安全影响?
答案1
有没有办法不用 sudo/su 来做到这一点?也许通过更改 USB 驱动器上的权限?
如果您/dev/sdb1
具有以下权限:
$ ls -l /dev/sdb1
brw-rw---- 1 root disk 8, 17 Apr 25 17:07 /dev/sdb1
然后一个选项是将您的用户添加到disk
组中:
# usermod --append --groups disk username
之后,用户下次登录时,他们将能够读取设备。dd
之后你应该工作。
这会带来什么安全隐患?
由于用户可以读取任何直接磁盘上,用户可以访问任何用户拥有的文件任何磁盘。
用户不仅能够阅读任何磁盘,但也能够写直接到任何具有相同权限的块设备文件(g+rw)
。该用户可能会因意外写入这些块设备文件而轻易损坏任何文件系统。更改权限以禁止disk
组写入权限可能会产生我无法预测的其他副作用。
因此,如果您使用的是多用户系统或您关心存储在以下位置的数据的系统:任何磁盘,我不建议你这样做。普通用户无权访问块设备因为的安全影响。
答案2
由于它是一个 USB 驱动器并且可能是便携式的,因此我之前最终使用的明显解决方法是在具有 sudo 访问权限的计算机上创建映像,然后将映像文件移动到目标系统(可能在更大的 USB 驱动器上) )