存储管理(一)


文章目录

  • 存储管理(一)
  • 一、存储管理
  • 1.硬盘
  • 2.区分
  • 硬盘尺寸
  • 插拔方式
  • 硬盘接口
  • IDE和SATA的区别
  • SAS与SCSI的区别
  • 硬盘设备命名
  • HP服务器硬盘
  • 从存储连接方式
  • 从磁盘分区方式区分(MBR和GPT)
  • MBR
  • GPT
  • 二、基本分区
  • 1.首先需要先给虚拟机添加磁盘
  • 2.fdisk(MBR)
  • 3.disk(GPT)
  • 三、fstab开机自动挂载
  • 1./etc/fstab文件实现开机的时候自动挂载
  • 2./etc/rc.d/rc.local开机自动挂载
  • 四、文件系统
  • 1.分类
  • 2.概念
  • 3.理解inode
  • 4.inode的内容
  • 5.查看inode信息
  • 6.EXT
  • 7.XFS



一、存储管理

1.硬盘

硬盘种类

HDD

机械硬盘

SSD

固态

SSD的优势:SSD采用电子存储介质进行数据存储和读取的一种技术,突破了传统机械硬盘的性能瓶颈, 拥有极高的存储性能,被认为是存储技术发展的未来新星。

与传统硬盘相比,SSD固态电子盘具有以下优点:
第一,SSD不需要机械结构,完全的半导体化,不存在数据查找时间、延迟时间和磁盘寻道时间,数据存取速度快。
第二,SSD全部采用闪存芯片,经久耐用,防震抗摔,即使发生与硬物碰撞,数据丢失的可能性也能够降到最小。
第三,得益于无机械部件及闪存芯片,SSD没有任何噪音,功耗低。
第四,质量轻,比常规1.8英寸硬盘重量轻20-30克,使得便携设备搭载多块SSD成为可能。同时因其完全半导体化无结构限制,可根据实际情况设计成各种不同接口、形状的特殊电子硬盘。


2.区分

磁盘

硬盘尺寸

3.5寸 ,2.5寸 ,1.8寸

插拔方式

热插拔,非热插拔

硬盘接口

IDE(已经淘汰—也叫ATA) --—— SATA (Serial ATA)串行的ATA,主流的一种
SCSI(小型计算机的接口–很少了) —— SAS代替了scsi (Serial Attached SCSI) 即串行连接
SCSI ,SAS居多

IDE和SATA的区别

1、接口不同,传输的速率不同。IDE根据规范,最高到133MB/s, 而SATA3.0,串行的IDE接口,可达6Gb/S,速度差距巨大。
2、SATA支持热插拔。
3、SATA与原来的IDE相比,传输更快

SAS与SCSI的区别

1、接口不同;
2、SAS兼容SATA,SCSI不兼容SATA;
3、一个SCSI控制器最多能使用15个设备,而SAS则可以提供支持更多的设备接入

硬盘设备命名

物理硬盘: /dev/sd[a-z]
KVM虚拟化:
/dev/vd[a-z](半虚拟化驱动)
/dev/sd[a-z](全虚拟化驱动)

HP服务器硬盘

/dev/cciss/c0d0p1 //c0第一个控制器, d0第一块磁盘, p1分区1
/dev/cciss/c0d0p2 //c0第一个控制器, d0第一块磁盘, p2分区2

从存储连接方式

本地存储 例如DellR730本地磁盘
外部存储 scsi线 sata线 sas线
网络存储 以太网络(iscsi, glusterFS,ceph) 分布式

从磁盘分区方式区分(MBR和GPT)

MBR

MBR (MSDOS根据分区表来分区的) <2TB
分区工具:fdisk

MBR(Master Boot Record)的意思是“主引导记录,之所以叫“主引导记录”,是因为它是存在于驱动器开始部分的⼀个特殊的启动扇区。这个扇区包含了已安装的操作系统的启动加载器和驱动器的逻辑分区信息。所谓启动加器,是⼀⼩段代码,⽤于加载驱动器上其他分区上更⼤的加载器。如果你安装了Windows,Windows启动加载器的初始信息就放在这个区域⾥——如果MBR的信息被覆盖导致Windows不能启动,你就需要使⽤Windows的MBR修复功能来使其恢复正常。如果你安装了Linux,则位于MBR⾥的通常会是GRUB加载器。

一共可以分4个分区(4个主分区,扩展分区,逻辑分区) 例如: 3主 + 1扩展(n逻辑)
MBR 小于2TB的可以。
一块硬盘最多分4个主分区。

GPT

GPT >2TB和<2TB
分区工具:gdisk(parted—rhel6)

GPT(GUID Partition Table,GUID为全局唯一标识)意为GUID分区表,全局唯一标识分区表

