硬盘的物理结构
硬盘的数据结构
硬盘存储容量=磁头数x磁道(柱面)数x每道扇区数x每扇区字节数(512字节)
可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域
IDE: 并口数据线连接主板与硬盘,抗干扰性太差,且排线占用空间较大,不利电脑内部散热,已逐渐被 SATA 所取代
SATA:抗干扰性强,支持热插拔等功能,速度快,纠错能力强
SCSI:小型机系统接口,SCSI硬盘广为工作站级个人电脑以及服务器所使用,资料传输时CPU占用率较低,转速快,支持热插拔等
SAS:是新一代的SCSI技术,和SATA硬盘相同,都是采取序列式技术以获得更高的传输速度,可达到 6Gb/s
Linux中将硬盘、分区等设备均表示为文件
/dev/sdb5
sd 表示SCSI设备 hd 表示IDE设备
磁盘的顺序号,以字母a、b、c…表示
分区的顺序号,以数字1、2、3…表示
主分区从1-4,第一个逻辑分区始终从5开始
主启动记录(MBR)磁盘分区支持最大卷为2.2TB,每个磁盘最多有4个主分区或3个主分区、1个扩展分区和在扩展分区里面分多给逻辑分区
存放文件和目录数据的分区
EXT4/3、FAT32、NTFS、LVM[逻辑卷|可伸缩的]
查看或管理磁盘分区
fdisk | [选项] | 磁盘设备 |
---|
交互模式中的常用命令
Device(设备):分区的设备文件名称
Boot:是否是引导分区,若是,则有"*"标识
Start:该分区在硬盘中的起始位置(柱面数)
End:该分区在硬盘中结束位置(柱面数)
Blocks:分区的大小,以 Blcoks (块) 为单位,默认的块大小为1024字节
Id:分区对应的系统 ID 号,例如,83表示Linux中的XFS分区或EXT4分区、8e表示LVM逻辑卷
System:分区类型
Make Filesystem 创建文件系统 (格式化)
mkfs | [选项] | 文件系统类型 | 分区设备 |
---|
或者
mkfs.xfs | 文件系统类型 | 分区设备 |
---|
常用选项
-h 显示分区的容量单位
-i 显示分区的inode号码数量
-T 显示文件系统的类型
举例:mkfs -t xfs /dev/sdb
格式化后还需要挂载点
开始挂载
mkdir /data
mount /dev/sdb1/data
mkswap | 分区设备 |
---|
swapon /dev/sdb1 #启用新增加交换分区
swapon -s #查看交换分区
swapoff /dev/sdb1 #关闭指定的交换分区
free -m #查看总的swap状态信息
挂载文件系统、ISO镜像到指定文件夹
mount | [-t类型] | 存储设备 | 挂载点目录 |
---|
mount -o loop ISO镜像文件 挂载点目录
常用选项
-t 用于指定文件类型
-o 挂载参数列表,以英文逗号分割
-a 将/etc/fstab里面的挂载项自动挂载一遍
umount | 存储设备位置 |
---|
或
umount | 挂载点目录 |
---|
常用选项
-if 强制卸载
卸载前提:挂载的设备或者目录没有被使用中如显示 目标忙 则需要先退出当前挂载点目录
没挂载时存放在根目录的文件系统中
挂载后存放在文件系统中而不是目录中
(只是挂载才能在目录里看到里面的文件而已)
blkid | [设备] |
---|
Linux 操作系统在每次开机时,会自动读取/etc/fstab文件的内容,自动挂载所指定的文件系统
vim /etc/fstab
/dev/sdb1 /opt xfs defaults 0 0
/dev/sr0 /mnt iso9660 defaults 0 0
0表示不进行检查、1表示优先检查、2表示其次检查 根分区应设置为1,其他分区设置为2
n
--> p 主分区、e 扩展分区、l逻辑分区
--> 设置分区:1 (范围1-4,如按 Enter 键接受默认值)
--> 设置分区大小:+20G (指定大小为 20GB,如按 Enter 键接受默认值表示所有空间)
--w 保存
fdisk /dev/sdb
给分区设置xfs格式
n p Enterx2 w
fdisk -l
mkfs.xfs -f /dev/sdb1
我该如何选择文件系统类型?
mkdir /data1
mount -t xfs /dev/sdb1 /data1/
vim /etc/fstab
vi /etc/default/useradd
mkdir user.bak
mv /home/cat /user.bak
mount dev/sdb1 /home
mv /user.bak/cat /home
变更硬盘的分区设置以后,建议最好将系统重启一次,或者执行"partprobe"命令使操作系统检测新的分区表情况,以防格式化分区时损坏硬盘中已有的数据
fdisk -l
parted /dev/sdb
mkfs.xfs /dev/sdb1
mkdir /data
mount /dev/sdb1 /data