高级文件系统管理

配置配额系统

综述

•在内核中执行

•以文件系统为单位启用

•对不同组或者用户的策略不同

根据块或者节点进行限制

•执行软限制(soft limit)

•硬限制(hard limit)

初始化

•分区挂载选项:usrquota、grpquota

•初始化数据库:quotacheck

执行

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

•直接编辑配额:edquota username

•在shell中直接编辑:

setquota usename 4096 5120 40 50 /foo

•定义原始标准用户

edquota -p user1 user2

示例:对/home下的kbq用户进行配额:

将home迁移到一个独立的磁盘分区(具体见实验) quotacheck -cu /home(对home下的用户创建配额机制)

若上述命令有报错,是由于SElinux,后续会有介绍 [root@centos7 ~]#getenforce Enforcing

[root@centos7 ~]#setenforce 0

[root@centos7 ~]#getenforce

Permissive

进行上述操作后再创建配额机制即可。

创建成功后在/home目录下回生成一个aquota.user的二进制文件(表示创建配额成功。)

[root@centos7 ~]#quotaon -p /home

group quota on /home (/dev/sdb2) is off

user quota on /home (/dev/sdb2) is off

在/etc/fstab中的defaults后面加userquota

[root@centos7 ~]#quotaon /home

[root@centos7 ~]#quotaon -p /home

group quota on /home (/dev/sdb2) is off

user quota on /home (/dev/sdb2) is on

#edquota kbq即可对kbq用户进行配额的编辑了。

注意:grpquota针对的是用户的所属组而不是属主

RAID

提高IO能力:

磁盘并行读写

提高耐用性;

磁盘冗余来实现

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

RAID实现的方式:

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

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

安装OS前在BIOS里配置

软件RAID:通过OS实现

RAID-0:条带卷,strip

读、写性能提升;

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

无容错能力

最少磁盘数:2, 2

RAID-1: 镜像卷,mirror

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

可用空间: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

读、写性能提升

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

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

最少磁盘数:4, 4+

实验:制作RAID 5

准备了4块硬盘,sdc,sdd,sde,sdf1 (均为30G)并且使sdf1的属性为fd且为备用盘。

#开始制作 mdadm -C /dev/md0 -a yes -l 5 -n 3 -x 1 /dev/sd{c,d,e,f1}

#在制作期间可能需要一段时间,可用cat /proc/mdstat命令查看进度(也可用mdadm -D /dev/md0)

#在生成md0这个设备之后需要将其存入配置文件中 (这个文件的作用在于若该raid设备被禁用了之后若没有这个文件raid设备将无法启动。) mdadm -Ds /dev/md0 > /etc/mdadm.conf

#创建完成后对该设备创建文件系统

mkfs.ext4 /dev/md0 建立一个挂载点并将md0挂上

mkdir /mnt/raid

mount /dev/md0 /mnt/raid

#为了实验需要复制一些文件到raid下

cp /etc/passwd /mnt/raid/f1 

cp /etc/passwd /mnt/raid/f2

 cp /etc/passwd /mnt/raid/f3

测试写速度:dd if=/dev/zero of=/mnt/raid/bigfile bs=1M count=1024

测试读速度:dd if=/dev/zero of=/mnt/raid/bigfile bs=1M count=1024

要想保存住,一定要写入配置文件中。

raid10的制作:(具体步骤参考raid5)

方法1

#先建立底层建筑2个raid1的设备md0和md1 mdadm -C /dev/md0 -a yes -l 1 -n 2 /dev/sdb{1,2}

mdadm -C /dev/md1 -a yes -l 1 -n 2 /dev/sdc{1,2}

#再将2个raid1设备做raid0 mdadm -C /dev/md2 -a yes -l 0 -n 2 /dev/md{0,1}

方法2:

mdadm -C /dev/md0 -a yes -l 10 -n 4 /dev/sdb{1,2} /dev/sdc{1,2}

软件raid的实现:

mdadm:模式化的工具

命令的语法格式:mdadm[mode] [options] 

支持的RAID级别:LIEAR, RAID0, RAID1, RAID4, RAID5, RAID6, RAID10

模式:

    创建:-C    装配: -A    监控: -F     管理:-f, -r, -a

-C: 创建模式

-n #: 使用#个块设备来创建此RAID

-l #:指明要创建的RAID的级别

-a {yes|no}:自动创建目标RAID设备的设备文件 -c CHUNK_SIZE: 指明块大小

-x #: 指明空闲盘的个数

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

       mdadm -D /dev/md#

管理模式:

       -f: 标记指定磁盘为损坏   -a: 添加磁盘     -r: 移除磁盘

观察md的状态:

       cat /proc/mdstat

使用mdadm创建并定义RAID设备

#mdadm -C /dev/md0 -a yes -l 5 -n 3 -x 1 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1

用文件系统对每个RAID设备进行格式化

#mke2fs -j /dev/md0 测试RAID设备

使用mdadm检查RAID设备的状况

#mdadm --detail|D /dev/md0

增加新的成员

