五、磁盘管理与文件系统

一、磁盘基础

磁盘结构

磁盘的物理结构:

五、磁盘管理与文件系统

五、磁盘管理与文件系统

盘片:硬盘又多个盘片,每盘片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 #重启
上一篇:socket 网络中断


下一篇:解决iOS 15上图标出现对号的问题