目录
一、磁盘
1.磁盘结构
1.1物理结构
1.2数据结构
2.1磁盘容量
2.2磁盘接口类型
2.磁盘分区的表示
3.MBR与磁盘分区表示
4.磁盘分区结构
二、文件系统
1、类型
三、命令
1.检测并确认新硬盘
2.创建系统文件(格式化)
2.1mkfs命令
2.2SWAP
3.挂载、卸载文件系统
3.1mount命令
3.2umount命令
3.3设置文件系统的自动挂载
4.查看磁盘使用情况
一、磁盘
1.磁盘结构
1.1物理结构
**盘片:硬盘有多个盘片,每盘片2面
**磁头:每面一个磁头
1.2数据结构
**扇区:盘片被分为多个扇形区域,每个扇区存放512字节的数据,硬盘的最小存储单位
**磁道:同一盘片不同半径的同心圆
**柱面:不同盘片相同半径构成的圆柱面,由同一半径圆的多个磁道组成
2.1磁盘容量
硬盘存储容量=磁头数(8个2进制)×磁道(柱面)数×每道扇区数(6个二进制)×每扇区字节数
(1柱面=512 * 扇区数/磁头数×磁道=512*63*255=7.84M)
可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域
2.2磁盘接口类型
IDE、SATA、SCSI、SAS、光纤通道
2.磁盘分区的表示
Linux中将硬盘、分区等设备均表示为文件
/dev/ sdb5
sd表示SCSI设备
hd表示IDE设备
硬盘的顺序号,以字母a、b、....表示
分区的顺序号,以数字1、2、...示。主分区从1-4, 第一个逻辑分区始终从5开始
3.MBR与磁盘分区表示
主引导记录(MBR:Master Boot Record)
MBR位于硬盘第一个物理扇区处
MBR中包含硬盘的主引导程序和硬盘分区表
分区表有4个分区记录区,每个分区记录区占16个字节
Linux中将硬盘、分区等设备均表示为文件
4.磁盘分区结构
**硬盘中的主分区数目只有4个
**主分区和扩展分区的序号限制在1~4
**扩展分区再分为逻辑分区
**逻辑分区的序号将始终从5开始
二、文件系统
1、类型
XFS文件系统
存放文件和目录数据的分区
高性能的日志型文件系统
Centos 7系统中默认使用的文件系统
(是一种高性能的日志文件系统,特别擅长于处理大文件,可支持上百万T字节的存储空间。由于 XFS文件系统开启日志功能,所以即便发生宕机也不怕数据遭到破坏,这种文件系统可以根据日志记录在短时间内进行数据恢复)
SWAP,交换文件系统
为 Linux 系统建立交换分区
(用于为Linux系统建立交换分区。交换分区的作用相当于虚拟内存,能够在一定程度上缓解物理内存不足的问题。一般建议将交换分区的大小设置为物理内存的1.5~2倍。例如,对于拥有 512MB物理内存的主机,其交换分区的大小建议设置为1024MB。如果服务器的物理内存足够大(如8GB 以上),也可以不设置交换分区。交换分区不用于直接存储用户的文件和目录等数据)
Linux支持的其它文件系统类型
FAT16、FAT32、NTFS
EXT4、JFS..
三、命令
1.检测并确认新硬盘
fdisk -l [磁盘设备] 查看硬盘的整体情况和分区情况
Device | 分区的设备文件名称 |
Boot | 是否是引导分区。若是,则有“*”标识 |
Start | 该分区在硬盘中的起始位置(柱面数) |
End | 该分区在硬盘中的结束位置(柱面数) |
Blocks | 分区的大小,以 Blocks(块)为单位,默认的块大小为 1024 字节 |
Id | 分区对应的系统 ID号。83 表示Linux中的XFS分区或EXT4分区、8e 表示LVM 逻辑卷 |
System | 分区类型。识别到新的硬盘设备后,就可以在该硬盘中建立新的分区了 |
交互模式中常用指令(m、p、n、d、t、w、q)
Command (m for help): m | 输入m指令 | |
a | toggle a bootable flag | 设置可引导标记 |
b | edit bsd disklabel | 修改bsd的磁盘标签 |
c | toggle the dos compatibility flag | 设置DOS操作系统兼容标记 |
d | delete a partition | 删除一个分区 |
l | list known partition types | 显示已知的分区类型,其中82为 Linux swap分区,83为Linux分区 |
m | print this menu | 显示帮助菜单 |
n | add a new partition | 增加一个新的分区 |
o | create a new empty DOS partition table | 创建一个新的空白的DOS分区表 |
p | print the partition table | 显示磁盘当前的分区表 |
q | quit without saving changes | 退出fdisk程序,不保存任何修改 |
s | create a new empty Sun disklabel | 创建一个新的空白的Sun磁盘标签 |
t | change a partition's system id | 改变一个分区的系统号码 |
u | change display/entry units | 改变显示记录单位 |
v | verify the partition table | 对磁盘分区表进行验证 |
w | write table to disk and exit | 保存修改结果并退出fdisk程序 |
x | extra functionality (experts only) | 特殊功能,不建议初学者使用 |
以树形查看磁盘分区
blkid 查看磁盘的UUID 唯一
blkid /dev/sdb1 //查看磁盘分区的UUID
2.创建系统文件(格式化)
2.1mkfs命令
mkfs -t 文件系统类型 分区设备
mkfs -t xfs /dev/sdb1 和 mkfs.xfs /dev/sdb1
2.2SWAP
mkswap 分区设备
mkswap /dev/sdb5 | 创建分区 |
swapon | 是开启swap 注:/dev/sdb2(swap分区) |
swapof | 是关闭swap 注:/dev/sdb2(swap分区) |
swapon -s | 查看每个分区的swap状态信息 |
free -m | 查看总的swap状态信息 |
3.挂载、卸载文件系统
3.1mount命令
挂载文件系统、ISO镜像到指定文件夹
mount [ -t 类型 ] 存储设备 挂载点目录 #用于指定文件系统类型,通常可以省略,由系统自动识别
mount -o loop ISO镜像文件 挂载点目录
-o options 主要用来描述设备或档案的挂接方式 #挂载参数列表,以英文逗号分隔:如用来描述特殊设备,用loop指定
loop:用来把一个文件当成硬盘分区挂接上系统
3.2umount命令
卸载已挂载的文件系统
umount 存储设备位置
umount 挂载点目录
3.3设置文件系统的自动挂载
vi /etc/fstab 配置文件
包含需要开机后自动挂载的文件系统记录
在/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
通过在/etc/fstab 文件中添加相应的挂载配置,可以实现开机后自动挂载指定的分区
4.查看磁盘使用情况
df命令
df [选项] [文件]
选项 | 功能 |
-s | 对每个Names参数只给出占用的数据块总数 |
-a | 递归地显示指定目录中各文件及子目录中各文件占用的数据块数。若既不指定-s,也不指定-a,则只显示Names中的每一个目录及其中的各子目录所占的磁盘块数 |
-k | 以1024字节为单位列出磁盘空间使用情况 |
-x | 跳过在不同文件系统上的目录不予统计 |
-l | 计算所有的文件大小,对硬链接文件则计算多次 |
-i | 显示inode信息而非块使用量 |
-h | 以容易理解的格式印出文件系统大小,例如136KB、24MB、21GB |
-p | 使用POSIX输出格式 |
-T | 显示文件系统类型 |