了解Linux磁盘及分区的过程-程序员宅基地

技术标签: 运维  linux  服务器  

 1.虚拟机添加磁盘

关机添加,自动识别 或 开机添加,命令识别: 扫描磁盘

 echo "- - -" >> /sys/class/scsi_host/host0/scan
	 echo "- - -" >> /sys/class/scsi_host/host1/scan
	 echo "- - -" >> /sys/class/scsi_host/host2/scan 
	 fdisk -l

注: 必须分区 格式化   

 2.文件系统

操作系统用于明确存储设备(常见的是磁盘)或分区上的文件的方法和数据结构; 即在存储设备上组织文件的方法。

linux常见的文件系统:

EXT4是Linux系统下的日志文件系统,是EXT3文件系统的后继版本。

(1)Ext4的文件系统容量达到1EB,而文件容量则达到16TB

(2)理论上支持无限数量的子目录

(3)Ext4文件系统使用64位空间记录块数量和i-节点数量(相当于地址)

(4)Ext4的多块分配器支持一次调用分配多个数据块 scont 7之后xfs

xfs是一种非常优秀的日志文件系统,SGI公司设计的,被称为业界最先进的、最具可升级性的文件系统技术

(1)根据所记录的日志在很短的时间内迅速恢复磁盘文件内容

(2)采用优化算法,日志记录对整体文件操作影响非常小

(3)是一个全64-bit的文件系统,它可以支持上百万T字节的存储空间

(4)能以接近裸设备I/O的性能存储数据

1、NFS:Network FileSystem,网络文件系统
    透过网络,让不同的主机、不同的操作系统可以共享存储的服务。
    NFS 在文件传送或信息传送过程中依赖于 RPC(Remote Procedure Call)协议,即远程过程调用,
    NFS是一个文件存储系统,而 RPC 负责信息的传输

3.磁盘分区方式

MBR:主引导记录,支持4主或3主1扩展多逻辑,每分区最大2TB,兼容性好。

GPT:是GUID分区表(GUID Partition Table)的缩写; 含义为“全局唯一标识磁盘分区表”,是一个实体硬盘的分区表的结构布局的标准。 自纠错能力强,一块磁盘上主分区数量不受(4个的)限制,支持大于18EB的总容量, 几乎没有上限,最大支持到128个分区,分区大小支持到256TB。

分区命令:

fdisk /dev/sdb
gdisk /dev/sdc

分区号码有区别:fdisk 82 gdisk 8200

p: 显示当前硬件的分区,包括没有保存的改动

n: 创建一个新的分区

d:删除一个分区

w: 保存并退出

q: 不保存退出

t: 修改分区类型(文件系统类型)

l: 显示所支持的所有类型

4.分区格式化

	mkfs.ext4 /dev/sdb1
	mkfs.xfs  /dev/sdc1

5.挂载,永久挂载 挂载会覆盖本来的文件内容

	mount
	vim /etc/fstab

系统磁盘高级管理

1.LVM:逻辑卷,动态调整分区大小,扩展性好

1)创建PV pvcreate :将实体 partition 创建成为 PV ;

pvscan :搜寻目前系统里面任何具有 PV 的磁盘;

pvdisplay :显示出目前系统上面的 PV 状态;

pvremove :将 PV 属性移除,让该 partition 不具有 PV 属性

2)创建VG vgcreate :创建 VG 的 (-s :后面接 PE 的大小,默认4M)

vgscan :搜寻系统上面是否有 VG 存在?

vgdisplay :显示目前系统上面的 VG 状态;

vgextend :在 VG 内增加额外的 PV ;

vgreduce :在 VG 内移除 PV;

vgchange :设置 VG 是否启动 (active);

vgremove :删除一个 VG

3)创建LV lvcreate :创建 LV lvscan :查询系统上面的 LV ;

lvdisplay :显示系统上面的 LV 状态

lvextend :在 LV 里面增加容量!

xfs_growfs 同步磁盘(先内存扩展在磁盘扩展)

lvreduce :在 LV 里面减少容量;

lvremove :删除一个 LV lvresize :对 LV 进行容量大小的调整

例:创建卷组mailbox,逻辑卷mail

