Linux磁盘管理与文件系统
文章目录
一、硬盘结构
二、MBR与磁盘分区表示
三、磁盘分区结构
四、文件系统类型
●1、XFS文件系统
●2、SWAP,交换文件系统
●3、Linux支持的其他文件系统类型
五、命令部分——检测并确认新硬盘
●1、交互模式中的常用指令
六、新添加硬盘步骤
七、创建分区步骤(p-主分区,e-扩展分区,l-逻辑分区)
八、创建文件系统(格式化)
开始格式化步骤
2、进行挂载
九、创建文件系统swap
●变更硬盘(特别是正在使用的硬盘)的分区设置以后,建议最好将系统重启一次,或者执行“partprobe”命令使操作系统检测新的分区表情况。以防格式化分区时损坏硬盘中已有的数据。
十、挂载、卸载文件系统操作
●1、mount命令——挂载到文件系统、ios镜像到指定文件夹
●2、umount命令——卸载已挂载的文件系统
●3、查看磁盘使用情况
十一、设置文件系统的自动挂载
一、硬盘结构
●硬盘的物理结构
①盘头:硬盘有多个盘片,每盘片两面
②磁头:每面一个磁头
●硬盘的数据结构
①扇区:盘片被分为多个扇形区域,每个扇区存放512字节的数据,是硬盘的最小存储单位
②磁道:同一盘片不同半径的同心圆,是由磁头在盘片表面划出的圆形轨迹
③柱面:不同盘片相同半径构成的圆柱面,由同一半径圆的多个磁道组成‘

●硬盘存储容量=磁头数x磁道(柱面)数x每道扇区数x每扇区字节数(512字节)
●可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域
●磁盘接口类型:
●IDE、SATA、SCSI、SAS、光纤通道
●硬盘的接口种类:
IDE——并口数据线连接主板与硬盘,抗干扰性太差,且排线占用空间较大,不利电脑内部散热,已逐渐被 SATA 所取代。
SATA——抗干扰性强,支持热插拔等功能,速度快,纠错能力强。
SCSI——小型机系统接口,SCSI硬盘广为工作站级个人电脑以及服务器所使用,资料传输时CPU占用率较低,转速快,支持热插拔等。
SAS——是新一代的SCSI技术,和SATA硬盘相同,都是采取序列式技术以获得更高的传输速度,可达到 6Gb/s。
二、MBR与磁盘分区表示
●主引导记录(MBR:Master Boot Record)
①MBR位于硬盘第一个物理扇区处
②MBR中包含硬盘的主引导程序和硬盘分区表
③MBR总共512字节,前446字节是主引导记录,分区表保存在MBR扇区中的第447-512字节中。
④分区表有4个分区记录区,每个分区记录区占16字节。
●主启动记录(MBR)磁盘分区支持最大卷为2.2TB,每个磁盘最多有4个主分区,或3个主分区、1个扩展分区和在扩展分区里面分多个逻辑分区。
三、磁盘分区结构
●硬盘中的主分区数目只有4个
●主分区和扩展分区的序号限制在1~4
●扩展分区再分为逻辑分区
●逻辑分区的序号始终从5开始(1~4始终保留给主分区)
四、文件系统类型
●1、XFS文件系统
①存放文件和目录数据的分区
②高性能的日志型文件系统,特别擅长于处理大文件,可支持上百万TB的存储空间。
③CentOS 7系统中默认使用的文件系统
●2、SWAP,交换文件系统
①为Linux系统建立交换分区(相当虚拟内存,硬盘内存之间相互转换)
②一般设置为物理内存的1.5~2倍
●3、Linux支持的其他文件系统类型
●EXT4、FAT32、NTFS、LVM
五、命令部分——检测并确认新硬盘
●fdisk命令——查看或管理磁盘分区
Device(设备):分区的设备文件名称。
Boot:是否是引导分区。若是,则有“*”标识。
Start:该分区在硬盘中的起始位置(柱面数)。
End:该分区在硬盘中的结束位置(柱面数)。
Blocks:分区的大小,以 Blocks(块)为单位,默认的块大小为 1024 字节。
●Id:分区对应的系统 ID 号。例如,83表示Linux中的XFS分区或EXT4分区、82代表SWAP交换文件系统、8e表示LVM逻辑卷。
System:分区类型。
查看磁盘设备:
可以看到我们只有一块磁盘/dev/sda
管理磁盘设备:

●1、交互模式中的常用指令
① m:获取帮助菜单
② n:新建分区
③ p:查看分区情况
④ d:删除分区
⑤ t:变更分区的类型
⑥ w:保存分区操作并退出
⑦ q:不保存分区操作并退出
六、新添加硬盘步骤
1、关闭虚拟机
2、编辑虚拟机设置

3、点击添加,选择硬盘

4、选择类型SCSI

5、选择创建新虚拟磁盘

