一 基础知识【可略】
1.1 sudo权限
-
sudo
权限是指在Linux
系统中允许普通用户以超级用户(root)权限执行特定的命令或操作的权限。在大多数Linux发行版中,sudo
是一个用于授权用户执行特权命令的工具。 - 通过给予用户
sudo
权限,系统管理员可以允许普通用户执行需要特权访问的任务,如系统管理、安装软件或修改系统配置文件等。这种方式可以提高系统的安全性,因为只有在需要的时候,普通用户才能获得特权。普通用户在不具备sudo
权限时,无法执行特权操作,并且需要使用root账户或者root
密码来执行这些操作。 -
sudo
权限可以通过将用户添加到sudoers
文件中来分配。sudoers文件规定了哪些用户可以使用sudo命令以及可以以哪些命令和参数运行。只有系统管理员可以编辑sudoers文件或通过其他授权方式来分配sudo
权限。 - 通过
sudo
命令,普通用户可以以root权限或其他授权用户的权限运行命令,只要他们具有相应的sudo
权限。在执行命令时,系统可能会要求用户输入他们自己的密码以验证身份。
1.2 检测USB接口可用状态
- 打开终端:连接到Armbian设备,打开终端窗口。
- 运行lsusb命令:在终端中输入以下命令以列出已连接的USB设备:
- 输出将显示连接到Armbian设备的USB设备的列表,包括设备的供应商ID和产品ID。
- 如果USB设备显示在列表中,表示USB接口正常可用。
lsusb
- 演示:
root@armbian:~# lsusb Bus 001 Device 002: ID ffff:5678 USB Disk 2.0 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
- 结果解释:
- Bus 001: 这表示USB设备所连接的总线编号,通常会有多个总线,此处为总线1。
- Device 002: 这表示该USB设备在总线上的设备编号,此处为设备2。
- ID ffff:5678: 这是USB设备的供应商ID和产品ID。在您的情况下,供应商ID为ffff,产品ID为5678。根据提供的ID,我无法确定这个设备的确切制造商或型号,因为ID “ffff” 通常是一个默认值,可能是因为获取不到正确的供应商ID。
- USB Disk 2.0: 这是关于连接的USB设备的描述信息,它指示此设备是一个USB Disk 2.0。
- Bus 001 Device 001: 这是USB总线的根集线器,它是连接到总线上的USB设备的父节点。
- ID 1d6b:0002: 这是USB总线的根集线器的供应商ID和产品ID。供应商ID为1d6b,产品ID为0002。Linux Foundation是一个开源软件组织,它维护了Linux内核,所以这里显示的是Linux Foundation根集线器。
-
Armbian设备连接了一个具有供应商ID ffff和产品ID 5678的USB Disk 2.0设备。
-
补充:
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
是一个 USB 总线的根集线器。根集线器是 USB 设备连接的起点,它提供了一个物理接口和电源,以使其他 USB 设备能够与计算机进行通信。 -
这个特定的根集线器由 Linux Foundation 开发,用于支持 USB 2.0 规范。它在 USB 总线上起到扩展和管理 USB 设备的作用。
具体的作用包括:- 提供 USB 设备连接点:根集线器提供多个 USB 接口,允许您将其他 USB 设备插入到计算机系统中。
- 电源管理:根集线器为连接到其接口的 USB 设备提供电源。
- 数据传输:根集线器通过 USB 总线传输数据,使连接的 USB 设备能够与计算机之间进行数据交换。
- 设备管理:通过根集线器,操作系统可以识别和管理连接的 USB 设备,从而在计算机上启用适当的驱动程序和功能。
-
总的来说,Linux Foundation 2.0 根集线器是 USB 设备连接的基础,负责提供电源和数据传输功能,以便可以连接其他 USB 设备到计算机系统,并支持操作系统对这些设备的管理和控制。
二 armbian挂载U盘
2.1 需求
- 需求:arm架构低功耗的armbian系统上,如何正常挂载并使用U盘(文件系统为FAT32)保证中文内容正常显示不乱码?
2.2 解决方案
2.2.1 手动挂载
- 注意:建议使用root用户权限进行操作,下述步骤在每次启动后都需要手动执行。
- 插入 U 盘:首先,将 U 盘插入您的系统。
- 显示 U 盘:打开终端,然后使用
lsblk
或fdisk -l
命令,查看所有的块设备和其分区lsblk # 或者 fdisk -l
- 演示
root@armbian:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 1 29.3G 0 disk └─sda1 8:1 1 29.3G 0 part mmcblk1 179:0 0 29.1G 0 disk ├─mmcblk1p1 179:1 0 255M 0 part /boot └─mmcblk1p2 179:2 0 28.9G 0 part / mmcblk1boot0 179:32 0 4M 1 disk mmcblk1boot1 179:64 0 4M 1 disk zram0 254:0 0 1.9G 0 disk [SWAP] zram1 254:1 0 50M 0 disk /var/log
- 具体解释
- 该命令展示系统中所有的块设备及其分区信息,块设备通常包括硬盘,SSD和USB驱动等存储设备。
结果 | 说明 |
---|---|
sda 8:0 1 29.3G 0 disk |
这是一个30GB的USB硬盘(sda )1 表示此设备支持删除标记,0 表示设备没有只读标记8:0 是该设备的主要和次要设备号。 |
└─sda1 8:1 1 29.3G 0 part |
这是该USB硬盘的一个分区(sda1)。它占用了整个USB驱动的30GB空间。 同样, 1 表示支持删除标记,0 表示无只读标记,并且设备号为8:1 。 |
mmcblk1 179:0 0 29.1G 0 disk |
这是一个29.1GB的Flash内存(mmcblk1),一般用于嵌入式系统的存储,这个设备有两个分区。 |
├─mmcblk1p1 179:1 0 255M 0 part /boot |
第一个分区是/boot ,它是启动分区,储存的是启动需要的内核和启动配置文件,大小为255MB。 |
└─mmcblk1p2 179:2 0 28.9G 0 part / |
第二个分区是root,它系统的根分区,存储的是系统和用户的文件,大小为28.9GB。 |
mmcblk1boot0 179:32 0 4M 1 disk 和mmcblk1boot1 179:64 0 4M 1 disk
|
这两个设备是嵌入式多媒体卡(EMMC)的两个特殊引导分区,它们总是只读的,可以被用作启动加载器。 |
zram0 254:0 0 1.9G 0 disk [SWAP] |
这是一个虚拟的RAM磁盘(zram0),大小为1.9GB,被用作swap分区,用来当作虚拟内存使用。 |
zram1 254:1 0 50M 0 disk /var/log |
这也是一个虚拟的RAM磁盘(zram1),大小为50MB,被用为保存日志信息的/var/log 目录。 |
- 查看U盘文件系统类型:使用以下命令查看所选设备的文件系统类型
- **请将
/dev/sdX
替换为实际的U盘设备节点,即第二步输出结果中sda
下的分区名称。
- **请将
sudo file -s /dev/sdX
- 演示:
root@armbian:~# sudo file -s /dev/sda1 /dev/sda1: DOS/MBR boot sector, code offset 0x58+2, OEM-ID “MSDOS5.0”, sectors/cluster 32, reserved sectors 2784, Media descriptor 0xf8, sectors/track 63, heads 255, hidden sectors 64, sectors 61439936 (volumes > 32 MB), FAT (32 bit), sectors/FAT 14992, reserved 0x1, serial number 0x3272a6ee, unlabeled
- 结论:U盘的文件系统被识别为FAT(32位)格式。
- 以下是对输出的解读:
- DOS/MBR boot sector: 指示该分区使用DOS/MBR引导扇区格式。DOS/MBR是一种常见的分区方案,适用于大多数Windows和Linux系统。
- Code offset 0x58+2: 引导代码的偏移量,指示引导代码在引导扇区中的位置。
- OEM-ID “MSDOS5.0”: 指示该分区的OEM标识为"MSDOS5.0",这表示分区可能是在MS-DOS 5.0或类似系统下创建的。
- Sectors/cluster 32: 每个簇占用的扇区数。一个簇是文件系统管理空间的基本单位。
- Reserved sectors 2784: 保留扇区的数量。这些扇区用于存储引导代码和分区表等元数据。
- Media descriptor 0xf8: 媒体描述符,指示分区的媒体类型。0xf8对应于一个标准的硬盘媒体类型。
- Sectors/track 63: 每个磁道的扇区数。磁道是磁盘表面的一个圆环状轨道。
- Heads 255: 磁头的数量。磁头是磁盘驱动器用于读取和写入数据的物理组件。
- Hidden sectors 64: 隐藏扇区的数量。隐藏扇区是指位于分区之前且不可见的扇区数。
- Sectors 61439936: 分区的总扇区数。这确定了分区的大小。
- FAT (32 bit): 文件系统类型为FAT32,这是一种常见的Windows文件系统格式。
- Sectors/FAT 14992: 每个FAT表占用的扇区数。FAT表是FAT文件系统用于存储文件分配信息的数据结构。
- Reserved 0x1: 保留字段的值为0x1,表示保留字段的内容。
- Serial number 0x3272a6ee: 分区序列号。每个分区都有一个唯一的序列号,用于标识分区。
- Unlabeled: 分区没有标签或名称。
- 创建挂载点:
- 在挂载 U 盘之前,需要创建一个挂载点,这是一个目录,用于接入并管理 U 盘的内容。
- 例如,可以创建一个在
/mnt
下的目录作为挂载点。运行以下命令:
sudo mkdir /mnt/usb
- 挂载 U 盘:
- 为了挂载分区并支持中文文件名,需要使用正确的选项挂载文件系统。
- 需要指定文件系统类型(在这种情况下是
vfat
,这是FAT32
文件系统的类型),并且使用iocharset
选项来设置文件名的字符集,这样就能够正确显示中文文件名了。命令如下:
sudo mount -t vfat /dev/xxx /mnt/usb -o iocharset=utf8
- 注意:将
/dev/xxx
替换为在步骤2中找到的 U 盘设备名称。
- 验证挂载:可以使用
df -h
命令来查看文件系统的挂载状态。- 例如:
root@armbian:~# df -h Filesystem Size Used Avail Use% Mounted on udev 1.8G 0 1.8G 0% /dev tmpfs 394M 6.2M 387M 2% /run /dev/mmcblk1p2 29G 2.2G 27G 8% / tmpfs 2.0G 0 2.0G 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 2.0G 8.0K 2.0G 1% /tmp /dev/mmcblk1p1 223M 80M 139M 37% /boot /dev/zram1 49M 2.5M 43M 6% /var/log tmpfs 394M 0 394M 0% /run/user/0 /dev/sda1 30G 64K 30G 1% /mnt/usb
- 使用 U 盘:通过路径
/mnt/usb
访问和使用 U 盘中的文件。
cd /mnt/usb
2.2.2 自动挂载
- 注意:请使用
sudo
访问权限,建议使用root用户身份进行以下操作
- 查看块设备和其分区
lsblk # 或者 fdisk -l
- 演示
root@armbian:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 1 29.3G 0 disk └─sda1 8:1 1 29.3G 0 part mmcblk1 179:0 0 29.1G 0 disk ├─mmcblk1p1 179:1 0 255M 0 part /boot └─mmcblk1p2 179:2 0 28.9G 0 part / mmcblk1boot0 179:32 0 4M 1 disk mmcblk1boot1 179:64 0 4M 1 disk zram0 254:0 0 1.9G 0 disk [SWAP] zram1 254:1 0 50M 0 disk /var/log
- 具体解释
- 该命令展示系统中所有的块设备及其分区信息,块设备通常包括硬盘,SSD和USB驱动等存储设备。
结果 | 说明 |
---|---|
sda 8:0 1 29.3G 0 disk |
这是一个30GB的USB硬盘(sda )1 表示此设备支持删除标记,0 表示设备没有只读标记8:0 是该设备的主要和次要设备号。 |
└─sda1 8:1 1 29.3G 0 part |
这是该USB硬盘的一个分区(sda1)。它占用了整个USB驱动的30GB空间。 同样, 1 表示支持删除标记,0 表示无只读标记,并且设备号为8:1 。 |
mmcblk1 179:0 0 29.1G 0 disk |
这是一个29.1GB的Flash内存(mmcblk1),一般用于嵌入式系统的存储,这个设备有两个分区。 |
├─mmcblk1p1 179:1 0 255M 0 part /boot |
第一个分区是/boot ,它是启动分区,储存的是启动需要的内核和启动配置文件,大小为255MB。 |
└─mmcblk1p2 179:2 0 28.9G 0 part / |
第二个分区是root,它系统的根分区,存储的是系统和用户的文件,大小为28.9GB。 |
mmcblk1boot0 179:32 0 4M 1 disk 和mmcblk1boot1 179:64 0 4M 1 disk
|
这两个设备是嵌入式多媒体卡(EMMC)的两个特殊引导分区,它们总是只读的,可以被用作启动加载器。 |
zram0 254:0 0 1.9G 0 disk [SWAP] |
这是一个虚拟的RAM磁盘(zram0),大小为1.9GB,被用作swap分区,用来当作虚拟内存使用。 |
zram1 254:1 0 50M 0 disk /var/log |
这也是一个虚拟的RAM磁盘(zram1),大小为50MB,被用为保存日志信息的/var/log 目录。 |
- 创建挂载目录:挂载命令本身不会自动创建目录,而是需要确保目录存在,然后才能将文件系统挂载到目录上。
mkdir /mnt/usb
- 这里使用
mkdir /mnt/usb
作为挂载目录
- 这里使用
- 配置自动挂载文件:如果希望系统可以自动挂载 U 盘,需要编辑
/etc/fstab
文件来实现。在文件的末尾添加一行内容,然后保存并退出。# 将一个名为/dev/sda1的vfat文件系统挂载到/mnt/usb目录上的 /dev/sda1 /mnt/usb vfat auto,nofail,noatime,rw,users,iocharset=utf8 0 0
- 重启系统后,U盘会自动挂载到
/mnt/usb
。
下面是各个部分的解释:
-
/dev/sda1
:这是一个设备文件,表示设备sda的第一个分区。- 在Linux中,磁盘设备通常被表示为
/dev/sdX
,其中X是字母a、b、c等来标识不同的设备。数字1表示该设备的第一个分区。
- 在Linux中,磁盘设备通常被表示为
-
/mnt/usb
:文件系统将被挂载的目标目录。在这个命令中,文件系统将会被挂载到/mnt/usb
目录上。 -
vfat
:文件系统类型,表示使用FAT文件系统。FAT是一种常用的文件系统格式,通常在可移动设备(如USB闪存驱动器)上使用。 查看文件系统类型的操作,请参照手动操作中的操作方法 -
auto
:挂载选项,表示自动检测文件系统的类型。 -
nofail
:挂载选项,表示如果无法挂载文件系统,不会导致启动进程失败。这对于可选的文件系统非常有用,以防止系统启动过程因为无法挂载某些驱动器而失败。 -
noatime
:挂载选项,表示不记录文件的访问时间。这可以提高文件系统的性能。 -
rw
:挂载选项,表示将文件系统挂载为可读写模式。这意味着用户可以对文件系统进行读取和写入操作。 -
users
:挂载选项,允许普通用户挂载和卸载文件系统。 -
iocharset=utf8
:挂载选项,表示使用UTF-8字符集处理文件名。[UTF-8是一种通用的字符编码,可以处理各种语言和字符。] - 0:文件系统的备份选项,用于确定何时需要对文件系统进行备份。0表示不进行备份。
- 0:文件系统的检测选项,用于确定在系统引导时是否对文件系统进行检测。0表示不进行检测。
三 armbian取消挂载U盘
- 在拔出USB闪存驱动器(U盘)之前,最好将其卸载(安全卸载或取消挂载),以确保数据写入已完成并避免数据丢失。
- 以下是在Linux系统中卸载U盘的步骤:
-
查找U盘的挂载点:运行以下命令查看已挂载的文件系统列表:
mount
- 在输出结果中找到U盘的挂载点,通常会显示为类似于
/mnt/usb
或/media/username/usb
的路径。
- 在输出结果中找到U盘的挂载点,通常会显示为类似于
-
卸载U盘:使用以下命令卸载U盘。
# 如果U盘已经挂载到其他位置,请根据实际情况更改卸载命令中的路径。 sudo umount /mnt/usb
-
等待卸载完成:在执行卸载命令后,请等待一段时间,确保系统完成卸载操作并释放U盘的使用。文章来源:https://www.toymoban.com/news/detail-558783.html
-
安全拔出U盘:确认U盘已完全卸载后,您可以安全地将其拔出。文章来源地址https://www.toymoban.com/news/detail-558783.html
- 请注意,不要在文件传输过程中拔出U盘,以免损坏数据或文件系统。
到了这里,关于插上U盘,释放你的数据奇才!Armbian系统如何巧妙地挂载U盘?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!