高级文件系统管理——Linux基本命令(15)

1.配置配额

(1)初始化

分区挂载选项:usrquota、grpquota(用户挂载,组挂载)

初始化数据库:quotacheck -cug /home

(2)执行

开启或者取消配额功能:quotaon、quotaoff

(开启之后发现就无法删除了,被保护了)

直接编辑配额:edquota -u/g username(对用户、对组做配额限制)

分别对文件的大小和数量进行限制。软限制就是可以允许超过软限制会发出警告,而硬限制不允许超过。因此设置的时候,软应该小于硬。

在shell中直接编辑:

setquota -u usename 4096 5120 40 50 /foo

使用edquota -u liubei进去查看,发现就写好了

edquota -p user1 user2  将user1的配置复制给user2

(3)报告配额状态

查看用户:quota username

quota -vu/vg username/groupname 查看用户/查看组

repquota -avu  查看所有用户的quota

-avg  查看所有组的quota

配额概述:repquota /mountpoint

其它工具:warnquota -u 给所有超过限制的用户发邮件

-g 当组的限制超出时,给组管理员发邮件,管理员需在/etc/quotagrpadmins 中指定groupname: username


2.RAID

(1)概念

多个磁盘合成一个“阵列”来提供更好的性能、冗余.

提高IO能力:

磁盘并行读写

提高耐用性;

磁盘冗余来实现

级别:多块磁盘组织在一起的工作方式有所不同

RAID实现的方式:

外接式磁盘阵列:通过扩展卡提供适配能力

内接式RAID:主板集成RAID控制器

安装OS前在BIOS里配置

软件RAID:通过OS实现

(2)RAID级别

RAID-0: 条带化 以chunk为单位轮流去写

读、写性能提升;

可用空间:N*min(S1,S2,...)

无容错能力

最少磁盘数:2, 2

RAID-1:镜像

读性能提升、写性能略有下降;

可用空间:1*min(S1,S2,...)

有冗余能力

最少磁盘数:2, 2N

RAID-4:

多块数据盘异或运算值,存于专用校验盘

RAID-5:

读、写性能提升

可用空间:(N-1)*min(S1,S2,...)

有容错能力:允许最多1块磁盘损坏

最少磁盘数:3, 3+

RAID-6:

读、写性能提升

可用空间:(N-2)*min(S1,S2,...)

有容错能力:允许最多2块磁盘损坏

最少磁盘数:4, 4+

RAID-10:结合RAID-1 RAID-0

读、写性能提升

可用空间:N*min(S1,S2,...)/2

有容错能力:每组镜像最多只能坏一块

最少磁盘数:4, 4+

RAID-01:结合RAID-0 RAID-1


3、软件RAID的实现:madadm

(1)概念

mdadm模式化的工具

命令的语法格式:mdadm [mode] <raiddevice> [options] <component-devices>

RAID设备可命名为/dev/md0、/dev/md1、/dev/md2、/dev/md3等

模式:

创建:-C

装配: -A

监控: -F

管理:-f, -r, -a

<raiddevice>: /dev/md#

<component-devices>:任意块设备

(2)创建、查看

-C: 创建模式

mdadm -C /dev/md0 -a yes -l 5 -n 3 -x 1/dev/sd{b,c,d,e}

mdadm -C /dev/md1 -a yes -l 0 -n 2 -c 1M/dev/sdf{1,2}

-C --create  /dev/mdX 创建 名为mdX 的raid

-ayes 当没有所有的/dev/mdX 设备时,自动创建该设备

-l --level n  所要创建的raid等级可以直接创建10

-nn  该raid的数据盘有多少个成员

-xn  该raid的热备盘有多少个  (raid0 没有热备盘,不支持-x)

-c #  指定chunk大小,仅限raid0raid5

/dev/sdx....  指定raid的成员盘。 可以指定多块盘,也可以指定一块盘上的多块分区。(当指定一块盘上的多块分区时应使用t转化分区格式为raid格式)

-D:显示raid的详细信息;