fdisk /dev/sdb
    fdisk /dev/sdc
    fdisk /dev/sdd
    fdisk -l
    pvcreate /dev/sdb1 /dev/sdc1
    vgcreate -s 16m mailbox /dev/sdb1 /dev/sdc1
    vgscan
    vgdisplay mailbox 
    lvcreate -n mail1 -L 10G mailbox
    lvdisplay /dev/mailbox/mail1 
    mkdir /mail1
    mkfs.xfs /dev/mailbox/mail1 
    mount /dev/mailbox/mail1 /mail1/
    lvcreate -n mail2 -l 1000 mailbox
    lvdisplay /dev/mailbox/mail2
    mkdir /mail2
    mkfs.xfs /dev/mailbox/mail2
    mount /dev/mailbox/mail2 /mail2
    echo "/dev/mailbox/mail1  /mail1  xfs  defaults 0 0" >> /etc/fstab 
    echo "/dev/mailbox/mail2  /mail2  xfs  defaults 0 0" >> /etc/fstab 
    cat /etc/fstab 
    vgdisplay mailbox 
    lvextend -L 15G /dev/mailbox/mail1
    xfs_growfs /dev/mailbox/mail1
    lvextend -L 30G /dev/mailbox/mail1
    xfs_growfs /dev/mailbox/mail1
    vgextend mailbox /dev/sdd1
    vgdisplay mailbox
    lvextend -L 30G /dev/mailbox/mail1
    xfs_growfs /dev/mailbox/mail1
    df -hT
    lvextend -L +4G /dev/mailbox/mail2
    xfs_growfs /dev/mailbox/mail2

如果是ext4文件系统的 使用resize2fs命令

磁盘配额

umount /data
mount -o usrquota(用户配额)
grpquota(组配额)
 /dev/vg0/lv1 /data
xfs_quota -x -c 'limit -u bsoft=20M bhard=40M isoft=6 ihard=8 test' /data
vim

修改配置文件自行挂载开启配额

echo "/dev/vg0/lv1     /backup      xfs      defaults,usrquota,grpquota 0 0" >> /etc/fstab

-x:表示启动专家模式,再当前模式下以允许对配额系统进行修改的所有管理命令可用

-c:表示直接调用管理命令

-u:指定用户账号对象

-g:指定组账号对象

bsoft:设置磁盘容量的软件限制数值

bhard:设置磁盘容量的硬限制数值(最大的容量)b(磁盘 )

isoft:设置磁盘文件数的软限制数值

ihard:设置磁盘文件数的硬限制数值 i节点(地址))(创建一个文件或目录都会使用一个节点(地址))(创建一个文件或目录都会使用一个节点分配地址)

例:添加第二块磁盘,挂载到/jimi

xfsdump -f /opt/dump_sdb1 /dev/sdb1		#备份磁盘分区
xfsrestore -f /opt/dump_sdb1 /jimi		#还原
xfsdump -I 				#查看所有备份记录

注意:脚本免交互命令

xfsdump -f /opt/dump_sdb2 /dev/sdb1 -L sdb1_opt_v1 -M sdb1 
jiaohu

2.VDO:   Virtual Data Optimizer 通过数据去重、压缩的方式来优化存储空间

vdo 命令语法压缩卷 create 创建一个VDO卷及其关联索引使其可用。

remove 删除一个或多个已停止的VDO卷和相关卷索引。

modify 修改一个或所有VDO的配置参数卷。更改将在VDO下次运行时生效设备启动;已经运行的设备则不是受到影响。

list 显示已启动VDO卷的列表。如果,所有指定它同时显示已启动和未启动卷。

start 启动一个或多个已停止、激活的VDO卷相关的服务。

status 以YAML格式报告VDO系统和卷状态。但是,这个命令不需要root特权如果没有,信息将是不完整的。

stop 停止一个或多个正在运行的VDO卷和相关卷服务。

activate 激活一个或多个VDO卷。激活卷可以使用“开始”命令启动。

deactivate 使一个或多个VDO卷失效。停用不能通过“start”命令启动卷。停用当前正在运行的卷不会停止它。

growLogical 增加VDO卷的逻辑大小。卷必须存在并且必须正在运行。

growPhysical 增加VDO卷的物理大小。卷必须存在并且必须正在运行。

