1、磁盘结构
磁头:用来写入和读取数据的
磁道:用来存储用户数据,存储计数:最外面同心圆为0磁道
扇区:系统存储最小单位是block,磁盘存储最小单位,默认磁盘扇区从1扇区开始,扇区大小为512字节
柱面:不同盘面上相同的磁道组成(圆柱体)
单元块(Units):表示单个柱面大小
Legacy和UEFI指的是系统引导方式(Legacy为传统BIOS,UEFI为新式BIOS)
MBR和GPT指的是磁盘分区表类型
2、磁盘读取数据原理
2.1 磁盘从0磁道,0磁头,1扇区开始读取——18扇区
2.2 利用电子切换,切换1磁头,0磁道,1扇区开始读取—-18扇区
2.3 利用径向运动,切换磁道,继续寻找磁盘数据
2.1 系统启动引导记录(MBR)
2.2 分区表
一个分区表中包含: 4个主分区,1个扩展分区 ,多个逻辑分区<br /> PS: 扩展分区不能直接使用,需要建立逻辑分区才能使用
3、raid 的配置级别
名称 | 数量 | 容量 | 性能 | 安全性 | 企业场景 |
---|---|---|---|---|---|
raid 0 | 至少2块磁盘 | 所有磁盘容量之和 | 读写效率提高 | 没有冗余 | 没有企业使用raid 0 |
raid 1 | 2的倍数 | 损失一半容量 | 不会有效率提升 | 冗余100% | 存储服务器 数据库服务器 |
raid 5 | 至少3块磁盘 | 单个硬盘容量 *(N-1),N>=3 | 读写效率提高 | 同时最多只能损坏1块盘(有热备盘可以坏两块,但不能同时) | 大部分互联网服务器都会应用,保存视频、大量数据备份 |
raid 10 | 至少4块磁盘,盘数为2的倍数 | 损失一半 | 读写效率提高 | 每组最多损坏1块磁盘 | 数据库服务器,订单交易、数据业务系统 |
raid6 | 至少4块磁盘 | 同时最多允许坏2块盘 | |||
raid50 | 至少6块盘 |
4、磁盘扩容
4.1 磁盘做RAID
4.2 分区
4.2.1 fdisk(磁盘分区<=2T)
参数说明: d delete a partition — 删除一个分区 l list known partition types —- 列出分区类型(8e Linux LVM) m print this menu —- 输出帮助信息 n add a new partition —- 创建新的分区 p print the partition table —- 输出分区信息 q quit without saving changes —- 不做任何改变进行退出 t change a partition’s system id —- 改变分区类型 w write table to disk and exit —- 保存分区配置
1.检查
[root@nfs ~]# lsblk ---确认新生成的盘符
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 50G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 2G 0 part [SWAP]
└─sda3 8:3 0 47G 0 part /
sdb 8:16 0 100G 0 disk
sr0 11:0 1 1024M 0 rom
2.进行分区操作
fdisk /dev/sdb --- 对磁盘进行分区命令
3.创建主分区操作
Command (m for help): n ---创建分区
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p ---创建主分区
Partition number (1-4, default 1): 1 ---指定分区号码
First sector (2048-20479, default 2048): ---回车
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-20479, default 20479): 如 +5G ##指定分区大小,不输表示剩余全部空
Partition 1 of type Linux and of size 5 MiB is set
Command (m for help): n ---创建分区
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p ---创建主分区
Partition number (1-4, default 2): 2 ---指定分区号码
First sector (2048-20479, default 14336): ---回车
Using default value 14336
Last sector, +sectors or +size{K,M,G} (2048-20479, default 20479): 如 +5G ##指定分区大小,不输表示剩余全部空
Partition 1 of type Linux and of size 5 MiB is set
Command (m for help): p ---输出分区信息
Disk /dev/sdb: 10 MB, 10485760 bytes, 20480 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x43a2def7
Device Boot Start End Blocks Id System
/dev/sdb1 2048 12287 5120 83 Linux
/dev/sdb2 14336 20479 3072 83 Linux
Command (m for help): w ##保存分区
4.2.2 parted (磁盘分区大于2T)
- 当一个分区大小超过2T时, 使用GPT来识别大容量磁盘
- GPT格式分区全是主分区,立即保存
[root@133 ~]# parted /dev/sdb ###对/dev下的sdb分区
(parted) mklabel gpt ###将分区设置为gpt格式
(parted) mkpart primary 0 1000G ###创建新的分区(从0到2100G)
(parted) mkpart primary 1000G 2100G ###创建新的分区(从1000G到2100G)
(parted) print ###(显示分区表信息)
(parted) quit ###(退出分区界面)
(parted) rm 4 ###(删除指定分区信息,4为number数)
4.3 格式化,创建文件系统
4.3.1 在格式化前需要执行以下命令
partprobe /dev/sdb ---告知内核系统已经对磁盘进行了分区
4.3.2 做格式化处理
mkfs.xfs /dev/sdb1 ---格式化为XFS格式
mkfs.xfs /dev/sdb2
4.4 磁盘挂载
mkdir /test_one ---创建挂载点
mount /dev/sdb1 /test_one
mount /dev/sdb2 /test_two
4.5 开机自动挂载
vim /etc/fstab
设备文件 挂载点目录 文件系统类型 挂载的参数信息 是否进行备份 是否检查磁盘
/dev/sdc1 /mnt xfs defaults 0 0
mount -a ---确认挂载配置是否正确
6、企业案例
6.1 临时需要添加内存 —-将硬盘空间临时充当内存使用 — swap分区
6.1.1 从磁盘中取出一定空间当内存使用
[root@oldboy ~]# dd if=/dev/zero of=/tmp/1G bs=100M count=10<br /> 10+0 records in<br /> 10+0 records out<br /> 1048576000 bytes (1.0 GB) copied, 25.9294 s, 40.4 MB/s
6.1.2 定义文件可以被swap分区使用
[root@oldboy-xiaodao.com.cn ~]# file /tmp/1G
/tmp/1G: data
[root@oldboy-xiaodao.com.cn ~]# mkswap /tmp/1G
Setting up swapspace version 1, size = 1023996 KiB
no label, UUID=a10ad568-60c9-4311-9e09-e6db844d6130
[root@oldboy-xiaodao.com.cn ~]# file /tmp/1G
/tmp/1G: Linux/i386 swap file (new style), version 1 (4K pages), size 255999 pages, no label, UUID=a10ad568-60c9-4311-9e09-e6db844d6130
6.1.3 让swap分区可以加载swap文件
[root@oldboy-xiaodao.com.cn ~]# swapon /tmp/1G
swapon: /tmp/1G: insecure permissions 0644, 0600 suggested.
[root@oldboy-xiaodao.com.cn ~]# free -h
total used free shared buff/cache available
Mem: 1.9G 99M 734M 9.5M 1.1G 1.7G
Swap: 2.0G 0B 2.0G
6.1.4 将swap空间进行减小
[root@oldboy-xiaodao.com.cn ~]# swapoff /tmp/1G<br /> [root@oldboy-xiaodao.com.cn ~]# free -h<br /> total used free shared buff/cache available<br /> Mem: 1.9G 98M 734M 9.5M 1.1G 1.7G<br /> Swap: 1.0G 0B 1.0G
6.2 光驱挂载
6.2.1 确认设备文件是否存在
[root@oldboy-lidao ~]# ls -l /dev/cdrom
lrwxrwxrwx. 1 root root 3 Jan 2 10:43 /dev/cdrom -> sr0
6.2.2 确认有一个空的目录
6.2.3 进行设备信息挂载
6.2.4卸载挂载
6.2.5 进行挂载检查确认
6.2.6 开机自动挂载
用root用户登录系统(!!!!!!!!!!)
vim /etc/fstab
/dev/cdrom /mnt iso9660 defaults 0 0
7、磁盘管理相关命令
fdisk -l 查看磁盘分区信息
free -h 查询swap分区
blkid 查看设备 uuid
lsblk -f 查看设备 uuid
dd 转换或复制文件