mdadm -D/dev/md#

也可以查看/proc/mdstat文件,查看raid创建进度

(3)删除,增加,装配

删除:

umount 先卸载

mdadm -D /dev/md2 先查一下,该raid由哪有成员组成。(我们只需要把成员都删掉就行了,不需要把整个raid删掉)

mdadm -S /dev/md2 停止设备

mdadm --zero-superblock /dev/sdf4  删除sdf4的raid信息

mdadm --zero-superblock /dev/sdf3  删除sdf3的raid信息

清空/etc/mdadm.conf当中该raid的信息

mdadm /dev/md0 -f /dev/sdd  模拟将/dev/md0 raid中的sdd坏掉

mdadm /dev/md0 -r /dev/sdd  将/dev/md0 raid中的sdd 拔掉

增加:

mdadm /dev/md0 -a /dev/sdd  向/dev/md0 增加设备sdd 。如数据盘不够,则加为数据盘,如够,加为热备盘

mdadm -G /dev/md0 -n 6 -a /dev/sdh 将/dev/md0的数据盘设置为6个,并将/dev/sdh加入为数据盘。

装配(卸载之后重新组装):

手动指定:

mdadm -A /dev/md1 /dev/sdb /dev/sdc 装配当没有将md1信息保存至mdadm.conf时,只能手动指定raid成员sdb sdc

将信息导入文件即可自动指定:

mdadm -Ds /dev/md2 查看信息

mdadm -D -s > /etc/mdadm.conf  将所有的raid成员信息保存至mdadm.conf文件

mdadm -D -s /dev/md0 >> /etc/mdadm.conf 仅将md0的信处追加保存至mdadm.conf文件

mdadm -A /dev/md1  从/etc/mdadm.conf中读取成员信息,并仅激活md1

mdadm -A -s 从/etc/mdadm.conf中读取成员信息,并激活所有的raid


4、逻辑卷管理器(LVM)

(1)概念

允许对卷进行方便操作的抽象层,包括重新设定文件系统的大小

允许在多个物理设备间重新组织文件系统

将设备指定为物理卷PV(Physical Volumes)

用一个或者多个物理卷来创建一个卷组VG(Volume Group)

物理卷是用固定大小的物理区域(Physical Extent,PE)来定义的

在物理卷上创建的逻辑卷是由物理区域(PE)组成

可以在逻辑卷上创建文件系统,可以在线扩展

(2)介绍

LVM: Logical Volume Manager, Version: 2

dm: device mapper:将一个或多个底层块设备组织成一个逻辑设备的模块

(很灵活,可以来自多个设备不同的块,也可以来自同一设备的跨越的块)

/dev/dm-1 (1000) :0-900   /dev/sda1 (200-1100)

9011000  /dev/sda2 (301-400)

/dev/dm-1 (1000) :0-900   /dev/sda1 (200-1100)

9011000  /dev/sda1 (1300-1400)

设备名:/dev/dm-#

(3)创建物理卷

先建立分区时应转化成8e,LVM格式

pvcreate /dev/md0p1  将分区转化成物理卷(可以同时指定多个设备)

pvs 简单查看物理卷信息

pvs/dev/md0p1 只查看md0p1信息

pvdisplay 详细查看物理卷信息

pvdisplay/dev/md0p1 只查看md0p1信息

(4)创建卷组

vgcreate vgmage26 /dev/md0p1 /dev/md1 创建卷组(指定vgmage26为卷组名,卷组名可以任意起)

-s8M 指定PE大小,默认4M

查看卷组信息

vgs  简单查看

vgs vgmage26

vgdisplay  详细查看

vgdislplay vgmage26

vgchange -s 16M  更改PE大小(只能改成比开始定义小的而且被2除没有余数的大小。比如开始定义为16M,则只能改成16M,8M,4M,2M)

vgreduce vgmage26 /dev/md1 删除卷组中的某个物理卷

vgextend vgmage26 /dev/md1 将物理卷再加回卷组

