磁盘基础
- 检测并确认新硬盘
- 规划硬盘中的分区
- 创建文件系统——格式化
- 挂载、卸载文件系统
硬盘的物理结构
- 盘片:硬盘有多个盘片,每盘片两面
- 磁头:每面一个磁头
硬盘的数据结构
- 扇区:每片被分为多个扇形区域,每个扇区存放512字节的数据
- 磁道:同一个盘片不同半径的同心圆
- 柱面:不同盘片相同半径构成的圆柱面
硬盘存储容量=磁头数x磁道(柱面)数x每道扇区数x每扇区字节数
可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域
磁盘接口类型:IDE、SATA、SCSI、SAS、光前通道
主引导记录(MBR、Master、Boot、Record)
MBR位于硬盘第一个物理扇区处
MBR中包含硬盘的主引导程序和硬盘分区表
分区表有4个分区记录区,每个分区记录区占16个字节
Linux中将硬盘、分区等设备均表示为文件
磁盘分区结构
硬盘中的主分区数目只有4个
主分区和扩展分区的序号限制在1-4
扩展分区再分为逻辑分区
逻辑分区的序号将始终从5开始
文件系统类型
XFS文件系统
存放文件和目录数据的分区
高性能的日志型文件系统
CentOS7系统中默认使用的文件系统
SWAP,交换文件系统(存放临时数据)
为Linux系统建立交换分区
Linux支持的其他文件系统类型
- FAT16
- FAT32
- NTFS
- EXT4
- JFS
检测并确认新硬盘
fdisk命令:查看或管理磁盘分区
fdisk -l [磁盘设备] 或 fdisk [磁盘设备]
交互模式中的常用指令
fdisk -m | 打印这个菜单 |
fdisk-p | 打印分区表 |
fdisk -n | 添加一个分区 |
fdisk -d | 删除分区 |
fdisk -t | 更改分区 |
fdisk -w | 将表写入磁盘并退出 |
fdisk -q | 不保存更改退出 |
创建文件系统mkfs命令
Make Fileystem,创建文件系统(格式化)
mkfs -t 文件系统类型 分区设备
示例:[root@local host~] ls /sbin/mkfs*
[root@local host~]#mkfs -t xfs/dev/sdb1
mkswap命令 makeswap,创建交换文件系统,mkswap分区设备
[root@local host~]#mkswap /dev/sdb5
[root@local host~]#cat /proc/meminfo |grep swap Total
swapTotal:8257532kB
[root@local host~]#swapon /dev/sdb5
[root@local host~]#cat /proc/meminfo |grep swap Total
swap Total:10354680kB
[root@local host~]#swapoff /dev/sdb5
挂载、卸载文件系统
mount 命令 挂载文件系统、ISO镜像到指定文件夹
mount 【-t 类型】存储设备,挂载点目录
mount -o loop ISO镜像文件、挂载点目录
umount 命令,卸载一挂载的文件系统
umount 存储设备文件
umount 挂载点目录
分区挂载流程:
- 若磁盘小于2TB,可用fdisk /dev/sdb进行分区即MBR分区格式
- 若磁盘大于2TB,可用parfed /dev/sdb 进行分区,我们都知道MBR分区磁盘是不能大于2TB,所以超过2TB需要使用GPT分区格式
- 我们先在root模式下用fdisk -l 命令查看挂载的硬盘设备,假设设备号为/dev/sdb,接下来我们使用parted命令来进行GPT分区
- yum install parted -y
- parted /dev/sdb
GNU Parted 1.8.1
- Using /dev/sdb
Welcome to GNU Parted ! Type 'Help' to view a list of conmmark
4.将MBR磁盘分区格式调整为GPT
- (parted) mklabel gpt
5.划分所有控件到一个分区
- (parted)mkpart primary 0-1
- 这一步也可以这样设置:
- unit TB (设置单位为TB)
- mkpart primary 0 3 (设置为一个主分区,大小为3TB,开始是0,结束是3)
6.用parted将分区做好后,进行格式化操作,完成后即可挂载使用
- mkfs.ext4 -F /dev/sdb1
- mkfs -t
- mkfs.xfs
7.最后加入/etc/fstab自动挂载
- vi /etc/fstab
- /dev/sdb1 /data ext4 defaults 0 0
- Linux中常用的文件系统类型 ext4(一般lmux)xfs(centos默认)、swap
LVM逻辑卷与磁盘配额
Logincal Volume Manager,逻辑卷管理
动态调整磁盘容量,从而提高磁盘管理的灵活性
/boot分区用于存放引导文件,不能基于LVM创建
图形界面工具
system-config-lvm
LVM机制的基本概念
- PV(物理卷)——整块磁盘、磁盘分区
- VG(卷组)——将物理卷合并、形成卷组
- LV(逻辑卷)——对卷组进行细化,但不能超过整个卷组容量
整块磁盘/某磁盘的某一分区适合做逻辑卷
主要命令:
功能 | 物理卷管理 | 卷组管理 | 逻辑卷管理 |
scan扫描 | pvscan | vgscan | lvscan |
create建立 | pvcreate | vgcreate | lvcreate |
Display显示 | pvdisplay | vgdisplay | lvdisplay |
Remove删除 | pvremove | vgremove | lvremove |
Extend扩展 | —— | vgextend | lvextend |
Reduce减少 | —— | vgreduce | lvreduce |
LVM的管理命令:
- pvcreate 设备名1 [设备名2 ... ...]
- vgcreate 卷组名 物理卷名1 物理卷名2
- lvcreate -L 容量大小 -n 逻辑卷名 卷组名
- lvextend -L +大小 /dev/卷组名/逻辑卷名
推荐步骤
PV——VG——LV——格式化,挂载使用文件系统
/dev/sdb——/dev/sdb1——mail_storce——/dev/onail_store/mbox——格式化为XFS文
/dev/sdc——/dev/sdc1
件系统,并挂载到/mail/box目录
磁盘配额的条件
需要Linux内核支持
安装xfsprogs与quota软件包
Linux磁盘限额的特点
作用范围:针对指定的文件系统(分区)
限制对象:用户账号、组账号
限制方法:软限制、硬限制
限制类型:磁盘容量、文件数量
以支持配额功能的方式挂载文件系统
- 确保有磁盘限额的软件功能——rpm-q quota若没有,需要rpm安装xfsprogs软件
- 带属性的挂载lvm磁盘
mount -o usrquota grpquota /dev/lvm/cloud /data
mount 这是临时的
永久的 vi /etc/fstab
/dev/lvm/cloud /data xfs defaults,usrquota,grpquota 0 0
mount -a (加载/etc/fstab里面的配置文件内容,不重启下)给data提权
3.编辑用户和组账号的配额配置/限定liming用户lvm磁盘配额
xfs_quota -x -c 'limit -u bsoft=60M bhard=80M isoft=3 ihard=4 liming' /data
-x:专家模式 -c:命令
测试验证效果:
suliming
cd /data
dd if=/dev/zero of=./1.txt bs=110M count=1(创建80M的一个文件)
4.限定ag组用户lvm磁盘配额
groupadd
useradd -g ag lisi
passwd lisi
xfs_quota -x -c 'limit -g bsoft=50M bhard=100M isoft=5 ihard=6 ag' /data
测试验证效果
su lisi
cd /data
dd if=/dev/zero of=./2.txt bs=120M count=1
ls -lh
5.查看磁盘配额使用情况/查看用户、组对某目录的报告
xfs_quota -x -c 'report -u bin' /data
xfs_quota -x -c 'report -g bin' /data
b-block 磁盘容量
i-inode 文件数量