OrangePi KunPengPro | linux系统下挂载U盘

news2024/10/6 18:34:45

OrangePi KunPengPro | linux系统下挂载U盘


时间:2024年6月6日21:32:53

文章目录

  • OrangePi KunPengPro | linux系统下挂载U盘
    • 1.参考
    • 2.操作
      • fdisk -l 列出系统上所有磁盘的分区表信息
      • 将 `/dev/sda1` 分区挂载到 `/mnt/udisk/` 目录
      • 显示文件系统的磁盘空间使用情况
      • 卸载文件系统

1.参考

1.Linux挂载U盘

在Linux下挂载U盘通常使用mount命令。首先,你需要确定U盘的设备名称,这可以通过lsblk或者fdisk -l命令来查看。一旦你知道了U盘的设备名称(比如/dev/sdb1),你可以按照以下步骤来挂载U盘:

创建一个挂载点(即一个目录),你可以选择任何你喜欢的位置,这里我们使用/mnt/usb作为例子:

sudo mkdir /mnt/usb

使用mount命令挂载U盘到你创建的目录:

sudo mount /dev/sdb1 /mnt/usb

替换 /dev/sdb1 为你的U盘设备名称。

现在,你应该可以通过cd /mnt/usb命令进入挂载的U盘,并对其内容进行访问和操作。

如果你想在开机时自动挂载U盘,你可以编辑/etc/fstab文件,并添加类似以下的行:

/dev/sdb1 /mnt/usb auto defaults 0 0

请确保替换/dev/sdb1/mnt/usb为你的U盘设备名称和你想要挂载的目录。


/etc/fstab 是 Linux 和其他类 Unix 系统中的一个重要文件,它包含了系统中存储设备的静态文件系统信息。这个文件用于定义在系统启动时哪些文件系统需要被挂载,以及它们应该挂载到哪个目录,以及挂载选项等。

/etc/fstab 文件中的每一行通常描述了一个文件系统,并且由六个或更多字段组成,这些字段由空格、制表符或逗号分隔。以下是这些字段的通常含义:

  1. 设备文件:这通常是一个块设备的设备文件(如 /dev/sda1)或网络文件系统的挂载点(如 server:/path/to/export)。
  2. 挂载点:文件系统应该被挂载到的目录。
  3. 文件系统类型:要挂载的文件系统的类型(如 ext4, xfs, nfs, vfat 等)。
  4. 挂载选项:这是一个逗号分隔的选项列表,用于控制文件系统的挂载行为。例如,defaults 通常意味着使用默认的挂载选项,而 ro 表示以只读方式挂载。
  5. dump 备份频率:dump 是一个用于备份文件系统的工具。这个字段通常被设置为 01,其中 0 表示不备份,1 表示需要备份。
  6. fsck 检查顺序:fsck 是一个用于检查和修复文件系统的工具。这个字段定义了在系统启动时 fsck 检查文件系统的顺序。根文件系统(通常是 /)应该被设置为 1,而其他文件系统则可以是 2(在根文件系统之后检查)或 0(不检查)。

例如,一个 /etc/fstab 文件中的条目可能如下所示:

/dev/sda1       /           ext4     defaults,noatime       0       1
/dev/sda2       /home       ext4     defaults,noatime       0       2
server:/export  /mnt/export nfs      defaults              0       0

在这个例子中:

  • /dev/sda1 是一个本地设备,它包含了 ext4 文件系统,并被挂载到根目录 /
  • /dev/sda2 是另一个本地设备,它也被格式化为 ext4 文件系统,并被挂载到 /home 目录。
  • server:/export 是一个网络文件系统(NFS),它被挂载到 /mnt/export 目录。

请注意,/etc/fstab 文件的格式必须正确,否则可能会导致系统无法启动或文件系统无法正确挂载。因此,在编辑此文件时要格外小心。

2.操作

请添加图片描述

fdisk -l 列出系统上所有磁盘的分区表信息

在这里插入图片描述

fdisk -l 命令用于列出系统上所有磁盘的分区表信息。当你运行这个命令时,你会看到类似以下的输出(输出内容会根据你的系统和磁盘配置有所不同):

Disk /dev/sda: 256.1 GB, 256060514048 bytes
255 heads, 63 sectors/track, 31130 cylinders, total 500118192 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk label type: dos
Disk identifier: 0x00093632

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048   488396799   244197376   83  Linux
/dev/sda2       488398846   500117503     5859329    5  Extended
/dev/sda5       488398848   498608127     5104640   82  Linux swap / Solaris
/dev/sda6       498609984   500117503      775360   83  Linux