vgremove vgmage26 删除卷组

(5)创建逻辑卷

创建逻辑卷

lvcreate -l # -n NAME VolumeGroup -l指定PE数 -n指定逻辑卷名指定卷组名

lvcreate -L #[mMgGtT] -n NAME VolumeGroup  -L指定大小(必须是8的倍数,否则会自动分配更大一些的8的倍数)

lvcreate -l 100%FREE -n yourlv testvg (把剩余空间全部给出去)

lvs 简单查看

Lvdisplay 详细查看

如图,因为刚才指定PE数为10,一个PE为8M,所以大小为80M

创建之后需要mkfs格式化

创建成功

删除逻辑卷

lvremove /dev/VG_NAME/LV_NAME

重设文件系统大小

fsadm [options] resize device [new_size[BKMGTEP]]

resize2fs [-f] [-F] [-M] [-P] [-p] device [new_size]

·PS:当我们挂在逻辑卷时会发现挂载上的名字与挂载时不太一样

使用ll查询发现它们两个都是软连接。只是挂载的时候系统就使用另一个名字。

我们可以卸载然后使用dm-0重新挂载,仍然是一样的。


5、扩展逻辑卷

使用LV的好处就是可以在线扩展,下面我们来扩展一下:

1.先检查需要扩展的大小,VG是否有足够可用空间

如果不够则扩展VG

pvcreate/dev/md2 先创建一个新pv

vgextendvgmage26 /dev/md2 将其装入vg中

2.如空间足够则扩展逻辑卷大小

lvextend -L 1G/+1G /dev/vgmage26/lvmage26_01 (增加到1G/增加1G)

lvextend -l +100%FREE /dev/vgmage26/lvmage26_01 (将剩下的空间全部加入)

3.扩展文件系统大小(格式化)

resize2fs/dev/vgmage26/lvmage26_01 (指定文件系统名字)扩展文件系统

resize2fs/dev/vgmage26/lvmage26_01 1G  只扩展新增加的那1G的文件系统

如果是xfs文件系统用xfs_growfs:

xfs_growfs /dev/vg01/lv01

PS:(在lvextend 时加-r可以使2、3步一步到位一起做:

lvextend -L +1G -r /dev/vgmage26/lvmage26_01

先扩展逻辑卷大小后直接增加文件系统大小)


6、减小逻辑卷大小(仅支持Ext文件系统)

1.先卸载

umount /mnt/lvmage26_01

2. 扫描检测哪些块没有被用,才可以减那些部分

e2fsck -f/dev/vgmage26/lvmage26_01

3.先设置文件系统大小为300M(此处的数字不是减小多少而是写多少就设置成多少,因此这个数字只要比原来小就可以代表减小了)

resize2fs/dev/vgmage26/lvmage26_01 300M

4.设置逻辑卷大小为300M

lvreduce -L 300M/dev/vgmage26/lvmage26_01

5. 重新挂载

mount


7、将某块盘从LVM中分离出来

1.先确保数据不在这块PV上

用pvs查看

2.如果在这块PV上,则将数据转移到同卷组的其他PV上

pvmove /dev/pv1名 /dev/pv2名(可以不指定)

3.将pv从Vg中移出

vgreduce vg名 /dev/pv名

4.删除该盘的pv属性

pvremove /dev/pv名


8、将LVM迁移到其他主机

1.将数据移到目标磁盘对应的PV上。(该磁盘不要有其他与该PV无关的分区)

pvmove/dev/pv1名 /dev/pv2名

vgreduce vg02 /dev/pv(多余)  移动除要移动的PV以外的其他PV

2.确保要迁移的VG名与目的系统没有同名的VG

vgrename vgmage26 vg02  重命名vg

lvrename /dev/vg02/lvmage26_01 /dev/vg02/lv01  重命名lv(非必须)

3.卸载

umount /mnt/lvmage26_01/

4.禁用VG上的所有LV

vgchange -an vg02

设置为被保护状态

vgexport vg02