#mdadm –G /dev/md0 –n4 -a /dev/sdf1

软RAID测试和修复

模拟磁盘故障

          mdadm /dev/md0 -f /dev/sda1

移除磁盘

          mdadm /dev/md0 –r /dev/sda1

从软件RAID磁盘修复磁盘故障

替换出故障的磁盘然后开机

在备用驱动器上重建分区

mdadm /dev/md0 -a /dev/sda1

mdadm、/proc/mdstat及系统日志信息

生成配置文件:

mdadm –D –s >> /etc/mdadm.conf

停止设备:

mdadm –S /dev/md0

激活设备:

mdadm –A –s /dev/md0 激活

强制启动:

mdadm –R /dev/md0

删除raid信息:

mdadm --zero-superblock/dev/sdb1

注意:在删除raid时 1 umount 取消挂载 2 mdadm -S /dev/md0 停止raid设备 3 rm -f /etc/mdstat

4 vim /etc/fstab 修改配置文件 5 mdadm --zero-superblock /dev/sda7

彻底清除超级块信息 清除Raid成员上raid元数据

逻辑卷管理器(LVM)

突出优势:可扩展性

原理: 底层为磁盘或分区,用fdisk命令将其system id改为8e (Linux LVM)

第二层为创建PV和查看PV(physical volumes)

创建的命令:pvcreate 设备名

查看:pvs 或者 pvdisplay

第三层为用PV创建VG

工具为vgcreate,vgdisplay

第四层为从VG中切割出LV

工具lvcreate lvdisplay

第五层为格式化后挂载使用

工具:mkfs mount

实验:创建逻辑卷的步骤:

pvcreate /dev/sd{b5,c}

#将/dev/sdb5,/dev/sdc 打包创建为物理卷

此时可以pvs查看有无成功。

vgcreate -s 16M vg0 /dev/sd{c,b5}

#将已创建为物理卷的2个卷合成一个卷组 -s后跟PE的大小 并设置这个卷组的名称

lvcreate -n lv0 -l 1000 vg0

#-n 后跟创建的逻辑卷名称 ,-l 为此逻辑卷的大小(-L +xx为添加至xx) 针对vg0卷组操作

lvdisplay

--- Logical volume ---

LV Path /dev/vg0/lv0

LV Name lv0

VG Name vg0

#生成的逻辑卷/dev/vg0/lv0其实是一个软连接指向../dm-0

-l 是以PE为单位 也可以跟100%free -L 后面跟大小容量

实验:扩展逻辑卷

假设我们现在的逻辑卷组的空间不够了,可以设置一个分区为物理卷后再添加。

pvcreate /dev/sde

#将该磁盘变成物理卷

vgextend vg0 /dev/sde

#对vg0这个卷组扩展/dev/sde这个物理卷

lvextend -L 60G /dev/vg0/lv0

#扩展至60G 对于lv0这个逻辑卷来说。

resize2fs /dev/vg0/lv0

#因为添加的物理卷没有文件系统,所以需要对其进行同步。(该命令只针对ext系列的文件系统,若要对xfs文件系统进行同步需用xfs_grows +设备名。命令。) 若先一步到位不在最后不用同步可用选项-r

lvextend -r -L 60G /dev/vg0/lv0

实验:缩减逻辑卷

不支持在线使用,有损失数据的风险,需在缩减之前做备份。

xfs文件系统不支持缩减。

umount /mnt/lv0

#需进行离线操作,取消挂载。

e2fsck -f /dev/vg0/lv0

#在执行某些重大操作前必须检查文件的完整性

resize2fs /dev/vg0/lv0 30G

#先缩减文件系统的空间

lvreduce -L 30G /dev/vg0/lv0

#在缩减逻辑卷的大小

mount /dev/vg0/lv0 /mnt/lv0 #进行挂载使用

注!!:操作期间不要挂载操作。

实验:移除PV

1 vgdisplay 空闲空间

pvdisplay

2 pvmove /dev/sdb

将/dev/sdb中的数据移到其它卷组成员中

3 vgreduce vg0 /dev/sdb

将/dev/sdb 从vg0组中移除

4 pvremove /dev/sdb

将/dev/sdb 从物理卷中移除 5 卸载硬盘

实验:跨主机迁移LV

1 查看LV对应的卷组是由几个PV组合的

/dev/sdc /dev/sdd

2 查看下VG名称,确保在目标主机上的名称不要冲突

vgrename vg0 newvg0

lvrename /dev/vg0/lv0 /dev/newvg0/newlv0

3在源主机

umount /dev/newvg0/lv0

vgchange -an newvg0

vgexport newvg0

4 将对应所有PV,接入到目标主机

5 在目标主机

pvscan

vgimport newvg0

vgchange -ay newvg0 激活

mount /dev/newvg0/newlv0 /mnt/newlv0

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,324评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,303评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,192评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,555评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,569评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,566评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,927评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,583评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,827评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,590评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,669评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,365评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,941评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,928评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,159评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,880评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,399评论 2 342

推荐阅读更多精彩内容