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 指定设备的文件系统类型。常用的选项说明有:

参数说明
minixLinux最早使用的文件系统
ext2Linux目前的常用文件系统
msdosMS-DOS 的 FAT
vfatWin85/98 的 VFAT
nfs网络文件系统
iso9660CD-ROM光盘的标准文件系统
ntfsWindows NT的文件系统
hpfsOS/2文件系统。Windows NT 3.51之前版本的文件系统
auto自动检测文件系统

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

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

umount /mnt/usb

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

 

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/746601.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DVWA 靶场搭建

文章目录 环境说明1 DVWA 简介2 DVWA 安装 环境说明 操作系统:Windows 10PHPStudy 版本: 8.1.1.3Apache 版本:2.4.39MySQL 版本 5.7.26 1 DVWA 简介 DVWA(Damn Vulnerable Web App)是一个基于 “PHP MySQL” 搭建的Web应用程序&…

人工智能入门学习笔记2:人工智能发展史

2017年3月5日,中华人民共和国第十二届全国人民代表大会第五次会议上,李克强总理政府工作报告中提出。 2017年12月,人工智能入选“2017年度中国媒体十大流行语”。 入选理由:经过多年的演进,人工智能发展进入了新阶段…

基于微信小程序志愿者报名系统 (后台JSP+JDBC+Mysql)答辩常规问题和如何回答(答辩指导)

博主介绍:黄菊华老师《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者,CSDN博客专家,在线教育专家,CSDN钻石讲师;专注大学生毕业设计教育和辅导。 所有项目都配有从入门到精通的基础知识视频课程&#xff…

Linux多进程中wait()函数学习

wait()函数是Linux/Unix系统里的一个系统级函数&#xff0c;在C语言中通过#include <sys/wait.h>包含该系统调用的头文件。 想要查看如何使用这个函数&#xff0c;可以在终端中输入&#xff1a; man 2 wait如下图&#xff1a; wait系统调用可以让父线程阻塞等待子线程的…

DM数据库安装及使用(Windows、Linux、docker)

Windows 先解压安装包 点击setup安装 下一步 勾选接受然后下一步 下一步 选择典型安装下一步 下一步 搜索DM数据库配置助手然后一直下一步 然后搜索DM管理工具 登录 登录成功 widows版本安装成功 Linux安装 操作系统CPU数据库CentOS7x86_64 架构dm8_20230418_x86_rh6_64 …

liunx安装达梦教程

1.首先用户在安装 DM 之前需要检查或修改操作系统的配置&#xff0c;以保证 DM 正确安装和运行。 标题及下文中提到的 Linux(Unix)&#xff0c;包括 Linux、AIX、HP-UNIX、Solaris 和 FreeBSD 操作系统。以下安装程序说明将以 Red Hat Enterprise Linux 6 for x86-64 系统为…

CSS案例-1.字体样式练习

效果 知识点 字体大小font-size 相对长度单位 说明 em 相对于当前对象内文本的字体尺寸 px 像素,最常用,推荐使用 绝对长度单位 说明 in 英寸 cm 厘米 mm 毫米 pt 点 Unicode字体 字体名称 英文名称 Unicode编码 宋体 SimSun \5B8B\4F53 新宋体 NSimSun \65B0\5B8B\4F53

mac电脑解决无法打开软件

文章目录 报错内容解决方法一方法二方法三 报错内容 macOS无法验证此App是否包含恶意软件。 解决方法一 打开系统偏好设置>安全性与隐私>通用&#xff0c;这个时候有个按钮&#xff0c;“仍然允许”点击即可。 方法二 按住Control键点按应用, 然后打开&#xff0c…

网络编程:TCP和UDP

一、通信模式 1.1 套接字socket 1.网络通信通过套接字进行数据传输 2.socket是一个函数&#xff0c;为通信创建一个端点&#xff0c;并返回该端点的文件描述符 3.套接字本身是一个文件描述符&#xff0c;对应的是一个特殊的文件&#xff0c;该文件描述符维护了两个缓冲区&a…

淘宝详情接口