5.关机(如果支持热插排,则不用关机),拔硬盘,插到目标主机上。

6.先分别扫描一下,找出信息

pvscan、vgscan、lvscan

取消被保护状态

vgimport vg02

启用LV

vgchange -ay vg02

7.挂载

mount /dev/vg02/lv01 /mnt/lv02


9、LVM快照

(1)概念

快照是特殊的逻辑卷,它是在生成快照时存在的逻辑卷的准确拷贝。对于需要备份或者复制的现有数据集临时拷贝以及其它操作来说,快照是最合适的选择。

快照只有在它们和原来的逻辑卷不同时才会消耗空间。

在生成快照时会分配给它一定的空间,但只有在原来的逻辑卷或者快照有所改变才会使用这些空间。

当原来的逻辑卷中有所改变时,会将旧的数据复制到快照中。

快照中只含有原来的逻辑卷中更改的数据或者自生成快照后的快照中更改的数据

建立快照的卷大小只需要原始逻辑卷的15%~20%就够了,也可以使用lvextend放大快照。

(2)快照的使用

创建快照

lvcreate -L 10M -n lvmage-snap -s /dev/vgmage/lvmage

-L指定大小,也可以使用-l指定PE数量 -n生成快照名  -s源逻辑卷名(就是对谁进行快照)

lvcreate -L 10M -n lvmage-snap -s -p r/dev/vgmage/lvmage 创建只读快照

挂载快照

mkdir -p/mnt/snap

mount -o ro/dev/vg0/snap-data /mnt/snap

删除快照

lvremove /dev/vgmage/lvmage-snap

lvextend -L +300M/300M /dev/vgmage/lvmage-snap  快照扩展

使用快照恢复源逻辑卷

umount 源和快照  先卸载源和快照

lvconvert--merge 快照名  将快照恢复到源(该操作成功后会删除快照)

mount 源  重新将源挂载好

(3)对有快照的逻辑卷进行扩展

1.umount 源和快照

2.lvchange -an 源 将源及快照设置为inactive

3.lvextend -L -r 200M 源名字 (-r不一定能用)

4.e2fsck -f 扫描

5.resize2fs/xfs_growfs  ...

(PS:建议,直接删除快照,可以在线扩展逻辑卷,最后重建快照)

时间: 2024-08-05 11:14:07

高级文件系统管理——Linux基本命令(15)的相关文章

Linux运维 第二阶段 (七)高级文件系统管理

Linux运维第二阶段(七)高级文件系统管理 一.磁盘配额: 多用户共同使用一个硬盘,管理员应适当限制硬盘的空间,以妥善分配系统资源. #grepCONFIG_QUOTA /boot/config-2.6.32-279.el6.i686 #rpm–qa | grep quota 用户配额和组配额:磁盘容量限制和文件个数限制:软限制和硬限制:宽限时间. 注:如果用户的空间处于软限制和硬限制之间,系统会在用户登录时警告将满,宽限时间默认7天,如果达到了宽限时间未调整,软限制就会升级为硬限制. #mo

linux高级文件系统管理——btrfs