实例:

(3)创建一个8G大小的vdo卷

vdo create --name=vdoname --device=/dev/sde1 --vdoLogicalSize=8G

(4) 查看vdo卷

vdo list
	lsblk /dev/sde

(5) 格式化vdo卷

mkfs.xfs /dev/mapper/vdoname 

(6) 查看vdo卷属性

	vdostats --si
	blkid /dev/mapper/vdoname

(7) 自动挂载

mkdir /vdodir
	echo "/dev/mapper/vdoname    /vdodir      xfs     x-systemd.requires=vdo.service  0 0" >> /etc/fstab

(8) 删除vdo卷

umount /vdodir vdo remove --name=vdoname

 stratis(centos8)

便捷的使用精简置备(Thin Provisioning)、快照(Snapshots)、基于池(Pool-based)的管理和监控等高级存储功能; 基于xfs文件系统格式,创建filesystem后不需要格式化

(1) 安装stratis

yum install -y stratisd stratis-cli
	systemctl enable stratisd

(2) 创建pool池,大于1G

stratis pool create pool-one /dev/sda1
	stratis pool list

(3) 向已经存在的pool池中添加块设备

	stratis pool add-data pool-one /dev/sda2

(4) 同时将两块块设备添加到同一个pool池中

	stratis pool create pool-two /dev/sda3 /dev/sda4

(5) 查看pool-one池和pool-two池中所使用的块设备

	stratis blockdev list pool-one
	stratis blockdev list pool-two

(6) 在pool-one池中创建filesystem(一次只能创建一个filesystem)

	stratis filesystem create pool-one file-one
	stratis filesystem list

(7) 挂载filesystem

	mkdir /fsdir
	mount /stratis/pool-one/file-one /fsdir/

(8) 永久挂载

	blkid /stratis/pool-one/file-one
	echo "UUID=deeb42ce-5715-42ca-b33a-fcbfece6dd0a     /fsdir   xfs   defaults    0 0" >> /etc/fstab

4.raid:

磁盘阵列(Redundant Arrays of Independent Disks)由独立磁盘构成的具有冗(容)余能力的阵列。

Raid 0(条带): 读写速度得到提升,但不具备数据冗余?,不推荐,最少2块硬盘
Raid 1(镜像): 写性能下降,读性能提升,相反冗余能力提升。但磁盘利用率是1/2,最少2块硬盘
Raid 1+0: 同组不能都坏掉,目前主流的方案。最少4块
Raid 0+1: 同组都可以坏,不能是不同组的相同标号。最少4块硬盘
Raid 0+1 和Raid1+0的空间利用率都是1/2
Raid 5(校验码机制):读写都提升,冗余有,空间利用率(n-1)/n 只能坏一块。最少3块硬盘
Raid 5+0:具有RAID 5和RAID 0的共同特性。它由两组以上RAID 5磁盘组成(每组最少3个)。
Raid 6 可以看做是raid5的升级版,它支持同时损坏2块磁盘。最少是4块盘
Raid 7 可以看做是raid5的升级版,它支持同时损坏3块磁盘。最少是5块盘
-C, --create:创建一个新的阵列
-a, --auto{=no,yes,md,mdp,part,p}{NN}:(自动)
-l, --level=:设定 raid level.
-n, --raid-devices=:指定阵列中可用 device 数目,这个数目只能由 --grow 修改
-v, --verbose:显示细节
-D, --detail:打印一个或多个 md device 的详细信息
-x ,spare-devices= :指定初始阵列的富余device数目。热备盘
-S 关闭mdadm -S /dev/md0(关闭前先取消挂载)

(1) 分区

	gdisk /dev/sdb
	FD00

(2) 创建raid0,查看raid设备,挂载

mdadm -C /dev/md0 -a yes -l 0 -n 2 /dev/sdb{1,2}
	cat /proc/mdstat
	mdadm -D /dev/md0
	mkfs.xfs /dev/md0
	mkdir /raid0
	mount /dev/md0 /raid0
	echo "/dev/md0     /raid0   xfs   defaults    0 0" >> /etc/fstab