了解详情获取秘钥 待签名参数:{"uid": "", "ttid": "231200taobao_android_9.16.0", "data": "%7B%22itemNumId%22%3A%22638728868726%22%7D", "lng": "23.366706", "utdid": &qu…

MySQL一些命令记录

查看数据引擎 show engines;创建数据库,并选择库 CREATE DATABASE IF NOT EXISTS test_database; USE test_database;创建表 CREATE TABLE IF NOT EXISTS test_table (id INT AUTO_INCREMENT PRIMARY KEY,field1 VARCHAR(50),field2 VARCHAR(50),field3 VARCHAR(50),field4 …

【计算机网络】集线器

集线器&#xff08;HUB&#xff09;是一种计算机网络设备&#xff0c;用于连接多个计算机或其他网络设备并将它们组成一个局域网。通常是一个小型的硬件设备&#xff0c;包括多个网口&#xff0c;并使用电缆将这些网口连接到其他的网络设备上。 特点 物理层设备&#xff1a; …

PHP中的反序列化漏洞

PHP中的反序列化漏洞 目录 PHP 中的序列化与反序列化 概述 序列化 基本类型的序列化 对象的序列化 反序列化 示例序列化与反序列化 反序列化漏洞 - PHP 中的魔术方法 - Typecho_v1.0 中的反序列化漏洞 POP链的构造思路 pop链案例 反序列化逃逸 字符串逃逸&#xff…

MongoDB聚合运算符:$firstN 的数组操作

文章目录 语法使用举例 $firstN聚合运算符针对数组返回数组的前n个元素 语法 { $firstN: { n: <expression>, input: <expression> } }n为正整数表达式&#xff0c;指定要返回数组的前多少个元素input 为一个数组表达式&#xff0c;返回其前n个元素 使用 $firs…

Linux安装使用one-api 格式访问所有的大模型

One API ✨ 通过标准的 OpenAI API 格式访问所有的大模型&#xff0c;开箱即用 ✨ [!NOTE] 本项目为开源项目&#xff0c;使用者必须在遵循 OpenAI 的使用条款以及法律法规的情况下使用&#xff0c;不得用于非法用途。 根据《生成式人工智能服务管理暂行办法》的要求&#xff…

Android 音频系统

导入 早期Linux版本采用的是OSS框架&#xff0c;它也是Unix及类Unix系统中广泛使用的一种音频体系。 ALSA是Linux社区为了取代OSS而提出的一种框架&#xff0c;是一个源代码完全开放的系统(遵循GNU GPL和GNU LGPL)。ALSA在Kernel 2.5版本中被正式引入后&#xff0c;OSS就逐步…

【Oracle存储过程】几种循环方式总结

一.Oracle的循环 在所有的编程语言中&#xff0c;循环都是一个非常重要的语法&#xff0c;掌握循环&#xff0c;是程序员必不可少的能力。 在Oracle中&#xff0c;常用的有四种循环&#xff0c;loop循环&#xff0c;while循环&#xff0c;for循环和goto循环&#xff0c;在本篇…

代码随想录day20(2)二叉树:完全二叉树节点个数(leetcode222)

题目要求&#xff1a;求一个完全二叉树的节点个数 思路&#xff1a;首先完全二叉树可以用普通二叉树的方法来求&#xff0c;但是需要遍历所有的节点。 但是对于完全二叉树来说&#xff0c;只有最底层右侧的节点可能没满&#xff0c;其余每层节点都达到了最大值。所以我们可以…

智慧城管:街面秩序沿街商铺视频可视化AI智能监管方案

一、背景分析 随着城市化的加速和商业活动的日益繁荣&#xff0c;沿街商铺的管理面临着越来越多的挑战。沿街商户的乱堆乱放、占道经营、违章停车等违法行为&#xff0c;一直以来都是城市管理中的难题。这不仅存在交通安全隐患&#xff0c;也造成了市容秩序混乱&#xff0c;严…

MFMailComposeViewController 发送邮件

通过 MFMailComposeViewController 发送邮件,需预先登录邮箱账号的情况下; 具体实现与配置参数请参考如下: 首先,引入 MFMailComposeViewController 库 #import <MessageUI/MessageUI.h> 其次,实现相关 api 方法 if ([MFMailComposeViewController canSendMail]) {MFM…