6、选择大小60G

7、这个存储位置无需改动,点击完成,开启虚拟机

8、然后我们使用xshell来连接一下,再使用fdisk -l看一下

9、接下来我们创建分区
七、创建分区步骤(p-主分区,e-扩展分区,l-逻辑分区)
n
→ p 主分区、e 扩展分区、l 逻辑分区
——→ 设置分区:1 (范围1-4,如按 Enter 键接受默认值)
————→设置柱面序列:直接按 Enter 键接受默认值
——————→设置分区大小:+20G (指定大小为 20GB,如按 Enter 键接受默认值表示所有空间)
————————→w保存分区操作并退出
1、fdisk /dev/sdb 查看
然后n创建分区,这边告诉我们现在有0个主分区,0个扩展分区,4个空闲可分配分区
2、创建一个主分区

3、输入l可以查看ID号(分区类型)

4、再次输入n进行创建分区,这次我们创建一个扩展分区,并且给它30G

5、然后l创建两个逻辑分区,逻辑分区是从扩展分区里划分的,所以不能超过我们的30G扩展分区,给到一个10G,一个20G,可以看到逻辑分区分区号是以5为起始的


6、我们现在60-10-30=20 ,还剩20G,我就不演示了,之间创建两个主分区了,然后我们 p看一下现在分区情况,确认无误,使用w保存并退出。


7、创建好分区后需要格式化之后才能使用
八、创建文件系统(格式化)
●Make Filesystem ,创建文件系统(格式化)

开始格式化步骤
mkfs -t xfs /dev/sdb1
mkfs.xfs /dev/sdb3
mkfs.xfs /dev/sdb4
mkfs.xfs /dev/sdb5
mkfs.xfs /dev/sdb6


格式好了之后并不能直接使用,还需要挂载,挂载的地方就是挂载点。
2、进行挂载
切换到根目录下创建一个新目录
因为mnt已经被磁盘使用了
然后将/dev/sdb1挂载到/data1


九、创建文件系统swap
mkswap命令
make swap——创建交换文件系统

创建交换文件系统
创建swap之前,目标分区应先通过fdisk 工具将分区类型ID 号设为 82
fdisk /dev/sdb
→t(更改系统分区类型)
——→4(分区序号这里使用4)
————→82(表示swap类型)
1、fdisk /dev/sdb 管理该磁盘

2、t更改系统分区类型,并且选择4号分区

3、这里要输入swap对应的代码,l列举一下

4、根据上图选择代码82,然后p查看分区情况,看到已经更改完成后,w保存操作并退出

5、保存操作退出后,partprobe一下
●变更硬盘(特别是正在使用的硬盘)的分区设置以后,建议最好将系统重启一次,或者执行“partprobe”命令使操作系统检测新的分区表情况。以防格式化分区时损坏硬盘中已有的数据

6、将/dev/sdb4创建成swap分区,并进行启用去查看

十、挂载、卸载文件系统操作
●1、mount命令——挂载到文件系统、ios镜像到指定文件夹

-t:用于指定文件系统类型,通常可以省略,由系统自动识别
-o:挂载参数列表,以英文逗号分隔;如用来描述特殊设备,用loop指定
●2、umount命令——卸载已挂载的文件系统

卸载前提:挂载的设备或者目录没有被在使用中,要先退出挂载目录

-l 表示解除正在繁忙的文件系统
-f 表示强制
●3、查看磁盘使用情况
1.直接 mount 命令

df [选项]


十一、设置文件系统的自动挂载
●/etc/fstab配置文件
包含需要开机后自动挂载的文件系统记录
Linux 操作系统在每次开机时,会自动读取/etc/fstab文件的内容,自动挂载所指定的文件系统。

第1字段:设备名或设备卷标名。
第2字段:文件系统的挂载点目录的位置。
第3字段:文件系统类型,如 xfs、swap 等。
第4字段:挂载参数,即mount命令“-o”选项后可使用的参数。例如,defaults(默认参数)、rw(可读写)、ro(只读)、noexec(禁用执行程序)。
第5字段:表示文件系统是否需要 dump 备份(dump 是一个备份工具)。一般设为1时表示需要,设为0时将被dump 忽略。
第6字段:该数字决定在系统启动时进行磁盘检查的顺序。0表示不进行检查,1表示优先检查,2表示其次检查。根分区应设为 1,其他分区设为 2。
1、vim修改/etc/fstab配置文件
2、我们将sr0和sdb1写入,保存并退出。


3、重启虚拟机

4、查看自动挂载的文件系统记录

