一、磁盘基础
磁盘结构
磁盘的物理结构:
盘片:硬盘又多个盘片,每盘片2面
磁头:每一面一个磁头
硬盘的数据结构:
扇区:盘片被分为多个扇形区域,每个扇区存放512字节的数据
磁道:同一盘片不同半径的同心圆
柱面:不同盘片相同半径构成的圆柱面
硬盘结构
硬盘存储容量=磁头数×磁道(柱面)数×每道扇区数×每扇区字节数
(每个扇区是512字节)
可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域
磁盘接口类型:IDE、STAT(家用电脑)、SCSI、SAS(服务器常用)、光纤通道
服务器硬盘大小
LFF:3.5寸,一般见到的那种台式机的硬盘大小
SFF:2.5寸,注意不同于2.5寸的笔记本硬盘
MBR与磁盘分区表示
主引导记录
MBR位于硬盘的第一个物理扇区处
MBR中包含硬盘的主引导程序和硬盘分区表
分区表有4个分区记录区,每个分区记录区占16个字节
Linux中将硬盘、分区等设备均表示为文件
/dev/hda5
- /dev/:硬件设备文件所在的目录
- hd:表示IDE设备(sd表示scsi设备)
- a:硬盘的顺序号,表示的第几块硬盘,以a、b、c…表示
- 5:分区的顺序号,表示第一块硬盘接口的第五个分区
磁盘分区结构
硬盘中的主分区数目只有4给
主分区和拓展分区的序号限制在1~4
扩展分区再分为逻辑分区
逻辑分区的序号将始终从5开始
文件系统类型(增删改查)
XFS文件系统:
存放文件和目录数据的分区
高性能的日志型文件系统
CentOS7系统中默认使用的文件系统
SWAP,交换文件系统
(相当于Windows系统下的虚拟内存)
- 为Linux系统建立交换分区
- 一般设置为物理内存的1.5~2倍
Linux支持的其他的文件系统类型
FAT16、FAT32、NTFS、
EXT4(CentOS6用的)、JFS
二、管理磁盘及分区
2.1磁盘管理
2.1.1检查并确认新硬盘
fdisk
格式:fdisk -l [磁盘设备]
常用选项:
m 打印出菜单
p 打印出当前分区表
n 新建一个分区
d 删除一个分区
t 改变分区的属性,系统ID
w 保存
q 不保存退出
不重启的情况下识别硬盘:
echo "- - - "> /sys/class/scsi_host/host0/scan
echo "- - - "> /sys/class/scsi_host/host1/scan
echo "- - - "> /sys/class/scsi_host/host2/scan
规划硬盘中的分区
先添加硬盘
然后刷新硬盘
lsblk #查看硬盘
sdb 8:16 0 20G 0 disk
sdc 8:32 0 20G 0 disk
fdisk /dev/sdb #分区
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free) #p主分区e是扩展分区
e extended
Select (default p): #回车默认选p
Using default response p
分区号 (1-4,默认 1): #回车默认1
起始 扇区 (2048-41943039,默认为 2048):#默认回车
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039): +10G
分区 1 已设置为 Linux 类型,大小设为 10 GiB
w 保存
创建文件系统
mkfs
创建文件系统(格式化)
命令格式
mkfs -t 文件系统类型 分区设备
[root@localhost ~]# mkfs.xfs /dev/sdb1
meta-data=/dev/sdb1 isize=512 agcount=4, agsize=655360 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=2621440, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
mount /dev/sdb1 /data #挂载
df查看挂载
/dev/sdb1 10475520 32944 10442576 1% /data
mkswap
创建交换文件系统
mkswap 分区设备
使用t修改交换分区类型 选82 交换分区类型
mkswap /dev/sdc1(设备分区)
free -h 查看
swapon /dev/sdc1(设备分区)
swapoff /dev/adc1
关闭分区
mount
挂载、卸载文件系统
挂载文件系统、IOS镜像到指定文件夹
mount [-t 文件系统类型] 存储设备挂载点
mount -o loop IOS镜像文件 挂载点目录
-
常用选项
-t 用于指定文件系统类型,通常可以省略(由系统自动识别) -0 挂载参数列表,以英文逗号分隔;或用来描述特殊设备,用loop指定。 注意:
1.最好挂空文件,不然文件可能丢失
2.如果挂载目录下,你不能解挂载的
3.不能一个目录挂载多个设备
umount
解挂
格式:
umount 存储设备位置或挂载点
永久挂载
添加硬盘
[root@localhost ~]# echo "- - -"> /sys/class/scsi_host/host0/scan #刷新三个接口 ,硬盘
[root@localhost ~]# echo "- - -"> /sys/class/scsi_host/host1/scan
[root@localhost ~]# echo "- - -"> /sys/class/scsi_host/host2/scan
lsblk
sdb 8:16 0 20G 0 disk
[root@localhost ~]# fdisk /dev/sdb #分区
n新建
p查看
w保存
/dev/sdb1 2048 41943039 20970496 83 Linux
mkfs.xfs /dev/sdb1 #文件系统类型
mount /dev/sdb1 /mnt
umount /mnt/
vim /etc/fstab #永久挂载
/dev/sdb1 /mnt xfs defaults 0 0
mount -a #重新挂载
df -Th
/dev/sdb1 xfs 20G 33M 20G 1% /mnt
reboot #重启