物理硬盘 ==> 分区规划 ==> 格式化 ==> 读/写文档

分区 MBR 不大于2TB 传统MBR分区模式 1~4个主分区 //理论上 0~3个主分区+1个扩展分区(n个逻辑分区) //实际上 注意事项 – MBR分区表只能记录4个主分区,编号范围1-4 – 当有必要使用4个以上分区时,需要建立扩展分区(占主分区编号),扩展分区最多只能有1个 – 扩展分区作为一个中间性质的容器,从其中再划分出的分区空间即为逻辑分区 格式化 赋予文件系统 数据在空间中,存储的规则,排列的方式 NTFS(windows 默认) EXT4 RHEL6默认 XFS RHEL7默认 SWAP 虚拟内存 目录结构 / 根目录 :存放所有数据(Linux系统的起点) /dev 设备文件 磁盘表示方式 hd,表示IDE设备 sd,表示SCSI设备 硬盘分区管理 磁道:track 每个磁道 63 个扇区 扇区:sector 每个扇区 512 个字节 磁头:head 柱面:cylinder 柱面大小=磁道容量盘面数量 硬盘总容量=柱面数磁头数单磁道扇区数单个容量扇区大小(一般初始为512字节) MBR/msdos 分区模式 1~4个主分区,或者0~3个主分区+1个扩展分区(n个逻辑分区) 最大支持容量位2.2TB的磁盘 扩展分区不能格式化

一,查看但前有那些磁盘

	[root@localhost ~]# ls /dev/vd*
	/dev/vda  /dev/vda1  /dev/vdb
	[root@localhost ~]# lsblk
	NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
	vda    253:0    0  10G  0 disk 
	└─vda1 253:1    0  10G  0 part /
	vdb    253:16   0  10G  0 disk 

二.如何划分分区 使用fdisk分区工具(之支持MBR) 查看分区 fdisk -l 例:

	[root@localhost ~]# fdisk -l /dev/vdb
	磁盘 /dev/vdb:10.7 GB, 10737418240 字节,20971520 个扇区
	Units = 扇区 of 1 * 512 = 512 bytes
	扇区大小(逻辑/物理):512 字节 / 512 字节
	I/O 大小(最小/最佳):512 字节 / 512 字节

修改硬盘的分区表 fdisk 硬盘设备 例:

	[root@localhost ~]# fdisk /dev/vdb
	欢迎使用 fdisk (util-linux 2.23.2)。
	更改将停留在内存中,直到您决定将更改写入磁盘。
	使用写入命令前请三思。
	Device does not contain a recognized partition table
	使用磁盘标识符 0xada4991d 创建新的 DOS 磁盘标签。
	命令(输入 m 获取帮助):			

常用交互指令 m 列出指令帮助 p 查看现在的分区表 n 新建分区 d 删除分区 q 放弃更改并退出 w 保存更改并退出 例:

	[root@localhost ~]# lsblk
	NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
	vda    253:0    0  10G  0 disk 
	└─vda1 253:1    0  10G  0 part /
	vdb    253:16   0  10G  0 disk 
	├─vdb1 253:17   0   1G  0 part /part1
	├─vdb2 253:18   0   2G  0 part /part2
	└─vdb3 253:19   0   3G  0 part /part3	

三.格式化分区 常用的格式化工具 mkfs 工具集 mkfs.文件系统 分区设备路径 mkfs.ext3 分区设备路径 mkfs.ext4 分区设备路径 mkfs.xfs 分区设备路径 mkfs.vfat -F 32 分区设备路径 例:

	[root@localhost ~]# mkfs.
	mkfs.btrfs   mkfs.ext2    mkfs.ext4    mkfs.minix   mkfs.vfat    
	mkfs.cramfs  mkfs.ext3    mkfs.fat     mkfs.msdos   mkfs.xfs(linux7有)    

四.挂载使用

	[root@localhost ~]# mkdir /part1
	[root@localhost ~]# mkdir /part2
	[root@localhost ~]# mkdir /part3
	[root@localhost ~]# mount /dev/vdb1 /part1
	[root@localhost ~]# mount /dev/vdb2 /part2
	[root@localhost ~]# mount /dev/vdb3 /part3