前几天,关于高级文件系统方面也给大家分享过RAID和LVM,今天给大家分享的这款文件系统可能比这两者更先进,可以将其二者合二为一.第一,它可以使用磁盘或者分区大小不一样的设备组建RAID:第二,它可以做到像LVM一样,随时扩展以及缩减使用空间,LVM支持在线扩展,但不能支持在线缩减,btrfs同时支持在线扩展和在线缩减:并且支持一条命令直接创建出带RAID功能的LV.所以个人体验之后觉得相当不错,分享于大家. 一.btrfs文件系统定义 1.Btrfs (B-tree, Butter FS, B

linux高级文件系统管理概述:处理交换分区、设置文件系统配额、配置raid和逻辑卷

8月26号,学习了linux(CentOS6.8)文件系统管理,内容颇多,主要分为如下几个部分: 一.处理交换分区和文件及移动介质的使用 二.常见工具free,df,du,dd的使用 三.设置文件系统配额 四.配置raid 五.配置逻辑卷 六.btrfs文件系统 一.处理交换分区和文件及移动介质的使用 交换分区是系统RAM的补充 基本设置包括: 创建交换分区或者文件 使用mkswap写入特殊签名 在/etc/fstab文件中添加适当的条目 使用swapon -a 激活交换空间 1.挂载交换分区

Linux 第15天: (08月29日) Linux高级文件系统管理

本章内容设定文件系统配额设定和管理软RAID设备配置逻辑卷设定LVM快照btrfs文件系统 配置配额系统综述在内核中执行以文件系统为单位启用对不同组或者用户的策略不同根据块或者节点进行限制执行软限制(soft limit)硬限制(hard limit)初始化分区挂载选项:usrquota.grpquota初始化数据库:quotacheck 为用户设定配额执行开启或者取消配额:quotaon.quotaoff直接编辑配额:edquota username在shell中直接编辑:setquota u

linux高级文件系统管理——RAID

作为大型企业,很多时候数据量相当庞大,由此以来对磁盘空间的要求比较高,更重要是的对数据的完整性的追求.所以单独的磁盘不仅空间使用满足不了,数据的完整性更是无从谈起,所以也就出现了专业的数据存储技术,而RAID是其中应用比较广泛,也是历史比较悠久的存数据储技术了.今天就给大家分享一下RAID的一些基本概念以及软件RAID的实现方法. 一.RAID的定义 RAID:Redundant Arrays of Inexpensive(Independent) Disks 1988年由加利福尼亚大学伯克利分

linux高级文件系统管理——LVM

在企业里面,很多时候,我们也无法估量应用程序对磁盘空间的使用量,如果我们使用用传统的文件系统,磁盘分区一旦确定下来以后,就再也无法更改使用空间了,如果需要更改就必须让应用程序离线后,对原有分区的数据进行备份,然后再对磁盘进行重新分区格式,重新复制原来的数据放回新的磁盘分区上,由此带来的麻烦是不言而喻的,如果是可以离线的业务,到也好说,如果是不允许离线的业务,那就影响更大.所以一代全新的文件系统LVM的问世,打破了这一技术瓶颈.它允许用户使用容量不不统一的硬盘和分区组合在一起,构成一个逻辑空间,用

linux之高级文件系统管理

由于Linux是一个多用户管理的操作系统,而Linux默认情况下并不限制每个用户使用磁盘空间的大小,假如某个用户疏忽或者恶意占满磁盘空间,将导致系统磁盘无法写入甚至崩溃;为了保证系统磁盘的有足够的剩余空间,我们需要对用户和组进行磁盘空间使用限制. 磁盘配额限制类型: 限制用户和组对磁盘空间的使用量 限制用户和组在磁盘内创建文件的个数 磁盘配额限制级别: 软限制:低级限制,此限制可以突破,突破时会被警告,超出部分会有宽限天数,宽限天数到期后超出部分被清空,软限制不能超过硬限制 硬限制:绝对限制,此

高级文件系统管理

设定文件系统配额 1.分区挂载选项: usrquota.grpquota   (可以设置为分区开机自动挂载选项) 2.初始化数据库: quotacheck  -cug dirname -u 生成user.quota文件 -g 生成group.quota文件 3.为用户设定配额: quotaon.quotaoff   dirname  开启/取消配额 edquota  username    直接编辑当前用户自身配额 -u username   查看其它用户磁盘配额 setquota  usern

文件权限——Linux基本命令(8)

1.文件权限 (1)权限分类 文件的权限主要针对三类对象进行定义: owner: 属主, u group: 属组, g other: 其他, o 每个文件针对每类访问者都定义了三种权限: r: Readable w: Writable x: eXcutable (2)权限定义 普通文件和目录文件对于权限的定义不太相同: 普通文件: r: 可以读取文件的内容 cat less more nano vim 执行脚本 w: 可以修改文件的内容 nano vim > >> tee gedit x