持续创作,加快成长!这是我参加「日新计划 10 月更文应战」的第31天,点击检查活动详情
嵌入式 Linux 入门第九课,了解 linux 下的磁盘办理,学会挂载移动硬盘设备 ......矜辰所造成的
前语
嵌入式 Linux 专栏更新到现在,咱们都还没有碰过开发板,本来想着前面的讲完至少先碰一碰开发板,让咱们知道咱们终究的意图是在开发板上运转 Linux 体系。
可是考虑到触摸开发板的之初,咱们除了看一下开发板的启动流程,还得学一下怎么烧录开发板,而关于初学者来说,相对简略的烧录办法便是运用 SD 卡,所以咱们仍是先来学习一下 Linux 下的磁盘办理。
可是 Linux 下的磁盘办理深入分析的话,其实相对杂乱,内容也比较多,咱们只在于了解一个基本概念,以及学会 U 盘的挂载办法。
那么本文意图便是 了解一下 Linux 下的磁盘办理的基本概念,比如什么是挂载,以及怎么挂载移动硬盘设备。
文章以 Ubuntu 体系为示例阐明 。
我是矜辰所造成的,全网同名,尽量用心写好每一系列文章,不浮夸,不迁就,认真对待学常识的咱们,矜辰所造成的,金石为开!
一、磁盘办理简介
磁盘办理是什么?
咱们在了解的 Windows 下面,硬盘一般都分为 C盘,D盘,E盘等等,咱们能够直接经过计算机办理能够翻开图形话界面的磁盘办理:
上图中 Window 体系中的这些C盘,D盘,是2个不同的分区,其实他们是一个硬盘。
咱们把盘符和硬盘分区树立联络的进程,叫做挂载。
上面把硬盘的第一个分区挂载到 C 盘这个点,分区是操作体系的逻辑概念,事实上硬盘本身是没有分区的。
这么说也有点难以了解,由于在 Windows 下,不需求了解这些东西。
阐明,初学者要明白 Linux 下磁盘办理,可能会有点绕,由于从来没有触摸过的概念,可是有些东西总得记一记,没有为什么,它便是这么定的,你觉得生疏或者难以了解,是由于你初次触摸,习惯了解了就好。
Linux下的磁盘办理,关于初学者作为了解,然后知道什么是挂载,学会怎么挂载新的硬盘为主。
1.1 Linux 下的磁盘办理
所谓磁盘办理,说直白点,无非便是对体系的硬盘进行一些分区处理,把不同的文件放入不同的分区便利办理。
先直接说一下本节重点需求了解的常识点:
Linux 体系中磁盘办理便是将硬盘经过挂载的办法挂载到 Linux 文件体系中。
Linux 磁盘有必要挂载到目录树中的某个具体的目录上才干进行读写操作。
咱们在创建虚拟机的时分,设置了虚拟机的硬盘巨细:
那么其实这个硬盘便是咱们虚拟机的磁盘了,那么关于这个磁盘在咱们的体系中应该能够看见。
那么怎么在 Ubuntu 中怎么能够直观的看到这个硬盘信息呢?
1.2 Linux 查询硬盘信息
Linux 下有多种办法能够查询硬盘的信息,咱们这儿罗列一下:
1、df -h
指令
运用此以可读的格局输出硬盘运用状况:
2、lsblk
指令
只列出硬盘,不列出分区信息:
3、fdisk -l
指令
运用指令前面需求加 sudo
打印硬盘信息:
4、检查/proc/partitions
文件
运用cat /proc/partitions
指令检查文件内容:
上面咱们介绍了 4 种检查硬盘的办法,咱们都能够找到咱们虚拟机开始设定的 100G 的磁盘空间。
在上面检查磁盘的时分,有许多 loop 设备,这些是什么呢,这儿在网上找了一段阐明,供大家参考,这儿不过多阐明:
1.3 根目录与分区
咱们上面已经在知道了怎么检查咱们的磁盘,而且在第一张图咱们能够看到,有一个挂载点的概念:
便是前面提到的:Linux 磁盘分有必要挂载到目录树中的某个具体的目录上才干进行读写操作,这一点记住就行了。
Linux体系的挂载有主动和手动。如果是体系装置的时分创建的分区今后都会主动挂载,而体系运转中临时增加的光盘、U盘、移动硬盘等需求手动挂载。
每次装置体系的时分咱们都会进行分区,Linux下磁盘分区和目录的联系如下:
- 任何一个分区都有必要挂载到某个目录上。
- 目录是逻辑上的区分。分区是物理上的区分。
- 磁盘 Linux 分区都有必要挂载到目录树中的某个具体的目录上才干进行读写操作。
- 根目录是一切Linux的文件和目录所在的地方,需求挂载上一个磁盘分区。
关于普通用户,咱们并不需求关怀分区、盘符,只需求了解曾经咱们讲过的文件体系结构,哪个目录下面存了什么,所以本文并不准备具体阐明 Linux 分区原理,主要学习怎么挂载一个临时增加的 U 盘。
可是关于Linux 的分区原理,大家感兴趣的可自行上网检查。
1.4 磁盘办理相关指令
Linux 磁盘办理常用有三个指令,在上面的文章咱们检查磁盘的时分已经运用过了两个:df
、 fdisk
。
还有一个便是:du
df(英文全称:disk full):列出文件体系的整体磁盘运用量
du(英文全称:disk used):检查磁盘空间运用量
fdisk:用于磁盘分区
这儿指令相关咱们挂载 U 盘其实用不到太深入,需求学习具体的这几个指令,能够自行查找学习,下面在介绍分区的时分也会有示例阐明。
二、磁盘的操作
上面一节简略的描绘了一下 Linux 下的磁盘办理相关常识,可是本文咱们重点要学习的仍是移动盘的操作,比如挂载与分区,这个移动盘包括,U盘,移动硬盘等。
2.1 磁盘的挂载
咱们前面说了 Linux 要读取磁盘数据,首要有必要要挂载,比如在服务器新增加硬盘的时分,需求运用到这个常识,才干把新的硬盘运用上。
这儿咱们运用 U 盘举个比如。
2.1.1 磁盘的文件体系
可是要注意,U盘的文件体系有必要为 FAT32 格局,而不能是 windows 下面的 NTFS 格局,在 Linux 下并不辨认:
测试所用的 U 盘,咱们能够在 windows 下进行格局化,挑选为 FAT32 的文件体系:
格局完毕咱们随便放一下文件到里边进行测试,在 windows 下的看的效果如下:
2.1.2 磁盘在 Linux 体系方位
在用 U 盘衔接到虚拟机之前,咱们先来看看虚拟机中的磁盘,在前面查询硬盘信息的时分,咱们已经知道本来的磁盘姓名为 sda ,只要一个分区为 sda1 ,咱们其实能够直接在 /dev 目录下检查有哪些磁盘:
接下来在 VMware 软件操作,使得 U 盘衔接至虚拟机,我家里这个版别的 VMware 在右上角,可是大多数人用的版别可能在右下角,这个自己找找就能找到:
公司电脑更新一下文章,右下角的状况:
U盘接进来今后,咱们再次检查体系磁盘:
所以 sdb 必定便是咱们这个U盘了,在 Linux 中这个磁盘是一个设备文件,他可不能直接 cd 进去看内容的,咱们要拜访这个 U 盘,就得挂载,
可是在 Linux 体系中,U 盘会主动挂载,图形化界面能够看到 U 盘标识,翻开就能拜访。咱们需求先看一下他是否挂载,然后删去,自己再新建一个文件夹进行挂载。
咱们经过上文介绍的df -h
指令,能够查询一下 Ubuntu 主动把 U 盘挂载的方位:
咱们进入到目录检查一下,公然在这儿能够看到信息:
2.1.3 磁盘挂载与卸载操作
本节就讲一下几个需求掌握可是也相对简略的指令,便是运用mount
指令完成磁盘挂载与卸载,直接用示例阐明。
卸载:
umount <目录途径>
咱们先把上面主动挂载的文件卸载:
然后咱们来挂载,挂载需求树立一个挂载点,便是一个文件夹,咱们依然在 /media/qzh 目录下面新建一个挂载点,咱们换一个姓名:
挂载:
mount <磁盘文件> <挂载点途径>
mount /dev/sdb1 /media/qzh/mydisk
现在目录中为空,咱们运用挂载指令操作,把 U 盘挂载上去:
成功挂载,可是有一个问题,中文乱码?
需求加一个参数:mount -o iocharset=utf8
,操作如下图:
2.2 磁盘的分区
前面咱们就介绍过 fdisk
, fdisk 是 Linux 的磁盘分区表操作东西。
fdisk [-l] <磁盘文件>
咱们直接经过实例阐明,分区之前得卸载:
咱们运用这个东西的时分,会有协助提示,一切的操作其实依据版主提示一步一步进行即可,比如咱们先删去分区。
这儿提一下,删去分区了文件当然是没有了,虽然没格局化之前可能有办法恢复,可是咱们在合理就作为没有了,删去分区操作:
下面咱们开始对U盘进行分区:
咱们能够检查一下结果:
2.3 磁盘的格局化
格局化指令: mkfs
mkfs [-t 文件体系格局] <磁盘文件>
mkfs [options] [-t <type>] [fs-options] <device> [<size>]
mkfs
指令后面 -t 指定格局化的文件格局,那么这儿有个问题,咱们怎么知道这个指令支撑哪些文件格局呢?
2.3.1 支撑的文件体系类型
咱们能够运用 mkfs[Tab][Tab]
指令,便是输入mkfs 后接连按下两次 Tab 按键,终端就会显现所支撑的文件类型:
在上图中 vfat 便是 FAT32 格局的文件体系,咱们为了能在 windows 下也能辨认,咱们格局化为 vfat 文件体系。
2.3.2 格局化
操作如下图:
格局化好了今后,U盘就能够运用了,咱们能够从头挂载运用,或者重启拔插一下,能够在 ubuntu 下面看到一个 U 盘变成了 2个:
咱们断开U盘与虚拟机的链接,在 Windows 下,也能够看到 2 个分区了:
可是这儿额外提一下,传统U盘主控,windows不会辨认第二分区:
到这儿,咱们学会了在 Linux 下的磁盘分区以及格局化。
结语
本文讲述了 Linux 下的磁盘办理相关内容,有一个重要的点有必要要明白: Linux 磁盘有必要挂载到目录树中的某个具体的目录上才干进行读写操作。
然后咱们学习了怎么在 Linux 下面磁盘的挂载、分区以及格局化的办法,3个指令mount
、 fdisk
和mkfs
。
下一篇文章,咱们应该就要开始运用咱们的开发板了,体验一下开发板上的 Linux 是什么一个样子。
好了,本文就到这儿,谢谢大家!