Disk /dev/sdb: 8064 MB, 8064381952 bytes
255 heads, 63 sectors/track, 980 cylinders, total 15746840 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/sdb doesn't contain a valid partition table

在这个例子中:

  • /dev/sda/dev/sdb 是系统上的两块磁盘。
  • /dev/sda 有四个分区:/dev/sda1(一个主分区)、/dev/sda2(一个扩展分区)、/dev/sda5(扩展分区下的一个逻辑分区)和 /dev/sda6(扩展分区下的另一个逻辑分区)。
  • /dev/sda1 被标记为启动分区(由星号 * 表示),并且文件系统类型是 Linux(ID 83)。
  • /dev/sda5 是一个交换分区(ID 82),通常用于系统内存交换。
  • /dev/sdb 看起来没有有效的分区表。

请注意,/dev/sda1 ntfs 14G 12G 2.3G 84% /mnt/udisk 这样的输出并不是 fdisk -l 的直接输出,而是 df 命令的输出,它显示了已挂载文件系统的磁盘空间使用情况。fdisk -l 只会显示磁盘的分区信息,而不会显示文件系统的使用情况。

/dev/sda1 分区挂载到 /mnt/udisk/ 目录

当您运行命令 mount /dev/sda1 /mnt/udisk/ 时,您正在尝试将 /dev/sda1 这个分区挂载到 /mnt/udisk/ 这个目录上。但是,这里有几个要点需要注意:

  1. 目录存在性/mnt/udisk/ 这个目录必须已经存在。如果它不存在,mount 命令会失败。您可以使用 mkdir -p /mnt/udisk/ 来创建这个目录(如果它还不存在的话)。

  2. 文件系统类型/dev/sda1 的文件系统类型必须被您的系统所支持。在您给出的示例中,/dev/sda1 是 ntfs 文件系统,这通常意味着您需要在系统中安装 ntfs-3g 或其他 ntfs 支持的工具才能挂载它。

  3. 挂载选项:在某些情况下,您可能需要指定额外的挂载选项。例如,对于 ntfs 文件系统,您可能想要以只读方式挂载它(使用 -o ro 选项),或者指定其他选项来处理权限、所有权或其他特性。

  4. 权限:挂载文件系统通常需要 root 权限。因此,您可能需要在命令前加上 sudo 来获得必要的权限。

  5. 其他挂载点:请注意,/mnt/udisk/ 目录本身通常不会是一个挂载点,除非您特意创建它作为挂载点。通常,/mnt 目录下会有多个子目录,每个子目录都是一个独立的挂载点。

  6. 挂载冲突:如果 /mnt/udisk/ 已经是一个挂载点,并且已经挂载了其他文件系统,那么尝试再次挂载 /dev/sda1 到同一个目录会导致错误。

  7. 卸载:如果您需要卸载 /dev/sda1,可以使用 umount 命令(同样可能需要 sudo 权限)。

这里是一个完整的示例,展示如何以 root 权限创建一个挂载点并挂载 ntfs 文件系统:

sudo mkdir -p /mnt/udisk/
sudo mount -t ntfs-3g /dev/sda1 /mnt/udisk/

请注意,-t ntfs-3g 选项用于指定文件系统类型为 ntfs-3g,这是 Linux 上常用的 ntfs 读写驱动程序。如果您的系统中没有安装 ntfs-3g,您需要先安装它(例如在基于 Debian 的系统上,可以使用 sudo apt-get install ntfs-3g 来安装)。

显示文件系统的磁盘空间使用情况

在这里插入图片描述
df -Th 命令在 Linux 系统中用于显示文件系统的磁盘空间使用情况,同时包含文件系统类型(Type)和挂载点(Mounted on)的信息。

选项 -T 表示显示文件系统类型,而 -h 表示以人类可读的格式(如 K, M, G)显示大小。

命令的输出可能类似于以下示例:

Filesystem     Type      Size  Used Avail Use% Mounted on
/dev/sda1      ext4       50G   20G   28G  42% /
tmpfs          tmpfs     3.9G   12K  3.9G   1% /dev/shm
/dev/sda5      ext4      200G  150G   41G  79% /home
/dev/sdb1      vfat       32G   16G   15G  52% /mnt/usbdisk

在这个示例中:

  • Filesystem 列显示了文件系统的设备名称或挂载点(如果设备名称太长)。
  • Type 列显示了文件系统的类型,如 ext4(第四代扩展文件系统),tmpfs(临时文件系统),vfat(FAT32 文件系统)等。
  • Size 列显示了文件系统的总大小。
  • Used 列显示了已使用的磁盘空间。
  • Avail 列显示了可用的磁盘空间。
  • Use% 列显示了已使用空间的百分比。
  • Mounted on 列显示了文件系统的挂载点。