Linux磁盘管理与文件系统的更多相关文章
- Linux磁盘管理——日志文件系统与数据一致性
参考:Linux磁盘管理——Ext2文件系统 数据不一致 上图是Ext2结构图,其他FS结构类似. 一般来说,我们将 inode table 与 data block 称为数据区:至于其他例如 sup ...
- 详解Linux磁盘管理与文件系统
磁盘基础 硬盘结构 物理结构 盘片:硬盘有多个盘片,每盘片 2 面. 磁头:每面一个磁头. 数据结构 扇区:磁盘上的每个磁道被等分为若干个弧段,这些弧段便是硬盘的扇区. 硬盘的第一个扇区,叫做引导扇区 ...
- linux 磁盘管理与文件系统
一.磁盘分区的意义 磁盘分区就是为了将磁盘分成不同的逻辑区域,每个分区可以有不同的文件系统 二. 磁盘分区是按照磁盘的柱面进行分区的,由于盘片在转动时的角速度都是一样的,所以磁头在最外层的磁道上读取信 ...
- Linux磁盘管理——Ext2文件系统
前言 通常而言,对于一块新磁盘我们不是直接使用,而是先分区,分区完毕后格式化,格式化后OS才能使用这个文件系统.分区可能会涉及到MBR和GPT问题.至于格式化和文件系统又有什么关系? 这里的格式化指的 ...
- Linux磁盘管理——虚拟文件系统
前言 Linux支持众多文件系统,包括: 传统文件系统:ext2 / minix / MS-DOS / FAT (用 vfat 模块) / iso9660 (光盘)等等:日志式文件系统: ext3 / ...
- Linux磁盘管理——directory tree与mount point
参考:/sys 和 /dev 区别 Linux磁盘管理——虚拟文件系统 Directory tree Linux内的所有数据都是以文件的形态来呈现的,所以整个Linux系统最重要的地方就是direct ...
- linux基础之磁盘管理与文件系统
上面一篇文章(https://www.cnblogs.com/ckh2014/p/7224851.html)介绍了硬盘的基本结构,那么一块磁盘如何应用取存储数据呢? 它的步骤是这样的: 识别硬盘 -- ...
- Linux 磁盘管理
Linux磁盘管理好坏管理直接关系到整个系统的性能问题. Linux磁盘管理常用三个命令为df.du和fdisk. df:列出文件系统的整体磁盘使用量 du:检查磁盘空间使用量 fdisk:用于磁盘分 ...
- df、du、fdisk:Linux磁盘管理三板斧的使用心得(转载)
From:http://os.51cto.com/art/201012/240726_all.htm 作者介绍:李洋(博客),博士毕业于中科院计算所.10多年来一直从事计算机网络信息安全研发工作,曾主 ...
随机推荐
- [LeetCode] 231. 2 的幂
位运算 231. 2 的幂 ``` class Solution { public boolean isPowerOfTwo(int n) { int cnt = 0; while (n>0) ...
- ELK搭建-windows
一.E 二.L 启动 三.K 四.filebeat 五.配置文件使用 1.logstash-sample.conf # Sample Logstash configuration for creati ...
- Unity3d_2018_2019_2020安装包
网上各种注册,官网登陆这么麻烦,留着自用 链接:https://pan.baidu.com/s/1LBtMetnr9xkOa18xYiFoDA 提取码:o01t 链接:https://pan.baid ...
- 插件 ExcelWrite 导出Excel格式数据/获取图层
使用ExcelWrite 插件可以导出Excel格式的数据: ExcelFile端口接 文件数据路径 最后面的是文件名,不用写格式 如果存储树形数据,需要 勾选 List To Row 选项: 附: ...
- 多篇开源CVPR 2020 语义分割论文
多篇开源CVPR 2020 语义分割论文 前言 1. DynamicRouting:针对语义分割的动态路径选择网络 Learning Dynamic Routing for Semantic Segm ...
- nvGRAPH三角形计数和遍历示例
nvGRAPH三角形计数和遍历示例 #include " stdlib.h" #include" inttypes.h" #include" stdi ...
- 一文教会你认识Vuex状态机
摘要:简单来说,Vuex就是实现组件全局状态(数据)管理的一种机制,可以方便的实现组件之间数据的共享. 本文分享自华为云社区<Vuex状态机快速了解与应用>,原文作者:北极光之夜. 一. ...
- java后端知识点梳理——java集合
集合概览 Java中的集合,从上层接口上看分为了两类,Map和Collection.Map是和Collection并列的集合上层接口,没有继承关系. Java中的常见集合可以概括如下. Map接口和C ...
- 使用IDEA创建Maven项目
一.创建一个普通的Maven项目 1.启动IDEA 2.创建一个Maven项目 3.Maven的目录结构 二.使用模板创建一个MavenWeb项目 1.启动IDEA 2.创建一个MavenWeb项目 ...
- CentOS 6.x 安装图形界面
CentOS 6.x 安装图形界面一.首先查看系统的运行级别以及是否安装了桌面环境1.使用命令 runlevel 查看当前系统运行级别[root@42 ~]# runlevelN 32.使用命令 yu ...