如何以只读模式挂载 USB 设备?

Pet*_*ade 2 usb automount

我希望从 USB 外部驱动器安全地复制文件,以便该驱动器上的文件不会被虚假修改。

有人会用相对简单的措辞告诉我如何做到这一点吗?简单的措辞是因为我是最近的 Linux 用户,并且只是 Ubuntu Linux 用户。

Pad*_*dau 5

当你插入你的 USB 时,它会自动安装在/media文件夹中,并带有一些名称。

打开终端(Ctrl+ Alt+ T)。输入以下命令:

mount
Run Code Online (Sandbox Code Playgroud)

你会看到这样的结果:

/dev/sda7 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/kernel/debug type debugfs (rw)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
/dev/sda5 on /home type ext4 (rw)
/dev/sdb1 on /media/84CD-D8C7 type vfat (rw,nosuid,nodev,uid=1000,gid=1000,shortname=mixed,dmask=0077,utf8=1,showexec,uhelper=udisks)
Run Code Online (Sandbox Code Playgroud)

看看我的例子中的最后一行:/dev/sdb1 on /media/84CD-D8C7 type vfat加上一些其他输出。您的线索是它的文件夹以/media;开头。在这种情况下,/media/84CD-D8C7

您现在可以使用以下命令告诉系统以只读方式重新安装它:

sudo mount --options=remount,ro /media/84CD-D8C7
Run Code Online (Sandbox Code Playgroud)

当然,您将替换84CD-D8C7为您拥有的实际名称。要检查它是否有效,您可以重新发出该mount命令。看看我的有什么变化——寻找ro括号后面的(ro代表“只读”,rw代表“读写”)。

/dev/sdb1 on /media/84CD-D8C7 type vfat (ro,nosuid,nodev,uid=1000,gid=1000,shortname=mixed,dmask=0077,utf8=1,showexec,uhelper=udisks)
Run Code Online (Sandbox Code Playgroud)

解释(如果你有兴趣):

  • sudo表示授权此命令(即以“root”身份运行),因为“mount”命令并非对所有用户都可用。这将询问您的密码。
  • mount告诉系统“挂载”该设备,即将它连接到您的计算机并为其指定一个文件夹名称。在这种情况下,它已经完成了;我们正在使用该命令来更改设备的安装方式。
  • --options告诉mount命令我们要指定一些选项。
  • remount 意思就是:除非您另有说明,否则使用完全相同的设置再次安装设备。
  • ro说重新挂载为只读。这是我们对挂载所做的唯一更改。
  • /media/84CD-D8C7 指定它已经安装的位置。