概述
硬盘(Hard Disk Drive,简称HDD)是计算机常用的存储设备之一..
1、硬盘结构
(1)数据结构
- 扇区:磁盘上的每个磁道被等分为若干个弧段,这些弧段便是硬盘的扇区,硬盘的第一个扇区,叫做引导扇区(sector)
- 磁道:当磁盘旋转时,磁头若保持在一个位置上,则每个磁头都会在磁盘表面划出一个圆形轨迹,这些圆形轨迹就叫做磁道(Track)
- 柱面:在有多个盘片构成的盘组中,由不同盘片的面,但出于同一半径圆的多个磁道组成的一个圆柱面(cylinder)
(2)物理结构
- 盘片:硬盘有多个盘片,每盘片2面
- 磁头:每面一个磁头
(3)存储容量
- 硬盘存储容量=磁头数 x 磁道(柱面)数 x 每道扇区数 x 每扇区字节数
- 1扇区=512字节
2、硬盘接口
ATA
:Advanced Technology Attachment,并口数据线连接主板与硬盘,抗干扰性太差,且排线占用空间较大,不利电脑内部散热,已逐渐被SATA所取代SATA
:Serial ATA,串口硬盘,是未来和现在PC机硬盘的主流趋势,抗干扰能力强,支持热插拔等功能,速度快,纠错能力强SCSI
:Small Computer System Interface,SCSI接口具有应用范围广、多任务、带宽大、CPU占用率低,以及热插拔等优点,但较高的价格使得它很难如IDE硬盘般普及,因此SCSI硬盘主要应用于中、高端服务器和高档工作站中SAS
:Serial Attached SCSI,即串行连接SCSI,是新一代的SCSI技术,和现在流行的SATA硬盘相同,都是采用串行技术以获得更高的传输速度,SAS是并行SCSI接口之后开发出的全新接口。此接口的设计是为了改善存储系统的效能、可用性和扩充性,并且提供与SATA硬盘的兼容性- 光纤通道:Fiber Channel,光纤通道硬盘是为提高多硬盘存储系统的速度和灵活性才开发的,它的出现大大提高了多硬盘系统的通信速度。光纤通道的主要特性有:热插拔性、高速带宽、远程连接、连接设备数量大等
3、分区表示
常见的硬盘可以划分为主分区和扩展分区,逻辑分区,主分区只有四个,扩展分区可以看做是特殊的主分区,在扩展分区的基础上创建逻辑分区,例如创建3个主分区,1个扩展分区,而1个扩展分区里又创建了2个逻辑分区,或者4个全部是主分区。 在linux系统中,linux内核读取光驱、硬盘等资源时均通过“设备文件”的形式进行
4、linux中的文件系统类型
EXT4
:第四代扩展文件系统,是linux系统中(7版本以前)默认的文件系统,属于日志型文件系统,特点是保存有磁盘存取记录的日志数据,便于恢复,在存取性能和稳定性方面更加出色XFS
:一种高性能的日志文件系统,也是linux系统(7版本之后)默认的文件系统,特别擅长处理大文件,可支持上百万T字节的存储空间,可在短时间内进行数据恢复SWAP
:交换文件系统,用于为linux系统建立交换分区,相当于虚拟内存,简而言之就是在硬盘上划分一部分容量作为内存来使用,能够在一定程度上缓解物理内存不足的问题,一般建议交换分区的大小设置为物理内存的1.5-2倍。
创建磁盘分区步骤
MBR
分区(使用fdisk
工具)
- 添加并识别硬件设备,添加之后需要重启系统(
fdisk -l
可以看到新加的设备)//lsblk
列出所有可用块设备的信息 - 创建分区并识别分区(
fdisk /dev/sdb
),(partprobe /dev.sdb
)//刷新 - 制作文件系统(
mkfs.ext4 /dev/sdb1
)(mkfs.vfat /dev/sdb6
)(mkfs.xfs /dev/sdb3
) - 制作磁盘标签(
option
) - 创建挂载点(
mkdir /mnt/ext
) - 将分区信息写入文件系统分区表(
vim /etc/fstab
)//可以使用blkid
命令来查看UUID - 挂载文件系统(查看磁盘挂载信息(
df -Th
) mount -a
将未挂载的文件挂载到系统上
SWAP)交换分区
1、概述
当内存不足时,内核会杀死一些进程,为了避免出现死机,一般有两种方法:
- 提升内存容量
- 把硬盘容量拿来当内存使用,就是虚拟内存,当没有办法提升实际内存容量的时候,就需要用到第二种方法,也就是交换分区了
创建swap
格式的磁盘分区
- 在以上操作步骤中第二步,建立好分区,按
t
修改磁盘分区类型,按l
可以查看所有类型 - 制作虚拟内存的命令为
mkswap
。查看虚拟内存空间变化用指令free -m
。开启虚拟内存的指令为swapon -a
,关闭虚拟内存的指令为swapoff
. swap
在永久挂载时,没有挂载点,fstab
文件格式(UUID swap swap defaults 0 0)
制作文件类型的swap
空间
- 查看非临时的剩余空间(
df-Th | gerp -v tmp
) - 制作文件(
dd if=/dev/zero of=/tmp/swap bs=1M count=2048
) - 制作
swap
文件(mkswap /tmp/swap
) - 将分区信息写入文件系统分区表(
vim /etc/fstab
)//文件类型的用绝对路径,系统分区类型的用UUID
- 开启虚拟内存(
swapon -a
) - 查看内存变化(
free -m
)