与MBR最大4个分区表项的限制相比,GPT对分区数量没有限制,Windows最大仅支持128个GPT分区,GPT可管理硬盘大小达到了18EB。只有基于UEFI平台的主板才支持GPT分区引导启动。

GPT大于小于2TB都可以。
#注意:从MBR转到GPT,或从GPT转换到MBR会导致数据全部丢失!

二、基本分区

1.首先需要先给虚拟机添加磁盘

[root@qfedu.com ~]# ll /dev/sd*
brw-rw----. 1 root disk 8, 0 Nov 7 23:15 /dev/sda
brw-rw----. 1 root disk 8, 1 Nov 7 23:15 /dev/sda1
brw-rw----. 1 root disk 8, 2 Nov 7 23:15 /dev/sda2
brw-rw----. 1 root disk 8, 16 Nov 7 23:15 /dev/sdb
brw-rw----. 1 root disk 8, 32 Nov 7 23:15 /dev/sdc
[root@qfedu.com ~]# lsblk #查看磁盘设备
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─centos-root 253:0 0 17G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 10G 0 disk
sdc 8:32 0 8G 0 disk

2.fdisk(MBR)

MBR 4个分区(4个主分区,扩展分区,逻辑分区)

[root@qfedu.com ~]# fdisk -l /dev/sdb #查看磁盘分区信息
[root@qfedu.com ~]# fdisk /dev/sdb #针对MBR格式,创建分区
m 查看帮助
n 新建分区
Partition type: p 新建主分区
p primary (0 primary, 0 extended, 4 free)
e extended
默认回车
设置主分区大小创建主分区,然后
Command (m for help): p ---打印分区信息
创建扩展分区
Command (m for help): n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): e
#注意:扩展分区将剩下的空间全部给了。一路回车即可
创建逻辑分区
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 (208896-20971519, default 208896):
Using default value 208896
Last sector, +sectors or +size{K,M,G} (208896-20971519, default 20971519): +5G #
指定大小
Partition 5 of type Linux and of size 5 GiB is set
Command (m for help): w --保存退出
[root@qfedu.com ~]# partprobe /dev/sdb #更新磁盘分区表,手动让内核更新分区表。不需要重启
[root@qfedu.com ~]# lsblk #查看磁盘设备

centos7 缓存 centos7 ssd缓存_centos

3.disk(GPT)

GPT 128个主分区

转格式的时候保证此分区,没有被系统占用。
[root@edu.com ~]# parted -s /dev/sdc mklabel gpt #将/dev/sdc(MBR格式)转换成(GPT
格式)
[root@edu.com ~]# parted -s /dev/sdc mklabel msdos //将/dev/sda(GPT格式)转换成
(MBR格式)

1.创建分区

[root@edu.com ~]# yum -y install gdisk #安装分区工具
[root@edu.com ~]# gdisk -l /dev/sdc
[root@edu.com ~]# gdisk /dev/sdc
Command (? for help): n --创建分区
Partition number (1-128, default 1):
First sector (34-16777182, default = 2048) or {+-}size{KMGTP}:
Last sector (2048-16777182, default = 16777182) or {+-}size{KMGTP}: +100M
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): ---直接回车
Command (? for help): p --打印分区信息
Command (? for help): w ---保存
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
Do you want to proceed? (Y/N): y 是否覆盖是
OK; writing new GUID partition table (GPT) to /dev/sdc.
The operation has completed successfully.
[root@edu.com ~]# partprobe /dev/sdc #刷新分区表
[root@edu.com ~]# gdisk -l /dev/sdc
[root@edu.com ~]# lsblk

centos7 缓存 centos7 ssd缓存_自动挂载_02


2.创建文件系统(格式化)centos7默认使用xfs

[root@qfedu.com ~]# mkfs.ext4 /dev/sdb1 #格式化成ext4格式的文件系统
[root@qfedu.com ~]# mkfs.xfs /dev/sdc2 #格式化成xfs格式的文件系统

3.挂载mount使用

[root@qfedu.com ~]# mkdir /mnt/disk1 #创建挂载目录
[root@qfedu.com ~]# mkdir /mnt/disks #创建挂载目录
[root@qfedu.com ~]# mount -o rw /dev/sdb1 /mnt/disk1/ #-o 指定读写权限(ro只读,rx
读写)
mount参数:
-o 指定读写权限
-a 需要定义(/etc/fstab)执行-a才会自动挂载
[root@qfedu.com ~]# mount /dev/sdc2 /mnt/disks/

查看磁盘挂载与磁盘使用空间