五.查看挂载使用情况

	[root@localhost ~]# df -h
	文件系统                     容量  已用  可用 已用% 挂载点
	/dev/vda1                     10G  3.1G  6.9G   31% /
	devtmpfs                     906M     0  906M    0% /dev
	tmpfs                        921M   80K  921M    1% /dev/shm
	tmpfs                        921M   17M  904M    2% /run
	tmpfs                        921M     0  921M    0% /sys/fs/cgroup
	172.25.254.254:/home/guests   10G  3.2G  6.9G   32% /home/guests
	/dev/vdb1                    976M  1.3M  908M    1% /part1
	/dev/vdb2                    2.0G  6.0M  1.8G    1% /part2
	/dev/vdb3                    3.0G   33M  3.0G    2% /part3

扩展: 缓解根分区压力 可以将新建一个分区vdb5 mount /dev/vdb5 /mnt cp -r /home/* /mnt/ rm -rf /home/* umount /mnt/ mount /dev/vdb5 /home 六.划分扩展分区

# fdisk  /dev/vdb
   p 查看分区表                 
   n 创建新的分区
      ----->回车---->起始回车----->结束回车  将所有空间给扩展分区

   p 查看分区表
   n 创建新的分区----->起始回车------>结束+1G
   n 创建新的分区----->起始回车------>结束+1G
   p 查看分区表
   w 保存并退出
[root@localhost ~]# ls /dev/vdb*
/dev/vdb  /dev/vdb1  /dev/vdb2  /dev/vdb3
[root@localhost ~]# partprobe 		#刷新分区表
[root@localhost ~]# ls /dev/vdb*
/dev/vdb  /dev/vdb1  /dev/vdb2  /dev/vdb3  /dev/vdb4  /dev/vdb5  /dev/vdb6
[root@localhost ~]# lsblk 
NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda    253:0    0  10G  0 disk 
└─vda1 253:1    0  10G  0 part /
vdb    253:16   0  10G  0 disk 
├─vdb1 253:17   0   1G  0 part /part1
├─vdb2 253:18   0   2G  0 part /part2
├─vdb3 253:19   0   3G  0 part /part3
├─vdb4 253:20   0   1K  0 part 
├─vdb5 253:21   0   1G  0 part 
└─vdb6 253:22   0   1G  0 part

开机自动挂载 /etc/fstab

设备路径  	挂载点 	类型	 参数	 	备份标记	 检测顺序
/dev/vdb3	/part3	xfs	defaults	  0		   0
/dev/vdb2 	/part2 	ext4	defaults	  0		   0
[root@server0 ~]# vi /etc/fstab 
[root@server0 ~]# tail -2 /etc/fstab 
/dev/vdb3 /part3 xfs defaults 0 0
/dev/vdb2 /part2 ext4 defaults 0 0

验证: mount -a 检测/etc/fstab开机自动挂载配置文件,格式是否正确 检测/etc/fstab中,书写完成,但当前没有挂载的设备,进行挂载 df -h 补充: blkid 文件目录 #查看分区UUID

总结 1.lsblk 查看硬盘信息 2.fdisk 分区 3.partprobe 刷新 新的分区表 4.mkfs.xfs 格式化分区 5.mount 挂载测试 6./etc/fstab 开机自动挂载

练习: 划分/dev/vdc[1-3]主分区10G,划分扩展分区,在划分两个逻辑分区10G # fdisk /dev/vdc p 查看分区表
n 创建新的分区 ------>回车--->回车--->回车--->在last结束时+10G
n 创建新的分区 ----->回车---->起始回车----->结束回车 将所有空间给扩展分区 p 查看分区表 n 创建新的分区----->起始回车------>结束+10G p 查看分区表 w 保存并退出

LVM逻辑卷 1.管理分散的空间 2.逻辑卷动态的扩大与缩减 LVM工作方式 零散空间存储 ---> 整合的虚拟磁盘 ---> 虚拟的分区 物理卷PV 卷组VG 逻辑卷LV 首先将众多的物理卷组(PV)成卷组(VG),在从卷组中划分出逻辑卷(LV) LVM管理工具集 scan 扫描 create 创建 display 显示 remove 删除 extends 扩展 一.创建物理卷与卷组 vgcreate 卷组名 空闲分区 lvcreate -L 大小 -n 名称 卷组名

[root@server0 ~]# vgcreate myvg /dev/vdc[1-2]
  Physical volume "/dev/vdc1" successfully created
  Physical volume "/dev/vdc2" successfully created
[root@server0 ~]# pvs			#显示物理卷基本信息
  PV         VG   Fmt  Attr PSize  PFree 
  /dev/vdc1  myvg lvm2 a--  10.00g 10.00g
  /dev/vdc2  myvg lvm2 a--  10.00g 10.00g
[root@server0 ~]# vgs			#显示卷组基本信息
  VG   #PV #LV #SN Attr   VSize  VFree 
  myvg   2   0   0 wz--n- 19.99g 19.99g

二.创建逻辑卷(逻辑卷的大小不能超过卷组) lvcreate -L 逻辑卷大小 - n 逻辑卷的名称 卷组名

	[root@server0 ~]# lvcreate -L 16G -n mylv myvg
	  Logical volume "mylv" created
	[root@server0 ~]# vgs
	  VG   #PV #LV #SN Attr   VSize  VFree
	  myvg   2   1   0 wz--n- 19.99g 3.99g
	[root@server0 ~]# lvs
	  LV   VG   Attr       LSize  Pool Origin Data%  Move Log Cpy%Sync Convert
	  mylv myvg -wi-a----- 16.00g  

三.使用逻辑卷

	[root@server0 ~]# mkfs.ext4 /dev/myvg/mylv 
	[root@server0 ~]# mkdir /lvm
	[root@server0 ~]# vim /etc/fstab 
	...
	/dev/myvg/mylv /lvm ext4 defaults 0 0
	...
	[root@server0 ~]# mount -a
	[root@server0 ~]# df -h

逻辑卷扩展(支持线上操作) lvextend -L 新大小 /dev/卷组名/逻辑卷名 一.卷组有足够的剩余空间 1.直接扩展逻辑卷的空间

	[root@server0 ~]# lvs
	  LV   VG   Attr       LSize  Pool Origin Data%  Move Log Cpy%Sync Convert
	  mylv myvg -wi-a----- 16.00g   
	[root@server0 ~]# lvextend -L 18G /dev/myvg/mylv 
	  Extending logical volume mylv to 18.00 GiB
	  Logical volume mylv successfully resized
	[root@server0 ~]# lvs
	  LV   VG   Attr       LSize  Pool Origin Data%  Move Log Cpy%Sync Convert
	  mylv myvg -wi-ao---- 18.00g      
	[root@server0 ~]# df -h
	文件系统               容量  已用  可用 已用% 挂载点
	/dev/vda1               10G  3.1G  7.0G   31% /
	devtmpfs               906M     0  906M    0% /dev
	tmpfs                  921M   80K  921M    1% /dev/shm
	tmpfs                  921M   17M  904M    2% /run
	tmpfs                  921M     0  921M    0% /sys/fs/cgroup
	/dev/vdb3              3.0G   33M  3.0G    2% /part3
	/dev/vdb2              2.0G  6.0M  1.8G    1% /part2
	/dev/mapper/myvg-mylv   16G   45M   15G    1% /lvm
2.扩展文件系统的大小
	扩展ext4文件系统:resize2fs /dev/myvg/mylv
	
		[root@server0 ~]# resize2fs /dev/myvg/mylv 
		resize2fs 1.42.9 (28-Dec-2013)
		Filesystem at /dev/myvg/mylv is mounted on /lvm; on-line resizing required
		old_desc_blocks = 2, new_desc_blocks = 3
		The filesystem on /dev/myvg/mylv is now 4718592 blocks long.

		[root@server0 ~]# df -h
		文件系统               容量  已用  可用 已用% 挂载点
		/dev/vda1               10G  3.1G  7.0G   31% /
		devtmpfs               906M     0  906M    0% /dev
		tmpfs                  921M   80K  921M    1% /dev/shm
		tmpfs                  921M   17M  904M    2% /run
		tmpfs                  921M     0  921M    0% /sys/fs/cgroup
		/dev/vdb3              3.0G   33M  3.0G    2% /part3
		/dev/vdb2              2.0G  6.0M  1.8G    1% /part2
		/dev/mapper/myvg-mylv   18G   44M   17G    1% /lvm

	扩展xfs文件系统:xfs_growfs /dev/myvg/mylv

二.卷组没有剩余空间 vgextend 卷组名 空闲分区

[root@server0 ~]# vgs
  VG   #PV #LV #SN Attr   VSize  VFree
  myvg   2   1   0 wz--n- 19.99g 1.99g

1.先扩展卷组

	[root@server0 ~]# vgextend myvg /dev/vdc3
	  Physical volume "/dev/vdc3" successfully created
	  Volume group "myvg" successfully extended			

2.扩展逻辑卷的空间 3.扩展文件系统大小

逻辑卷缩减 (运维几乎不用) 先缩减文件系统 在缩减空间

[root@server0 ~]# resize2fs /dev/myvg/mylv 10G
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/myvg/mylv is mounted on /lvm; on-line resizing required
resize2fs: On-line shrinking not supported
[root@server0 ~]# umount /lvm
[root@server0 ~]# resize2fs /dev/myvg/mylv 10G
resize2fs 1.42.9 (28-Dec-2013)
请先运行 'e2fsck -f /dev/myvg/mylv'.
[root@server0 ~]# e2fsck -f /dev/myvg/mylv 
e2fsck 1.42.9 (28-Dec-2013)
第一步: 检查inode,块,和大小
第二步: 检查目录结构
第3步: 检查目录连接性
Pass 4: Checking reference counts
第5步: 检查簇概要信息
/dev/myvg/mylv: 11/1638400 files (0.0% non-contiguous), 146871/6553600 blocks
[root@server0 ~]# resize2fs /dev/myvg/mylv 10G
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/myvg/mylv to 2621440 (4k) blocks.
The filesystem on /dev/myvg/mylv is now 2621440 blocks long.
[root@server0 ~]# mount -a
[root@server0 ~]# df -h
文件系统               容量  已用  可用 已用% 挂载点
/dev/vda1               10G  3.1G  7.0G   31% /
devtmpfs               906M     0  906M    0% /dev
tmpfs                  921M   80K  921M    1% /dev/shm
tmpfs                  921M   17M  904M    2% /run
tmpfs                  921M     0  921M    0% /sys/fs/cgroup
/dev/vdb3              3.0G   33M  3.0G    2% /part3
/dev/vdb2              2.0G  6.0M  1.8G    1% /part2
/dev/mapper/myvg-mylv  9.8G   37M  9.3G    1% /lvm

PE:卷组划分空间的单位,4M(默认) 创建卷组的时候设置PE大小 vgcreate -s PE大小 卷组名 空闲分区 lvcreate -l PE的个数 -n 逻辑卷名 卷组名 RHEL6 CE 请创建一个逻辑卷 大小位250M,名字为lvmtest (因为PE默认时4M 分区只会分给252M )

[root@server0 ~]# vgchange -s 1M myvg 
Volume group "myvg" successfully changed
[root@server0 ~]# vgdisplay
...
 PE Size               1.00 MiB
...
[root@server0 ~]# lvcreate -l 250  -n test myvg 		# 250个PE(1M)
或是	
[root@server0 ~]# lvcreate -L 250M  -n test myvg

管理交换空间 相当于虚拟内存 当物理内存不够用时,使用磁盘空间来模拟内存 在一定成都上缓解内存不足的问题 交换分区:以空闲分区充当的交换空间

	[root@server0 ~]# mkswap /dev/vdc5			#格式化SWAP命令
	正在设置交换空间版本 1,大小 = 10485756 KiB	
	无标签,UUID=7034ba6a-908d-49c3-b213-c75be9c94625
	[root@server0 ~]# swapon /dev/vdc5 			#启动交换空间
	[root@server0 ~]# swapon -s				#查看SWAP状态
	文件名				类型		大小	已用	权限
	/dev/vdc5                              	partition	10485756	0	-1
	[root@server0 ~]# mkswap /dev/vdc6
	[root@server0 ~]# swapon /dev/vdc6
	[root@server0 ~]# swapon -s
	文件名				类型		大小	已用	权限
	/dev/vdc5                              	partition	10485756	0	-1
	/dev/vdc6                              	partition	10485756	0	-2
	[root@server0 ~]# swapoff /dev/vdc5			#停止交换空间
	[root@server0 ~]# swapon -s
	文件名				类型		大小	已用	权限
	/dev/vdc6                              	partition	10485756	0	-1

开机自动挂载

	[root@server0 ~]# vi /etc/fstab
	...
	/dev/vdc5 swap swap defaults 0 0
	...
	[root@server0 ~]# swapon -a				#专用于检测swap分区
	[root@server0 ~]# swapon -s
	文件名				类型		大小	已用	权限
	/dev/vdc5                              	partition	10485756	0	-2
	/dev/vdc6                              	partition	10485756	0	-1	
   使用UUID 完成开机自动挂载
	blkid 文件目录 	#查看设备UUID的信息
	[root@server0 ~]# blkid /dev/vdc6
	/dev/vdc6: UUID="85202124-a90a-4a7b-a2ce-4d2ba6b68d4b" TYPE="swap" 
	[root@server0 ~]# vi /etc/fstab 
	...
	UUID="85202124-a90a-4a7b-a2ce-4d2ba6b68d4b" swap swap defaults 0 0
	...
	[root@server0 ~]# swapon -s				#查看挂载情况
	文件名				类型		大小	已用	权限
	/dev/vdc5                              	partition	10485756	0	-1
	[root@server0 ~]# swapon -a				#挂载
	[root@server0 ~]# swapon -s
	文件名				类型		大小	已用	权限
	/dev/vdc5                              	partition	10485756	0	-1
	/dev/vdc6                              	partition	10485756	0	-2

RAID 磁盘阵列 廉价冗余磁盘阵列(Redundant Arrays of Inexpensive Disks) 通过硬件/软件技术,将多个较小/低速的磁盘整合成一个大磁盘 阵列的价值:提升I/O效率,硬件级别的数据冗余 不同RAID级别的功能,特性个不相同

RAID 0 ,条带模式(至少要两块磁盘) 同一个文档分散存放在不同磁盘 并行写入以提高效率 磁盘存储利用率:100% 缺点:没有可靠性 RAID 1 ,镜像模式(至少要两块磁盘) 一个文档复制成多份,分别写入不同磁盘 多份备份提高可靠性,效率无提升 磁盘存储利用率:<=50% 缺点:效率不高 RAID 5 ,高性价比模式(至少需要三块) #常用 相当于RAID 0 和RAID 1 的折中方案 需要至少一块磁盘的容量来存放校验数据 能够通过校验值和一部份数据推理出缺失的文件 一般买四块 多出的一块做热备份 有一个坏了顶替上 将坏掉的数据移交到其中 磁盘存储利用率:N-1/N RAID 6 高性价比/可靠模式(一般银行用) -相当于扩展的RAID5阵列,提供2份独立校验方案 -需要至少两块磁盘的容量来存放校验数据 磁盘存储利用率:N-2/N RAID 0+1 (先做RAID 0 再作 1 )/RAID 1+0(先做RAID 1 再作 0)(至少四块) 至少要四块 RAID 0+1 底层两两先做RAID 0 然后两两结合 在作RAID 1 -整合RAID 0 ,RAID 1 的优势 -并行存取提高效率,镜像写入提高可靠性 磁盘存储利用率:<=50% RAID阵列实现方式 硬RAID :由RAID控制卡管理阵列 -主板-->阵列卡-->磁盘-->操作系统-->数据 软RAID :由操作系统来管理阵列 -主板 -- > 磁盘 -- > 操作系统 -- > RAID软件 -- >数据