LinuxU盘挂载原理,为什么要用到U盘挂载及实现U盘挂载

目录

一、U盘挂载原理

二、为什么要用到U盘挂载

三、实现U盘挂载

一、准备工作

1、安装gcc

2、下载ntfs-3g

3、解压

4、编译准备

5、编译并安装

二、挂载演示


一、U盘挂载原理

Linux的U盘挂载原理涉及以下几个方面:

  1. 设备识别:当您将U盘插入Linux系统的USB接口时,系统会自动检测并识别该设备。Linux会通过USB子系统与U盘进行通信,并分配一个设备文件来表示U盘,通常以/dev/sdX的形式显示(其中X是字母代表设备号,例如sdb、sdc等)。

  2. 分区和文件系统识别:在设备识别后,Linux会尝试识别U盘上的分区和文件系统类型。通过读取设备的分区表信息,Linux可以确定U盘上的分区数量和位置。然后,它会检测每个分区的文件系统类型,例如FAT32、NTFS、ext4等。

  3. 挂载点创建:在确定U盘上的文件系统后,Linux会创建一个挂载点(mount point),作为U盘在文件系统层次结构中的入口点。挂载点是一个目录,用于将U盘的文件系统添加到系统中,以便访问和操作U盘上的文件。通常,挂载点位于/mnt或/media目录下,但也可以根据需要选择其他位置。

  4. 挂载操作:一旦挂载点创建完成,Linux会使用mount命令将U盘的文件系统挂载到挂载点上。挂载操作将U盘的文件系统与挂载点关联起来,使得U盘上的文件能够在Linux系统中被读取和写入。挂载命令的格式通常为:

    复制代码
    sudo mount /dev/sdX /mnt/usb

    其中/dev/sdX是U盘设备文件,/mnt/usb是挂载点路径。

  5. 文件操作:一旦U盘成功挂载到挂载点上,您就可以通过在文件管理器中导航到挂载点,或者在终端中使用命令行来访问和操作U盘上的文件。您可以复制、移动、编辑和删除文件,就像操作本地文件系统上的文件一样。

  6. 卸载操作:当您不再需要使用U盘时,可以使用umount命令将其从挂载点卸载。卸载操作会断开U盘与挂载点的关联,使其成为一个独立的设备,可以安全地从系统中移除。

总之,Linux的U盘挂载原理涉及设备识别、分区和文件系统识别、挂载点创建、挂载操作以及文件操作等步骤,它允许将U盘的文件系统添加到文件系统层次结构中,以便在Linux系统中访问和操作U盘上的文件。

二、为什么要用到U盘挂载

Linux使用U盘挂载的主要原因是为了访问和操作U盘上的文件和文件系统。当您将U盘插入Linux系统时,系统需要通过挂载的方式将U盘的文件系统添加到文件系统层次结构中,以便将其视为可访问的存储设备。

挂载U盘使您能够在Linux系统中读取和写入U盘上的文件,就像访问计算机硬盘上的文件一样。通过挂载,系统可以识别U盘的分区和文件系统类型,并将其与适当的目录关联起来,以便您可以轻松地在Linux系统中进行文件操作。

另外,通过挂载U盘,您可以将U盘用作数据交换的媒介。您可以将文件从Linux系统复制到U盘,然后将其插入另一台计算机并访问这些文件。这对于在不同系统之间共享文件或备份重要数据非常有用。

总之,挂载U盘是Linux系统中使用外部存储设备的一种常见方式,它允许您方便地访问和管理U盘上的文件和数据。

三、实现U盘挂载

一、准备工作

1、安装gcc

复制代码
yum -y install gcc

2、下载ntfs-3g

**注:**如果想要支持ntfs格式的U盘,则必须安装ntfs-3g。

复制代码
cd /usr/local/src && wget https://tuxera.com/opensource/ntfs-3g_ntfsprogs-2015.3.14.tgz

3、解压

复制代码
tar -zxvf ntfs-3g_ntfsprogs-2015.3.14.tgz

4、编译准备

进入ntfs-3g_ntfsprogs-2015.3.14目录,进行编译

复制代码
./configure

5、编译并安装

复制代码
make && make install

二、挂载演示

1、将U盘插入Linux系统的USB接口

2、运行以下命令之一,以查看系统识别到的U盘设备:

复制代码
# 命令 1
sudo fdisk -l
# 命令 2 
lsblk

3、在输出结果中找到您的U盘设备,通常会以/dev/sdX的形式显示(其中X是字母代表设备号,例如sdb、sdc等),如下图显示为:sdb

4、创建一个用于挂载U盘的目录,在/mnt下创建usb用来挂载

复制代码
cd  /mnt
mkdir usb

5、运行以下命令,将U盘设备挂载到刚才创建的目录:

复制代码
mount -t ntfs-3g /dev/sdb1 /mnt/usb  # FAT32文件系统支持
mount -t vfat /dev/sdb1 /mnt/usb     # NTFS文件系统支持

-t 指定设备的文件系统类型。常用的选项说明有:

参数 说明
minix Linux最早使用的文件系统
ext2 Linux目前的常用文件系统
msdos MS-DOS 的 FAT
vfat Win85/98 的 VFAT
nfs 网络文件系统
iso9660 CD-ROM光盘的标准文件系统
ntfs Windows NT的文件系统
hpfs OS/2文件系统。Windows NT 3.51之前版本的文件系统
auto 自动检测文件系统

6、查看U盘内容,挂载完成

7、要卸载U盘,请运行以下命令:

objectivec 复制代码
umount /mnt/usb

如出现下图中的情况,退出usb目录,重新执行卸载U盘命令即可

注:这只是一个基本的挂载和卸载U盘的过程。在实际操作中,您可能需要根据需要进行其他设置和配置。

相关推荐
一水鉴天19 小时前
整体设计 定稿 之1 devOps 中台的 结论性表述(豆包助手)
服务器·数据库·人工智能
1***y17819 小时前
DevOps在云中的Rancher
运维·rancher·devops
无垠的广袤19 小时前
【工业树莓派 CM0 NANO 单板计算机】本地部署 EMQX
linux·python·嵌入式硬件·物联网·树莓派·emqx·工业物联网
414a19 小时前
LingJing(灵境):Linux Amd64局域网设备访问靶机教程
linux·安全·web安全·网络安全·lingjing·灵境
tianyuanwo19 小时前
多平台容器化RPM构建流水线全指南:Fedora、CentOS与Anolis OS
linux·运维·容器·centos·rpm
BD_Marathon20 小时前
【Zookeeper】CAP理论——CAP介绍
linux·分布式·zookeeper
wasp52020 小时前
做了技术管理后,我发现技术和管理其实可以兼得
java·运维·网络
云和数据.ChenGuang20 小时前
mysqld.service is not a native service问题解决!
运维·nginx·运维技术·运维工程师技术
赖small强21 小时前
【Linux 网络基础】HTTPS 技术文档
linux·网络·https·tls
写代码的学渣21 小时前
ubuntu 22.04 新装的系统 xshell 连不上
linux·运维·ubuntu