环境准备
在虚拟你添加两块新硬盘然后检查
[root@oldboydu ~]# fdisk -l |grep 'sd[a-z]:'
Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors
Disk /dev/sdb: 106 MB, 106954752 bytes, 208896 sectors
Disk /dev/sdc: 106 MB, 106954752 bytes, 208896 sectors
MBR的含义
Master Boot Record 主引导记录
所在磁盘的位置:磁盘的开头,0磁道 0磁道 1扇区 512字节前446字节
通常称他为0头0道1扇区512字节前446字节
主分区含义
主分区就像windows系统中的c盘d盘e盘
linux系统中的/boot / sawp
一个磁盘里最多只能放4个主分区(必须要有),一个主分区(primary)要占用16个字节分区表
扩展分区
一个磁盘里最多只能放4个主分区,为了满足需求,人们又创造出了扩展分区。扩展分区就相当于给分完主区之后的剩余空间划分了一个区域。扩展分区不能像主分区一样字节访问里面的数据,而是在扩展分区里划分一个逻辑分区,进行存放数据。(数据必须放在扩展分区中的逻辑分区)1个扩展分区也需要占用16个字节分区表
逻辑分区
需要先创建扩展分区,;逻辑分区用于存放数据
硬盘的命名规则
硬盘名字物理硬盘sata /sas/scsi
格式为:/dev/sd??
第一块硬盘/dev/sda
第四块硬盘/dev/sdd
云服务器/dev/vdb
分区名字的命令规则
主分区或扩展分区1-4
/dev/sda1 /dev/sda4
逻辑分区从5开始(>=5)
/dev/sda5
课堂练习练习
第三块sata硬盘的第二个主分区
/dev/sdc2
第6块sas硬盘的第2个逻辑分区
/dev/sdf6
磁盘分区实战
分区命令fdisk常用参数-l查看磁盘分区信息
[root@oldboydu ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
#你进行的修改默认放在内存中,直到你决定保存这些修改的时候
Be careful before using the write command.#保存之前小心点
Device does not contain a recognized partition table#设备没有包含分区表
Building a new DOS disklabel with disk identifier 0x4a8bb0f8.
创建1个主分区
Command (m for help): n ##内置参数n表示创建一个新分区
Partition type: ##分区类型
p primary (0 primary, 0 extended, 4 free) ##主分区
e extended ##扩展分区
Select (default p): p ##default表示默认,直接回车即可
Partition number (1-4, default 1): 1 ##分区号直接回车选择默认的
First sector (2048-208895, default 2048): ##磁盘分区的第一个扇区,默认即可
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-208895, default 208895): +10M ##磁盘分区中的最后一个扇区
Partition 1 of type Linux and of size 10 MiB is set##创建了分区号为1的10M的分区
Command (m for help): p ##显示分区信息
Disk /dev/sdb: 106 MB, 106954752 bytes, 208896 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: 0x4a8bb0f8
Device Boot Start End Blocks Id System
/dev/sdb1 2048 22527 10240 83 Linux
创建1个使用剩余空间的扩展 分区1个20M的逻辑分区
Command (m for help): n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): e
Partition number (2-4, default 2):
First sector (22528-208895, default 22528):
Using default value 22528
Last sector, +sectors or +size{K,M,G} (22528-208895, default 208895):
Using default value 208895
Partition 2 of type Extended and of size 91 MiB is set
Command (m for help): n
Partition type:
p primary (1 primary, 1 extended, 2 free)
l logical (numbered from 5)
Select (default p): l
Adding logical partition 5
First sector (24576-208895, default 24576): p
First sector (24576-208895, default 24576):
Using default value 24576
Last sector, +sectors or +size{K,M,G} (24576-208895, default 208895):
Using default value 208895
Partition 5 of type Linux and of size 90 MiB is set
Command (m for help): p
Disk /dev/sdb: 106 MB, 106954752 bytes, 208896 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: 0x173b799a
Device Boot Start End Blocks Id System
/dev/sdb1 2048 22527 10240 83 Linux
/dev/sdb2 22528 208895 93184 5 Extended
/dev/sdb5 24576 208895 92160 83 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@oldboydu ~]# ll /dev/sdb*
brw-rw---- 1 root disk 8, 16 Apr 30 16:18 /dev/sdb
brw-rw---- 1 root disk 8, 17 Apr 30 16:18 /dev/sdb1
brw-rw---- 1 root disk 8, 18 Apr 30 16:18 /dev/sdb2
brw-rw---- 1 root disk 8, 21 Apr 30 16:18 /dev/sdb5
创建一个分区给所有容量
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):
First sector (2048-208895, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-208895, default 208895):
Using default value 208895
Partition 1 of type Linux and of size 101 MiB is set
Command (m for help): p
Disk /dev/sdb: 106 MB, 106954752 bytes, 208896 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: 0x173b799a
Device Boot Start End Blocks Id System
/dev/sdb1 2048 208895 103424 83 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
格式化磁盘。创建文件系统
[root@oldboydu ~]# mkfs.xfs /dev/sdb1
meta-data=/dev/sdb1 isize=512 agcount=4, agsize=6464 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=25856, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=855, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
临时挂载文件系统
[root@oldboydu ~]# mount /dev/sdb1 /mnt
[root@oldboydu ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 19G 2.8G 17G 15% /
devtmpfs 980M 0 980M 0% /dev
tmpfs 991M 0 991M 0% /dev/shm
tmpfs 991M 9.6M 981M 1% /run
tmpfs 991M 0 991M 0% /sys/fs/cgroup
/dev/sda1 197M 105M 93M 54% /boot
tmpfs 199M 0 199M 0% /run/user/0
/dev/sdb1 98M 5.3M 93M 6% /mnt
永久挂载文件系统
1.放在开机自启动文件中
[root@oldboydu ~]# file /etc/rc.d/rc.local
/etc/rc.d/rc.local: Bourne-Again shell script, ASCII text executable
[root@oldboydu ~]# tail -n1 /etc/rc.d/rc.local
mount /dev/sdb1 /mnt
2.写入开机自动挂载文件中
[root@oldboydu ~]# tail /etc/fstab
# /etc/fstab
# Created by anaconda on Tue Mar 26 20:01:26 2019
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=9af83ace-e895-4a64-9da5-5d168d45632d / xfs defaults 0 0
UUID=0391a758-2054-4fac-b3b2-103a1e8511e0 /boot xfs defaults 0 0
UUID=4e71ff9e-acce-43e7-b73d-0347fe8cdcf9 swap swap defaults 0 0
/dev/sdb1 /date xfs defaul
/etc/fstab文件详解
[root@oldboyedu59 ~]# cat /etc/fstab
UUID=1e827748-cc43-4b1d-8bbc-9a85c239782d / xfs defaults 0 0
UUID=29a4ef75-7502-48df-b31c-c7c10264a7c8 /boot xfs defaults 0 0
UUID=60c45f5e-c78d-41fe-aa92-93d10de6def3 swap swap defaults 0 0
第1列:UUID或设备名称 第2列 第3列 第4列 第5列 第6列
查询系统的磁盘与对应的uuid 挂载点(入口) 文件系统类型 挂载参数 是否进行备份 是否开机自动检查
CentOS7 文件类型默认的是xfs
CentOS6 5 默认 ext系列
磁盘分区的命令
fdisk parted
共同 磁盘分区 磁盘分区
区别 支持2TB以内硬盘 大于2TB磁盘
支持MBR分区表 MBR GPT(支持更大的硬盘和更多的主分区)
parted (实时生效)
p print 显示磁盘信息
mktable mklabel make partition table 创建磁盘分区表 MBR GPT
mkpart make partition 创建磁盘分区
rm 删除磁盘分区
q quit 退出磁盘分区
parted创建分区
[root@oldboydu ~]# parted /dev/sdc
GNU Parted 3.1
Using /dev/sdc
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) p
Error: /dev/sdc: unrecognised disk label#无法识别的磁盘分区表
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 107MB
Sector size (logical/physical): 512B/512B
Partition Table: unknown #未知原因是因为没有创建
Disk Flags:
(parted) mktable gpt #创建磁盘分区表
(parted) p
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 107MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt #分区表类型
Disk Flags:
Number Start End Size File system Name Flags
(parted) mkpart primary 0 10 #创建主分区从头开始到10MB结束
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? i ##警告忽略即可
(parted) p ##再查询就已经创建完毕了
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 107MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 17.4kB 10.0MB 9983kB primary