(3) 创建raid1

	mdadm -C /dev/md1 -a yes -l 1 -n 2 /dev/sdb{3,4}
	mdadm -D /dev/md1
	mkfs.xfs /dev/md1
	mkdir /raid1
	mount /dev/md1 /raid1
	echo "/dev/md1     /raid1   xfs   defaults    0 0" >> /etc/fstab
	mdadm /dev/md1 -f /dev/sdb4		#模拟损坏
	mdadm /dev/md1 -r /dev/sdb4		#物理拔除
	mdadm /dev/md1 -a /dev/sdb5		#添加新盘
umount /dev/md1					#卸载
mdadm -S /dev/md1				#关闭md1
mdadm -A /dev/md1				#重启md1,报错(损坏盘)

mdadm -AR /dev/md1 /dev/sdb{3,4}	#从新声明md1磁盘成员
mdadm /dev/md1 -a /dev/sdb4		#添加损坏盘
mdadm /dev/md1 -a /dev/sdb5		#添加冗余盘

mdadm -D --scan > /etc/mdadm.conf	#扫描并添加raid信息到自启文件
mdadm -S /dev/md1				#重启测试
mdadm -A /dev/md1

(4) 创建raid5

mdadm -Cv /dev/md5 -a yes -n 3 -l 5 -x 2  /dev/sdc /dev/sdd /dev/sde /dev/sdf /dev/sdg
	

(5) 创建raid10

	mdadm -Cv /dev/md10 -a yes -n 4 -l 10 -x 1  /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/d18631089566/article/details/132109953

智能推荐

从零开始搭建Hadoop_创建一个hadoop项目-程序员宅基地

文章浏览阅读331次。第一部分:准备工作1 安装虚拟机2 安装centos73 安装JDK以上三步是准备工作,至此已经完成一台已安装JDK的主机第二部分:准备3台虚拟机以下所有工作最好都在root权限下操作1 克隆上面已经有一台虚拟机了,现在对master进行克隆,克隆出另外2台子机;1.1 进行克隆21.2 下一步1.3 下一步1.4 下一步1.5 根据子机需要,命名和安装路径1.6 ..._创建一个hadoop项目

心脏滴血漏洞HeartBleed CVE-2014-0160深入代码层面的分析_heartbleed代码分析-程序员宅基地

文章浏览阅读1.7k次。心脏滴血漏洞HeartBleed CVE-2014-0160 是由heartbeat功能引入的,本文从深入码层面的分析该漏洞产生的原因_heartbleed代码分析

java读取ofd文档内容_ofd电子文档内容分析工具(分析文档、签章和证书)-程序员宅基地

文章浏览阅读1.4k次。前言ofd是国家文档标准,其对标的文档格式是pdf。ofd文档是容器格式文件,ofd其实就是压缩包。将ofd文件后缀改为.zip,解压后可看到文件包含的内容。ofd文件分析工具下载:点我下载。ofd文件解压后,可以看到如下内容: 对于xml文件,可以用文本工具查看。但是对于印章文件(Seal.esl)、签名文件(SignedValue.dat)就无法查看其内容了。本人开发一款ofd内容查看器,..._signedvalue.dat

基于FPGA的数据采集系统(一)_基于fpga的信息采集-程序员宅基地

文章浏览阅读1.8w次,点赞29次,收藏313次。整体系统设计本设计主要是对ADC和DAC的使用,主要实现功能流程为:首先通过串口向FPGA发送控制信号,控制DAC芯片tlv5618进行DA装换,转换的数据存在ROM中,转换开始时读取ROM中数据进行读取转换。其次用按键控制adc128s052进行模数转换100次,模数转换数据存储到FIFO中,再从FIFO中读取数据通过串口输出显示在pc上。其整体系统框图如下:图1:FPGA数据采集系统框图从图中可以看出,该系统主要包括9个模块:串口接收模块、按键消抖模块、按键控制模块、ROM模块、D.._基于fpga的信息采集

微服务 spring cloud zuul com.netflix.zuul.exception.ZuulException GENERAL-程序员宅基地

文章浏览阅读2.5w次。1.背景错误信息:-- [http-nio-9904-exec-5] o.s.c.n.z.filters.post.SendErrorFilter : Error during filteringcom.netflix.zuul.exception.ZuulException: Forwarding error at org.springframework.cloud..._com.netflix.zuul.exception.zuulexception

