高级文件系统的管理

一、迁移分区

分区 /dev/sda6 注意同步问题  创建分区,把原先家目录下的文件拷贝到新挂载的文件中

mkfs.ext4 /dev/sda6  mkdir /mnt/home

mount /dev/sda6 /mnt/home

cp -a /home/*  /mnt/home  

init 1 切换单用户模式,把生产环境的用户都踢出去,进行维护修改

rm -rf  /home/* 删除/home下的所有文件

mount /dev/sda6 /home

umont /mnt/home

vim /etc/fstab  编辑

init 5  切换到图形界面,用户就可以登录了。

这样就实现把/home 挂载到新的磁盘分区里面了。

二、文件系统启动磁盘配额

    用户分区配额:usrqouta      组的分区配额:groupqouta

1.启动磁盘配额挂载选项:vim /etc/fstab   defaults,usrquota,groupqouta mount -o remount /home mount

2.创建配额数据库:setenforce 0  quotacheck -cug  /home

3.启动数据库 quotaon  -p  /home (查看数据库启用状态) quotaon  /home

4.指定用户空间限制

edquota lyx  edquota -p usr1 usr2 :把usr1的配额复制给usr2,但是由于是交互式的,不能写入脚本

setquota lyx  100000(100M报警)150000(最大写入150M) 0  0  /home

文件系统启用配额

2.1 启用配额挂载选项

vim /etc/fstab

defaults,usrquota,grpquota

mount -o remount  /dev/sdX  /home 对修改的生效  ; mount -a 只能对新加的生效

mount 确认是否真的修改挂载选项

2.2 创建配额数据库 

setenforce  0   禁用selinux守护 策略   

quotacheck -cug /home  -c:创建数据库  -u:针对用户的数据库  -g:针对组的数据库

setenforce  1  启用selinux 策略  ,增加安全性

2.3 启用数据库

quotaon  -p /home 查看数据库启用状态

quotaon  /home   启用数据库

2.4 指定用户空间限制

edquota  wang 针对wang用户(ID号)设置配额

Filesystem  (设备名)  blocks(用户已经用了多少块) soft(报警时的配额) hard(最大配额)

edquota -p  wang  mage 把wang的磁盘配额复制给mage

setquota  wang 100000 150000 0 0  /home  设置wang用户的报警配额 和最大配额

2.5 测试

su – wang 切换wang用户  dd if=/dev/zero of=f1 bs=1M count=50 写入50M

 

三、RAID的实现

    RAID:Redundant Arrays of Inexpensive(Independent)Disks:廉价磁盘冗余阵列

1988年由加利福尼亚大学伯克利分校(University of California-Berkeley) “A Case for Redundant Arrays of Inexpensive Disks”。表现为多个磁盘合成一个“阵列”来提供更好的性能、冗余,或者两者都提供。

RAID-0:

读、写性能提升;可用空间:N*min(S1,S2,…);无容错能力;最少磁盘数:2, 2

条带卷:先将磁盘切除等量的区块chunk,然后当一个文件要写入RAID时,该文件会依据区块大小切割好,之后一次放入到各磁碟中去。由于每个磁盘会交错存放数据,因此当数据写入到RAID时,数据会被等量的放置各磁盘上。

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 混合类型级别

RAID-10:

读、写性能提升;可用空间:N*min(S1,S2,…)/2;有容错能力:每组镜像最多只能坏一块;最少磁盘数:4, 4+

RAID-01 、RAID-50

RAID7:可理解为独立存储计算机,自身带有操作系统和管理工具,可以独立运行,理论上性能最高的RAID 模式。

JBOD :Just a Bunch Of Disks

          功能:将多块磁盘的空间合并一个大的连续空间使用可用空间:sum(S1,S2,…)

v  常用级别:RAID-0, RAID-1, RAID-5, RAID-10,RAID-50, JBOD

3.1 软RAID

v mdadm :为软RAID 提供管理界面;作用为为空余磁盘添加冗余

v  结合内核中的md(multi devices)

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

软件RAID 的实现

v mdadm :模式化的工具

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

<component-devices>

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

3.2 mdadm创建和删除RAID

3.2.1 创建raid

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

-C:创建RAID ; -a:自动创建  ;-c:指明chunk大小 ;-x:指明空闲盘的个数 ;-l:指明要创建RAID级别

2. mke2f -j /dev/md0  用文件系统对每个RAID设备进行格式化

3. mdadm -Ds /dev/md0 > >/etc/mdadm.conf  生成配置文件  -D:显示raid的详细信息

4. mount  /dev/dm0  /mnt/raid5   vim /etc/fstab  ;  mount -a  ; mount          

mdadm /dev/md0 -f /dev/sdc  -f:标记指定sdc为坏的磁盘

5.软RAID修复

 替换出故障的磁盘然后开机;在备用驱动器上重建分区

mdadm  /dev/md0 -r /dev/sdc  -r:移除坏的sdc磁盘

6. mdadm -G /dev/md0 -n 4 -a /dev/sde   增加新成员   -n #:使用#个块设备创建此RAID

7. resize2fs  /dev/md0  60G  扩容

8. mdadm -D /dev/md0       显示raid的详细信息  

9.cat /proc/mdstat      观察md0的状态

3.2.2 删除raid

umount /mnt/raid5  取消raid挂载

madam -S /dev/md0 停止软RAID服务       madam -D /dev/md0         

mdadm –zero-superblock /dev/sdb 删除 /dev/sdd的RAID信息 ;   

或者 dd if=/dev/zero of=/dev/sdd bs=1G count=50

四、逻辑卷创建(LVM)

4.1 什么是LVM、dm

   LVM: Logical Volume Manager逻辑卷管理  

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

v  设备名:/dev/dm-#

v  软链接:/dev/mapper/VG_NAME-LV_NAME

            /dev/mapper/vol0-root

            /dev/VG_NAME/LV_NAME

            /dev/vol0/root

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

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

1.将设备指定为物理卷物理卷是用固定大小的物理区域(Physical Extent,PE )来定义的

2.用一个或者多个物理卷来创建一个卷组

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

4.可以在逻辑卷上创建文件系统     

4.2 创建LVM

1、 fdisk /dev/sda  t  8e  指定物理卷 LVM

       partx -a /dev/sda         同步到设备文件

2、 pvcreate  /dev/sd{a7,b}  创建物理卷 :用固定大小的物理区域(Physical Extent,PE)

       pvs;vgs  查看创建物理卷信息;查看卷组的信息

3、vgcreate  vg0 /dev/sd{a7,b}  用物理卷创建卷组

       vgs;vgdisplay  查看卷组信息

4、lvcreate  -n lv0 -L 15G vg0   -l:PE的个数 ;-L:指定容量 在物理卷组上创建逻辑卷

       lvs pvdisplay   查看逻辑卷信息

5、mkfs.ext4 /dev/vg0/lv0 在逻辑卷上创建文件系统

       ll /dev/vg0/lv0 不是真正的设备,只是指向../dm-0的软链接

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

6、mkdir /mnt/lv0    mount  /dev/vg0/lv0  /mnt/lv0     挂载逻辑卷

7、vim /etc/fstab

8、mount -a ; mount -o remount /dev/vg0/lv0  /mnt/lv0     开机挂载信息

9、df -h     读取挂载逻辑卷信息

10、测试:dd if=/dev/zero of=/mnt/lv0/f1  bs=1G count=14  

LVM弹性更改文件系统的容量:v

     LVM 可以弹性的更改LVM 的容量通过 交换PE 来进行资料的转换,将原来LV 内的PE转移到其他的设备中以降低LV 的容量,或将其他设备中的PE 加到LV 中以加大容量。

4.3 逻辑卷扩展(在线)

1、vgdisplay  硬盘里面还在写文件的同时也能扩展逻辑卷 ,可以看到PE数以及尺寸。

2、lvextend -L -l n   /dev/vg0/lv0   扩展逻辑卷

        -L:+10G;25G 都是扩展到25G ;-l:增加PE数可在 n:名字lv0

3、resize2fs /dev/vg0/lv0 26G 扩展文件系统存储;用df -h查看不同步,使用此命令能同步逻辑卷差不多26G大小

     xfs_grow /mnt/lv0  CentOS7上面扩展逻辑卷

4、 lvextend  -r -l  +100%FREE /dev/vg0/lv0 文件系统扩展卷组的所有的剩余空间到逻辑卷

        此卷组没有多余空间创建新的逻辑卷。

4.4 扩展卷组

1、pvcreate  /dev/sdc  先创建新的物理卷

2、pvdisplay   显示物理卷信息

3、vgextend  vg0 /dev/sdc 扩展物理卷到新的卷组

    (lvextend  -r -l +100%FREE /dev/vg0/lv0 扩展所有的剩余空间到逻辑卷)在逻辑卷空间不够的情况下。

4.5 逻辑卷缩减(离线ext4)

1、umount  /mnt/lv0/   取消挂载,取消在/etc/fstab的存储

2、fsck  -f  /dev/vg0/lv0  需要对文件系统的完整性检查

3、resize2fs  /dev/vg0/lv0  20G 文件系统缩减到20G  (缩减前建议备份数据)

4、lvreduce  -L  20G /dev/vg0/lv0  逻辑卷缩减到20G  (如果数据大于20G,会造成数据丢失)

5、mount  -a  重新挂载回去,因为/etc/fstab 没有更改

4.6 空间迁移

   (迁移的是PE,数据随之一起迁移)移除物理卷PV

pvmove /dev/sdb   先确认 pv有没有足够的空间 ,先移除sdb上的PE空间挪到卷组的其他空间

vgreduce  vg0 /dev/sdb   把sdb从卷组vg0中移除 vgdisplay ,pvdisplay

pvremove  /dev/sdb   把sdb从物理卷中移除

4.7 逻辑卷删除

删除逻辑卷必须先删除LV ,再删除VG ,最后删除PV

在图形界面中点击逻辑卷管理器的“卷组”-> “逻辑视图”的LV 逻辑卷

v  点击“移除选择的逻辑卷”,再删除VG ,最后删除PV。 

原创文章,作者:lyx,如若转载,请注明出处:http://www.178linux.com/61079

赞 (0)
lyxlyx
上一篇 2016-11-27 20:29
下一篇 2016-11-27 20:33

相关推荐

  • 用户和组相关的配置文件总结

    包括:/etc/passwd,/etc/shadow,/etc/group,/etc/gshadow,/etc/login.defs,/etc/dufaults/useradd,/etc/skel/.*,/etc/gdm/custom.conf,   /etc/passwd 用户信息库文件;用于保存用户账号信息; 各字段含义依次为: 用户名:用户密…

    Linux干货 2016-10-25
  • 基于ssl协议和openssl工具建立私有CA

    前言     要自建CA需先了解openssl工具和ssl协议还有各加密类型     ssl(Secure Socket Layer)安全套接字层当前版本为3.0,浏览器与Web服务器之间的身份认证和加密数据传输,它工作在传输层和各应用层之间,用户可以选择是否使用ssl进行传输,选择ssl协议将调用…

    Linux干货 2015-05-07
  • init中的服务故障如何排除

    我们假设ypbind出故障 首先我们设 ypbind服务开机启动 chkconfig yubind on 然后查看服务 chkconfig –list    默认是2345启动   然后更改这个脚本,里面寄一个长期的休眠时间,模仿为错误 sleep 休眠时间 然后重新启动,看看系统如何报错。 然后系统等到要启动该服务的时候回一…

    2017-07-22
  • Linux中的包管理

    1. RPM介绍 rpm是linux中的包管理软件,通过rpm用户可以对rpm包进行查询、安装、卸载、升级和校验等操作。 1.1 查询 查询 -q:可以查看某个包是否已经安装 -qa:查看系统已经安装的所有包 -qi:查询某个安装包的详细情况 -ql:查询安装某个包之后会生成哪些文件 -qc:查询某个软件的配置文件 -qd:查询某个软件的所有文档 &#821…

    Linux干货 2017-04-17
  • LAMP+NFS实现双web服务负载均衡

        一、实验拓扑          二、系统环境      1、主机A、主机B、主机C:CentOS 6.5        测试PC:         Windows 7 旗舰…

    Linux干货 2015-07-06
  • 引导加载程序grub的使用详解

    引导加载程序grub的使用详解 为运行于虚拟机上的CentOS 6添加一个新硬件,提供两个主分区 为硬盘建两个主分区;并为其安装grub 为硬盘的第一个主分区提供内核和ramdisk文件;为第二个分区提供rootfs 为rootfs提供bash、ls、cat程序以及所依赖的库文件 为grub提供配置文件 将新的硬盘设置为第一启动项并能够正常启动目标主机 1.…

    Linux干货 2017-09-04