使用外部存储设备的相关操作
- 外部存储设备相关操作
- 安装存储设备
- 设置自动挂载
- 卸载存储设备
- 处理 target is busy
文章来源: http://raspberry.dns8844.cn/documentation
原文网址
外部存储设备相关操作
您可以将外部硬盘、SSD或U盘连接到Raspberry Pi上的任何USB端口,然后挂载文件系统以访问存储在其上的数据。
默认情况下,您的Raspberry Pi会在 /media/pi/<HARD-DRIVE-LABEL>
位置自动挂载一些主流的文件系统,例如FAT、NTFS和HFS+。
NOTE: Raspberry Pi OS Lite 未使能自动挂载。
要将存储设备始终挂载到您选择的指定位置,您必须手动挂载它。
安装存储设备
您可以将存储设备挂载到指定的文件夹位置。通常在 /mnt
文件夹中执行此操作,例如 /mnt/mydisk
。请注意,该文件夹必须为空。
将存储设备插入Raspberry Pi上的USB端口,并使用以下命令列出Raspberry Pi上的所有磁盘分区:
$ sudo lsblk -o UUID,NAME,FSTYPE,SIZE,MOUNTPOINT,LABEL,MODEL
Raspberry Pi使用挂载点 /
和 /boot/firmware/
。您的存储设备将与任何其他连接的存储一起显示在此列表中。
使用SIZE、LABEL和MODEL列来标识指向您的存储设备的磁盘分区的名称。例如, sda1
。
FSTYPE列包含文件系统类型。如果您的存储设备使用exFAT文件系统,请安装exFAT驱动程序:
$ sudo apt update
$ sudo apt install exfat-fuse
如果您的存储设备使用NTFS文件系统,您将对其具有只读访问权限。如果要写入设备,可以安装ntfs-3g驱动程序:
$ sudo apt update
$ sudo apt install ntfs-3g
运行以下命令获取磁盘分区的位置:
$ sudo blkid
例如, /dev/sda1
。
创建一个目标文件夹作为存储设备的挂载点。
在这种情况下使用的挂载点名称是 mydisk
。您可以指定您选择的名称:
$ sudo mkdir /mnt/mydisk
将存储设备挂载到刚刚创建的挂载点:
$ sudo mount /dev/sda1 /mnt/mydisk
验证存储设备是否已成功挂载:
$ ls /mnt/mydisk
设置自动挂载
您可以修改 fstab
文件以定义Raspberry Pi启动时自动挂载存储设备的位置。在 fstab
文件中,磁盘分区由通用唯一标识符(UUID)标识。
获取磁盘分区的UUID:
$ sudo blkid
从列表中找到磁盘分区并记下UUID。(例如,5C24-1453
。)使用命令行编辑器(如nano)打开 fstab 文件:
$ sudo nano /etc/fstab
在 fstab
文件中添加以下行:
UUID=5C24-1453 /mnt/mydisk fstype defaults,auto,users,rw,nofail 0 0
将 fstype
替换为您在执行上述步骤时找到的文件系统类型,例如:ntfs
。
如果文件系统类型是FAT或NTFS,请在 nofail
之后添加, umask=000` -这将允许所有用户对存储设备上的每个文件进行完全读/写访问。
现在您已经在 fstab
中设置了一个存储设备,您可以在连接或不连接存储设备的情况下启动Raspberry Pi。但是在拔下设备之前,您必须关闭Raspberry Pi,或者手动卸载存储设备。
NOTE: 如果您在Raspberry Pi启动时没有连接存储设备,则需要额外的90秒才能启动。您可以通过在 nofail
之后立即添加 x-system.device-timeout=30
来缩短时间。这会将超时更改为30秒,这表示系统在放弃尝试挂载磁盘之前只会等待30秒。
有关每个Linux命令的更多信息,请参阅使用 man
命令的指定手册页。例如, man fstab
。
卸载存储设备
当Raspberry Pi关闭时,系统会负责卸载存储设备,以便安全地拔掉它。如果要手动卸载设备,可以使用以下命令:
$ sudo umount /mnt/mydisk
如果您收到 ‘target is busy’ 的错误,这意味着存储设备正在使用,无法卸载。如果没有显示错误,您现在可以安全地拔掉设备。
处理 target is busy
关闭所有打开存储设备上文件的程序。如果您打开了终端,请确保您不在安装存储设备的目录中,也不在存储设备的子目录中。
如果您仍然无法卸载存储设备,您可以使用 lsof
工具检查设备上哪个程序打开了文件。您需要首先使用 apt
安装 lsof
:
$ sudo apt update
$ sudo apt install lsof
使用lsof:
$ lsof /mnt/mydisk