邻接矩阵-建立图-程序员宅基地

文章浏览阅读358次。1.介绍图的相关概念  图是由顶点的有穷非空集和一个描述顶点之间关系-边(或者弧)的集合组成。通常,图中的数据元素被称为顶点,顶点间的关系用边表示,图通常用字母G表示,图的顶点通常用字母V表示,所以图可以定义为:  G=(V,E)其中,V(G)是图中顶点的有穷非空集合,E(G)是V(G)中顶点的边的有穷集合1.1 无向图:图中任意两个顶点构成的边是没有方向的1.2 有向图:图中..._给定一个邻接矩阵未必能够造出一个图

随便推点

MDT2012部署系列之11 WDS安装与配置-程序员宅基地

文章浏览阅读321次。(十二)、WDS服务器安装通过前面的测试我们会发现,每次安装的时候需要加域光盘映像,这是一个比较麻烦的事情,试想一个上万个的公司,你天天带着一个光盘与光驱去给别人装系统,这将是一个多么痛苦的事情啊,有什么方法可以解决这个问题了?答案是肯定的,下面我们就来简单说一下。WDS服务器,它是Windows自带的一个免费的基于系统本身角色的一个功能,它主要提供一种简单、安全的通过网络快速、远程将Window..._doc server2012上通过wds+mdt无人值守部署win11系统.doc

python--xlrd/xlwt/xlutils_xlutils模块可以读xlsx吗-程序员宅基地

文章浏览阅读219次。python–xlrd/xlwt/xlutilsxlrd只能读取,不能改,支持 xlsx和xls 格式xlwt只能改,不能读xlwt只能保存为.xls格式xlutils能将xlrd.Book转为xlwt.Workbook,从而得以在现有xls的基础上修改数据,并创建一个新的xls,实现修改xlrd打开文件import xlrdexcel=xlrd.open_workbook('E:/test.xlsx') 返回值为xlrd.book.Book对象,不能修改获取sheett_xlutils模块可以读xlsx吗

关于新版本selenium定位元素报错:‘WebDriver‘ object has no attribute ‘find_element_by_id‘等问题_unresolved attribute reference 'find_element_by_id-程序员宅基地

文章浏览阅读8.2w次,点赞267次,收藏656次。运行Selenium出现'WebDriver' object has no attribute 'find_element_by_id'或AttributeError: 'WebDriver' object has no attribute 'find_element_by_xpath'等定位元素代码错误,是因为selenium更新到了新的版本,以前的一些语法经过改动。..............._unresolved attribute reference 'find_element_by_id' for class 'webdriver

DOM对象转换成jQuery对象转换与子页面获取父页面DOM对象-程序员宅基地

文章浏览阅读198次。一:模态窗口//父页面JSwindow.showModalDialog(ifrmehref, window, 'dialogWidth:550px;dialogHeight:150px;help:no;resizable:no;status:no');//子页面获取父页面DOM对象//window.showModalDialog的DOM对象var v=parentWin..._jquery获取父window下的dom对象

什么是算法?-程序员宅基地

文章浏览阅读1.7w次,点赞15次,收藏129次。算法(algorithm)是解决一系列问题的清晰指令,也就是,能对一定规范的输入,在有限的时间内获得所要求的输出。 简单来说,算法就是解决一个问题的具体方法和步骤。算法是程序的灵 魂。二、算法的特征1.可行性 算法中执行的任何计算步骤都可以分解为基本可执行的操作步,即每个计算步都可以在有限时间里完成(也称之为有效性) 算法的每一步都要有确切的意义,不能有二义性。例如“增加x的值”,并没有说增加多少,计算机就无法执行明确的运算。 _算法

【网络安全】网络安全的标准和规范_网络安全标准规范-程序员宅基地

文章浏览阅读1.5k次,点赞18次,收藏26次。网络安全的标准和规范是网络安全领域的重要组成部分。它们为网络安全提供了技术依据,规定了网络安全的技术要求和操作方式,帮助我们构建安全的网络环境。下面,我们将详细介绍一些主要的网络安全标准和规范,以及它们在实际操作中的应用。_网络安全标准规范