[root@qfedu.com ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 17G 1.2G 16G 7% /
devtmpfs devtmpfs 982M 0 982M 0% /dev
tmpfs tmpfs 993M 0 993M 0% /dev/shm
tmpfs tmpfs 993M 8.7M 984M 1% /run
tmpfs tmpfs 993M 0 993M 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 125M 890M 13% /boot
tmpfs tmpfs 199M 0 199M 0% /run/user/0
/dev/sdb1 ext4 283M 2.1M 262M 1% /mnt/disk1
/dev/sdc2 xfs 197M 11M 187M 6% /mnt/disks
参数解释:
-T 打印文件系统类型
-h 人性化显示,磁盘空间大小

取消挂载

[root@qfedu.com ~]# umount /mnt/disks/
[root@qfedu.com ~]# umount -l /mnt/disk1/ #强行卸载,即使目录有资源被进程占用,也可以卸载

三、fstab开机自动挂载

1./etc/fstab文件实现开机的时候自动挂载

[root@qfedu.com ~]# blkid /dev/sdb1 #查看uuid和文件系统类型
/dev/sdb1: UUID="d1916638-bd0a-4474-8051-f788116a3a92" TYPE="ext4"
[root@qfedu.com ~]# vim /etc/fstab
参数解释:
第1列:挂载设备
(1)/dev/sda5
(2)UUID=设备的uuid rhel6/7的默认写法 同一台机器内唯一的一个设备标识
第2列:挂载点
第3列:文件系统类型
第4列:文件系统属性
第5列:是否对文件系统进行磁带备份:0 不备份
第6列:是否检查文件系统:0 不检查

centos7 缓存 centos7 ssd缓存_linux_03

[root@qfedu.com ~]# mount -a #自动挂载

例子:
[root@qfedu.com ~]# vim /etc/fstab
/dev/sdc2 /mnt/disks xfs defaults 0 0
[root@qfedu.com ~]# mount -a

2./etc/rc.d/rc.local开机自动挂载

这个配置文件会在用户登陆之前读取,这个文件中写入了什么命令,在每次系统启动时都会执行一次。也就是说,如果有任何需要在系统启动时运行的工作,则只需写入 /etc/rc.d/rc.local 配置文件即可

[root@qfedu.com ~]# vim /etc/rc.d/rc.local #将挂载命令直接写到文件中

centos7 缓存 centos7 ssd缓存_centos7 缓存_04

[root@qfedu.com ~]# chmod +x /etc/rc.d/rc.local #添加执行权限
[root@qfedu.com ~]# reboot

四、文件系统

1.分类

分类:
本地文件系统,不能在网络上用。
ntfs xfs ext2,ext3,ext4
网络文件系统,也可以在本地用。
nfs glusterfs hdfs ceph

2.概念

作用:
管理文件的一套系统。
文件的编辑,拷贝,粘贴,移动。
inode :inoed块、i节点–索引节点。专门存储inode信息。里面是文件的属性-也叫元信息,文件名,权限,访问时间

3.理解inode

理解inode,要从文件储存说起。
文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。
操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个"块"(block)。这种由多个扇区组成的"块",是文件存取的最小单位。“块"的大小,最常见的是4KB,即连续八个 sector组成一个 block。
文件数据都储存在"块"中,那么很显然,我们还必须找到一个地方储存文件的元信息,比如文件的创建者、文件的创建日期、文件的大小等等。这种储存文件元信息的区域就叫做inode,中文译名为"索引节点”。索引节点编号;它是文件或目录在磁盘里的唯一标识,linux读取文件首先要读取到这个索引节点。
每一个文件都有对应的inode,里面包含了与该文件有关的一些信息。

4.inode的内容

文件的字节数
文件拥有者的User ID
文件的Group ID
文件的读、写、执行权限
文件的时间戳,共有三个:ctime指inode上一次变动的时间,mtime指文件内容上一次变动的时间,
atime指文件上一次打开的时间。
链接数,即有多少文件名指向这个inode
文件数据block的位置

5.查看inode信息

[root@qfedu.com ~]# stat /etc/hosts
File: ‘/etc/hosts’
Size: 158 Blocks: 8 IO Block: 4096 regular file
Device: fd00h/64768d Inode: 16778306 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2020-07-28 19:11:48.781000069 +0800
Modify: 2013-06-07 22:31:32.000000000 +0800
Change: 2020-07-18 15:37:52.353025437 +0800
Birth: -
[root@qfedu.com ~]# ls -i /etc/hosts #-i:查看inode号
16778306 /etc/hosts

6.EXT

EXT 家族支持度最广:
但创建文件系统(格式化)慢!
修复慢!
文件系统存储容量有限!

7.XFS

XFS 同样是一种日志式文件系統:
高容量,支持大存储
高性能,创建/修复文件系统快
格式化快
inode 与 block 都是系統需要用到時,才动态配置产生