磁盘空间的管理,使用硬盘分为三步:(1)分区;
(2)格式化;
(3)挂载。
1.盘片:硬盘有多个盘片,每盘片有2面(正反两面)
2.磁头:每面一个磁头,并不是只有一个磁头,磁头也不会碰到盘面,磁头等于盘片数量
1.硬盘的数据结构
(1)扇区:盘片被分为多个扇形区域,每个扇区存放512字节的数据(扇区越多容量越大)
(2)磁道:同一盘片不同半径的同心圆
(3)柱面:不同盘片相同半径构成的圆(柱面和磁道数量相同)
2.硬盘的存储容量
(1)硬盘存储容量=磁头数(8个2进制)×磁道(柱面)数×每道扇区数(6个二进制)×每扇区字节数
1柱面=512 * 扇区数/磁头数×磁道=512*63*255=7.84M
(2)可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域
1.接口类型
(1)IDE:133MB/s,并行接口,早期家用电脑
(2)SCSI:640MB/s,并行接口,早期服务器
(3)SATA:6Gbps,SATA数据端口与电源(长的电源,数据线短的)端口是分开的,即需要两条线,一条数据线,一条电源线
(4)SAS:6Gbps,SAS是一整条线,数据端口与电源端口是一体化的,SAS中是包含供电线的,而SATA中不包含供电线。SATA标准其实是SAS标准的一个子集,二者可兼容,SATA硬盘可以插入SAS主板上,反之不行。
(5)M.2:
(6)光纤接口
2.服务器硬盘大小
(1) LFF:3.5寸,一般见到的那种台式机硬盘的大小。
(2) SFF:Small Form Factor 小形状因数,2.5寸,注意不同于2.5寸的笔记本硬盘。
(3)L、S分别是大、小的意思,目前服务器或者盘柜采用sff规格的硬盘主要是考内虑增大单位密度内的磁盘容量、增强散热、减小功耗。
3.机械与固态
(1)机械硬盘(HDD):Hard Disk Drive,即是传统普通硬盘,主要由:盘片,磁头,盘片转轴及控制电机,磁头控制器,数据转换器,接口,缓存等几个部分组成。机械硬盘中所有的盘片都装在一个旋转轴上,每张盘片之间是平行的,在每个盘片的存储面上有一个磁头,磁头与盘片之间的距离比头发丝的直径还小,所有的磁头联在一个磁头控制器上,由磁头控制器负责各个磁头的运动。磁头可沿盘片的半径方向运动,加上盘片每分钟几千转的高速旋转,磁头就可以定位在盘片的指定位置上进行数据的读写操作。数据通过磁头由电磁流来改变极性方式被电磁流写到磁盘上,也可以通过相反方式读取。硬盘为精密设备,进入硬盘的空气必须过滤。
(2)固态硬盘(SSD):Solid State Drive,用固态电子存储芯片阵列而制成的硬盘,由控制单元和存储单 元(FLASH芯片、DRAM芯片)组成。固态硬盘在接口的规范和定义、功能及使用方法上与普通硬盘的 完全相同,在产品外形和尺寸上也与普通硬盘一致 相较于HDD,SSD在防震抗摔、传输速率、功耗、重量、噪音上有明显优势,SSD传输速率性能是HDD 的2倍, 相较于SSD,HDD在价格、容量占有绝对优势。 硬盘有价,数据无价,目前SSD不能完全取代HHD。
1.优化I/O性能
2.实现磁盘空间配额限制
3.提高修复速度
4.隔离系统和程序
5.安装多个OS
6.采用不同文件系统
MBR磁盘采用MBR分区表,由于MBR用4个字节存储分区总扇区数,最大可以表示2的32次方,一个扇区512字节,那么分区的容量或者磁盘容量都不能超过2TB。常见的硬盘可以划分为主分区、扩展分区和逻辑分区,通常情况下主分区只有四个,而 扩展分区可以看成是一个特殊的主分区类型,在扩展分区中可以建立逻辑分区。主分区一般 用来安装操作系统,扩展分区则多用来存储文件数据。
MBR(主引导记录):Master Boot Record,1982年,使用32位表示扇区数,分区不超过2T
1. 446bytes: boot loader 启动相关
2. 64bytes:分区表,其中每16bytes标识一个分区
3.2bytes: 55AA
MBR分区中一块硬盘最多有4个主分区,也可以3主分区+1扩展(N个逻辑分区)
MBR分区:主和扩展分区对应的1--4,/dev/sda3,逻辑分区从5开始,/dev/sda5
硬盘分区有 3 种,分别是主分区、扩展分区和逻辑分区。对于一个硬盘来说,主分区至少有 1 个,最多有 4 个;扩展分区可以没有,最多只能有 1 个,且主分区+扩展分区总共不能超过 4 个;逻辑分区可以有若干个。
主分区可以直接存储数据,扩展分区不可以直接存储数据,还需要再分区。
1.文件系统的组成:
(1)内核中的模块:ext4, xfs, vfat;
(2)Linux的虚拟文件系统:VFS;
(3)用户空间的管理工具:mkfs.ext4, mkfs.xfs,mkfs.vfat。
2.文件系统的概述
文件系统是操作系统用于明确存储设备或分区上的文件的使用方法和数据结构;即在存储设备上组织使用文件的方法。操作系统中负责管理和存储文件信息的软件结构称为文件管理系统,简称文件系统从系统角度来看,文件系统是对文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进 行保护和检索的系统。具体地说,它负责为用户建立文件,存入、读出、修改、转储文件,控制文件的 存取,安全控制,日志,压缩,加密等。
总结:用来管理(增删改查恢复)文件的程序。
3.XFS
(1)根据所记录的日志在很短的时间内迅速恢复磁盘文件内容;
(2)用优化算法,日志记录对整体文件操作影响非常小;
(3)是一个全64-bit的文件系统,最大可以支持8EB的文件系统,1EB=1024PB1PB=1024TB这里才到TB1TB=1024GB;
(4)而支持单个文件则达到8EB能以接近裸设备I/O的性能存储。
4.swap
swap交换分区是系统RAM的补充,swap 分区支持虚拟内存。当没有足够的 RAM 保存系统处理的数据时会将数据写入 swap 分区,当系统缺乏 swap 空间时,内核会因 RAM 内存耗尽而终止进程。配置过多 swap 空间会造成存储设备处于分配状态但闲置,造成浪费,过多 swap 空间还会掩盖内存不足。
5.EXT4
Extended file system 适用于那些分区容量不是太大,更新也不频繁的情况,例如 /boot 分 区是 ext 文件系统的最新版。提供了很多新的特性,包括纳秒级时间戳、创建和使用巨型文件 (16TB)、最大1EB的文件系统,以及速度的提升1EB=1024PB=1024TB。
6.FAT16、FAT32:且最大只能支持32GB分区,单个文件也只能支持最大4GB。
7.NTFS(xfs):NTFS文件系统所具备3个功能:错误预警功能、磁盘自我修复功能和日志功能,单个文件64GB。
1.fdisk
格式:fdisk -l [磁盘设备]
fdisk [磁盘设备]
-m 打印出菜单
-p 打印出当前分区表
-n 新建一个分区
-d 删除一个分区
-t 改变分区的属性,系统ID
-w 保存
-q 不保存退出
2. blkid :可以查看块设备属性信息
3. mkfs:创建文件系统(格式化)常用选项
4.mkswap
swap:特殊的文件系统,缓解内存不足,为了个别应为程序加内存有点浪费添加交换分区的空间。
mkswap + 分区
swapon +分区 开启 -a 全部
swapoff +分区 关闭 -a 全部
5.lsblk
[root@localhost ~]#lsblk -d -o name,rota #查看当前硬盘是什么模式
5.1mount
mount [ -t 类型 ] 存储设备 挂载点目录 mount -o loop ISO镜像文件 挂载点目录
device:指明要挂载的设备
(1)设备文件:例如:/dev/sda5
(2)卷标:-L 'LABEL', 例如 -L 'MYDATA'
(3)UUID: -U 'UUID':例如 -U '0c50523c-43f1-45e7-85c0-a126711d406e'
(4)伪文件系统名称:proc, sysfs, devtmpfs, configfs
mountpoint:挂载点目录必须事先存在,建议使用空目录
挂载规则:
1.一个挂载点同一时间只能挂载一个设备;
2.一个挂载点同一时间挂载了多个设备,只能看到最后一个设备的数据,其它设备上的数据将被隐藏;
3.一个设备可以同时挂载到多个挂载点;
4.通常挂载点一般是已存在空的目录。
选项 | 功能 |
---|---|
rw/ro | 是否对挂载的文件系统拥有读写权限,rw 为默认值,表示拥有读写权限;ro 表示只读权限。 |
async/sync | 此文件系统是否使用同步写入(sync)或异步(async)的内存机制,默认为异步 async。 |
dev/nodev | 是否允许从该文件系统的 block 文件中提取数据,为了保证数据安装,默认是 nodev。 |
auto/noauto | 是否允许此文件系统被以 mount -a 的方式进行自动挂载,默认是 auto。 |
suid/nosuid | 设定文件系统是否拥有 SetUID 和 SetGID 权限,默认是拥有。 |
exec/noexec | 设定在文件系统中是否允许执行可执行文件,默认是允许。 |
user/nouser | 设定此文件系统是否允许让普通用户使用 mount 执行实现挂载,默认是不允许(nouser),仅有 root 可以。 |
defaults | 定义默认值,相当于 rw、suid、dev、exec、auto、nouser、async 这 7 个选项。 |
remount | 重新挂载已挂载的文件系统,一般用于指定修改特殊权限。 |
永久挂载: 需要 将文件写入 /etc/fstab
UUID 可以确保唯一
5.2解挂载
umount 设备名|挂载点
卸载时:可使用设备,也可以使用挂载点
fuser -v MOUNT_POINT
查看正在访问指定文件系统的进程
fuser -km MOUNT_POINT
终止所有在正访问指定的文件系统的进程
实列: