【问题标题】:How to read and write the raw device file of a usb flash drive as non-root如何以非 root 用户身份读写 USB 闪存驱动器的原始设备文件
【发布时间】:2013-10-10 00:24:49
【问题描述】:

我的 USB 闪存驱动器会自动安装在 /media/ME,而无需 root 干预。

现在,我可以使用openlseekreadwrite 读取和写入安装在/dev/sdX 设备上的驱动器上的扇区。但我只能以root 的身份执行此操作。

问题:就像设备可以在没有root 干预的情况下挂载一样,是否也可以在没有root 的情况下对该设备进行读写?

如果不可能,我愿意显示root 的 GUI 密码对话框。但是如何从我的控制台程序执行此操作?

【问题讨论】:

    标签: linux file-io device root


    【解决方案1】:

    是的

    块设备 /dev/sdX 具有标准的 UNIX 权限 - 因此,如果它由您的用户或您的用户所在的组拥有并且权限设置正确,那么您将能够对其进行写入。

    $ ls -l /dev/sda
    brw-rw---T 1 root disk 8, 0 Dec  3 18:27 /dev/sda
    

    所以只有 root 和磁盘组的成员可以读取或写入我的 /dev/sda。如果我把自己放在磁盘组中,我将能够写入块设备。

    您可以设置 udev 以在插入块设备时自动设置它们的权限。

    【讨论】:

      猜你喜欢
      • 2012-11-05
      • 1970-01-01
      • 2018-04-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-19
      相关资源
      最近更新 更多