通过这个命令,您可以快速了解系统上各个文件系统的磁盘空间使用情况和类型。

卸载文件系统

当您运行命令 umount /mnt/udisk/ 时,您正在尝试卸载(unmount)挂载在 /mnt/udisk/ 目录上的文件系统。但是,有几个注意事项:

  1. 目录正确性:确保您正在尝试卸载的目录是正确的,并且该目录确实是一个挂载点。

  2. 没有其他进程正在使用:如果还有其他进程正在访问该挂载点上的文件或目录,umount 命令可能会失败。您可以使用 lsoftfuser 命令来检查是否有进程正在使用该挂载点。

  3. 权限:通常,卸载文件系统需要 root 权限。因此,您可能需要在命令前加上 sudo 来获得必要的权限。

  4. 正确的挂载点:确保您正在卸载的目录是整个挂载点的根目录。如果您尝试卸载挂载点下的子目录,umount 命令会失败。

  5. 使用 -f 选项(谨慎使用):如果 umount 命令因为某些原因(如进程仍在访问挂载点)而失败,您可以使用 -f 选项来强制卸载。但是,请注意,强制卸载可能会导致数据损坏或文件系统不一致,因此应该谨慎使用。

下面是一个使用 umount 命令的示例,展示如何以 root 权限卸载挂载在 /mnt/udisk/ 上的文件系统:

sudo umount /mnt/udisk/

如果卸载成功,您应该不会再看到 /mnt/udisk/ 目录下的文件或目录(除了可能存在的其他非挂载点文件或目录)。如果卸载失败,umount 命令会输出错误信息,您可以根据这些信息来解决问题。

如果 umount 命令因为其他进程正在使用挂载点而失败,您可以使用 fuser -km /mnt/udisk/ 命令来终止所有正在访问该挂载点的进程,并尝试再次卸载。但是,请确保您知道这些进程是什么,以及终止它们是否安全。

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

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

相关文章

【C++】问题及补充(2)

string s2“hello word”;是怎么进行隐式类型转换的 在这里,"hello world"是一个C字符串常量,而s2是一个std::string类型的变量。当你将C字符串常量赋值给一个std::string类型的变量时,会发生隐式类型转换。编译器会将C字符串常量转…

机器学习笔记 - 本地windows 11 + PyCharm运行stable diffusion流程简述

一、环境说明 硬件:本地电脑windows11、32.0 GB内存、2060的6G的卡。 软件:本地有一个python环境,主要是torch 2.2.2+cu118 二、准备工作 1、下载模型 https://huggingface.co/CompVishttps://huggingface.co/CompVis 进入上面的网址,我这里下载的是这个里面的 …

Go微服务: 分布式Cap定理和Base理论

分布式中的Cap定理 CAP理论 C: 一致性,是站在分布式的角度,要么读取到数据,要么读取失败,比如数据库主从,同步时的时候加锁,同步完成才能读到同步的数据,同步完成,才返回数据给程序&…

【ssh命令】ssh登录远程服务器

命令格式:ssh 用户名主机IP # 使用非默认端口: -p 端口号 ssh changxianrui192.168.100.100 -p 1022 # 使用默认端口 22 ssh changxianrui192.168.100.100 然后输入密码,就可以登录进去了。

多模态vlm综述:An Introduction to Vision-Language Modeling 论文解读

目录 1、基于对比学习的VLMs 1.1 CLIP 2、基于mask的VLMs 2.1 FLAVA 2.2 MaskVLM 2.3 关于VLM目标的信息理论视角 3、基于生成的VLM 3.1 学习文本生成器的例子: 3.2 多模态生成模型的示例: 3.3 使用生成的文本到图像模型进行下游视觉语言任务 4、 基于预训练主干网…

Vue——子级向父级使用props传递数据(函数)

文章目录 前言原理案例效果演示 前言 看到这个标题,相信很多人会说我,你之前博客写的父级向子级中传递数据使用的是props,然后说的子级向父级传递数据则是用的$emit。 并且还说了对于String、数组Array,只能是父级使用props传递…

UE5 Mod Support 思路——纯蓝图

原创作者:Chatouille 核心功能 “Get Blueprint Assets”节点,用于加载未来的mod。用基础类BP_Base扩展即可。打包成补丁,放到Content\Paks目录下,即可让游戏访问到内容。 与文中所写不同的地方 5.1或者5.2开始,打…

音视频开发—V4L2介绍,FFmpeg 打开摄像头输出yuv文件

实验平台:Ubuntu20.04 摄像头:1080P 监控摄像头,采用V4L2驱动框架 文章目录 1.V4L2相关介绍1.1. 基本概念1.2. 主要功能1.3. V4L2驱动框架1.4. 主要组件1.5. 使用V4L2的应用1.6. 常用V4L2工具 2.ffmpeg命令实现打开摄像头输出yuv文件3.使用C…

算法金 | 读者问了个关于深度学习卷积神经网络(CNN)核心概念的问题

​大侠幸会,在下全网同名[算法金] 0 基础转 AI 上岸,多个算法赛 Top [日更万日,让更多人享受智能乐趣] 读者问了个关于卷积神经网络核心概念的问题,如下, 【问】神经元、权重、激活函数、参数、图片尺寸,卷…

Python Excel 指定内容修改

需求描述 在处理Excel 自动化时,财务部门经常有一个繁琐的场景,需要读取分发的Excel文件内容复制到汇总Excel文件对应的单元格内,如下图所示: 这种需求可以延申为,财务同事制作一个模板,将模板发送给各员工,财务同事需收取邮件将员工填写的excel文件下载到本机,再类似…

jenkins的简单使用

2.1.简介 Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。 2.4.Jenkins安装 1.下载安装包jenkins.war; 2.在安装…

夕小瑶:资本寒冬下的AI创业一年

几天前我和几位前大厂朋友约了个饭,朋友纷纷向我透露出一种纠结: “GPT-4o将催生一大波创业机会啊,想离职” “但是现在是资本寒冬啊” “好想像你一样勇敢啊” 说起来这两年的大厂打工人确实比较难,受经济大环境影响&#xff0…

unity中animation和animator在使用上的区别

Animation(动画),可直接存储在物体上的animation组件中 Animation 组件用于在对象上直接存储和播放动画数据。这些数据通常是通过关键帧动画(keyframe animation)制作的,其中包含了对象在不同时间点的变换…

28 - 只出现一次的最大数字(高频 SQL 50 题基础版)

28 - 只出现一次的最大数字 select (selectnumfromMyNumbers group bynum havingcount(num)1order by num desc limit 1) as num;

Vue2自定义拖拽指令-元素拖拽

Vue2自定义拖拽指令-元素拖拽-参数传递 v-canDraghtml部分/src/directive/canDrag/index.js然后注册到vue实例上就OK了 v-canDrag html部分 <template><div class"drag-container"><div class"drag-div" v-canDrag"{callback:callbac…

SQL进阶day11——窗口函数

目录 1专用窗口函数 1.1 每类试卷得分前3名 1.2第二快/慢用时之差大于试卷时长一半的试卷 1.3连续两次作答试卷的最大时间窗 1.4近三个月未完成试卷数为0的用户完成情况 1.5未完成率较高的50%用户近三个月答卷情况 2聚合窗口函数 2.1 对试卷得分做min-max归一化 2.2每份…

贪心算法学习一

例题一 解法&#xff08;贪⼼&#xff09;&#xff1a; 贪⼼策略&#xff1a; 分情况讨论&#xff1a; a. 遇到 5 元钱&#xff0c;直接收下&#xff1b; b. 遇到 10 元钱&#xff0c;找零 5 元钱之后&#xff0c;收下&#xff1b; c. 遇到 20 元钱&#xff1a…

LabVIEW齿轮调制故障检测系统

LabVIEW齿轮调制故障检测系统 概述 开发了一种基于LabVIEW平台的齿轮调制故障检测系统&#xff0c;实现齿轮在恶劣工作条件下的故障振动信号的实时在线检测。系统利用LabVIEW的强大图形编程能力&#xff0c;结合Hilbert包络解调技术&#xff0c;对齿轮的振动信号进行精确分析…

【Linux取经路】网络套接字编程——TCP篇

文章目录 前言十、Tcp Server 端代码10.1 socket、bind10.1 listen——监听一个套接字10.2 accept——获取一个新连接10.3 read——从套接字中读取数据10.4 write——向套接字中进行写入10.5 Tcp Service 端完整代码&#xff08;单进程版&#xff09;10.6 Tcp Server 端代码&am…

C++ 11【右值引用】

&#x1f493;博主CSDN主页:麻辣韭菜&#x1f493;   ⏩专栏分类&#xff1a;C修炼之路⏪   &#x1f69a;代码仓库:C高阶&#x1f69a;   &#x1f339;关注我&#x1faf5;带你学习更多C知识   &#x1f51d;&#x1f51d; 1.C 11 简介 目录 1.C 11 简介 2. 统一的列表…