高级文件系统管理

为用户设定配额

 执行开始或取消配额:quotaon quotaoff

 取消编辑配额:edqouta username

 shell中直接编辑:setquota usename 80000 100000 0 0 /foo

 定义原始标准用户 :edquota -p user1 user2

实例如下:

配额的实现

1 启动配额功能

vim/etc/fstab

defoults usrquota,grpquota

mount -o remount /home

2 创建配额数据库

quotacheck -cug /home

3 启动数据库

quotaon /home

quotaon’ -p /home查看

4 创建用户配额

edquota xxxx

setquota xxxx 80000 100000 0 0 / home

edquota -p xxxx oooo 复制xxxx用户的配额

edquota -g g1 组配额

repquota /home查看

quota xxxx 查看某个用户

5 测试

切换到用户登录 在/home下建文件

 

RAID阵列

软件RAID的实现

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

mdadm 实现模式化工具

  -C 创建

  -A 装配

  -F 监控

  -f
-r -a
管理

-C 创建模式

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

  -l# 指明要创建的级别

  -a 自动创建目标RAID设备的设备文件

  -c 指明块大小

  -x 指明空闲的个数

-D 显示raid的详细信息

管理模式:

  -f 标记指定磁盘为损坏

  -a 添加磁盘

  -r 移除磁盘

  -G添加新成员

RAID管理

生成配置文件 mdadm
-Ds
/etc/mdadm.conf

停止设备 mdadm -S
/dev/md0

激活设备 mdadm -A
/dev/md0

强制启动 mdadm -R
/dev/md0

删除raid信息 mdadm –zero -superblock
/dev/sdb1

例子如下

raid 0 的创建

1 分区

 /dev/sdb1 /dev/sdc2 主要要选 t fd

2 创建

 mdadm -C /dev/md0 -a yes -l 0 -n 2 /dev/sdb1
/dev/sdc1

3 格式化

 mkfs.ext4 /dev/md0

4 挂载

 mount

 vim
/etc/fstab

 UUID=……………….  /mnt/raid0 ext4 defaults 0 0

 

raid5的创建

1 分区

/dev/sdd1 /dev/sde1 /dev/sdf /dev/sdb2 fd格式

2 创建

mdadm -C /dev/md5 -a yes -l 5 -n 3 -x 1
/dev/sdd1 /dev/sde1 /dev/sdf /dev/sdb2

3 格式化

mkfs.ext4 /dev/md5

4 挂载

mkdir /mnt/raid5

mount /dev/md5 /mnt/raid5

5 生成配置文件

mdadm -Ds > /etc/mdadm.conf

6 禁用和启用

umount /mnt/raid0

mdadm -S /dev/md0

mdadm -A /dev/md0

7 模拟损坏

mdadm /dev/md5 -f /dev/sde1

8 移除

mdadm /dev/md5 -r /dev/sde1

9 添加raid成员

mdadm /dev/md5 -a /dev/sde1

10 添加raid成员从3个到4

mdadm -G /dev/md5 -n 4 -a /dev/sdd3

resize2fs /dev/md5 同步文件系统

 

逻辑卷管理器

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

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

   将设备指定为物理卷

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

   物理卷是用固定的物理区域来定义

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

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

 

pv管理工具

显示pv信息

pvs 简要pv信息显示

pvdisplay

创建pv

pvcreate /dev/DEVICE

vg管理工具

vgs

vgdisplay

创建卷组

vgcreate

管理卷组

vgextend

删除卷组

pvmove vgmove

lv管理工具

显示逻辑卷

lvs

lvdisplay

创建逻辑卷

lvcreate -L100G

lvcreate -l 100%FREE

删除逻辑卷

lvremove

扩展逻辑卷

lvextend -L100G

缩减逻辑卷

lvreduce -L

 

例子如下:

LVM逻辑卷

1 准备分区或硬盘

分区 /dev/sdb1
/deb/sdc 8e
格式

2 创建pv物理卷

pvcreate /dev/sdb1 /dev/sdc

pvdisplay 查看

pvs

3 创建卷组

vgcreate -s16Mvg0 /dev/sdb1 /dev/sdc

vgs

vgdisplay查看

4 创建逻辑卷

lvcreate -n lv0 -L30Gvg0

lvs

lvdisplay

5 格式化

mkfs.ext4 /dev/vg0/lv0

6 挂载

mount /dev/vg0/lv0 /mnt/lv0

 

扩展

vgdisplay 查看

lvextend -L100G/dev/vg0/lv0

lvextend -l +100%FREE /dev/vg0/lv0

resize2fs /dev/vg0/lv0 刷新在线扩

或者

lvcreate -r -L100G/dev/vg0/lv0

vgextend vg0 /dev/sdd逻辑卷满了加硬盘

 更换磁盘,迁移PE到新磁盘

vgdisplay 先看

pvmove /dev/sdc

vgreduce vg0 /dev/sdc 从卷组中移除

pvremove /dev/sdc

 

缩减逻辑卷 缩到50G

1 备份

2 umount /mnt/lv0

3 e2fsck -f /dev/vg0/lv0 检查文件

4 resize2fs /dev/vg0/lv050G缩减文件系统

5 lvreduce -L50G/dev/vg0/lv0 缩减逻辑卷

6 mount /dev/vg0/lv0 /mnt/lv0

 

迁移卷组到新系统中

在源机器中

1 vgrename vg0 newvg0 改名

 lvrename
/dev/newvg0/lv0 newlv0
改名

2 umount /medial

3 vgchange -a n newvg0 先禁用

4 vgexport newvg0 导出

pvdisplay 查看

5 移除硬盘

在目标计算机上

1 插上硬盘

2 vgimport newvg0

3 vgchange -a y newvg0 激活

4 mount /dev/newvg0/newlv0 /mnt/newlv0

 

创建快照逻辑卷

lvcreate -s -n snaplv0 -L1G/dev/vg0/lv0 对谁做快照

mount -r /dev/vg0/snaplv0 /mnt/snap设置只读

恢复逻辑卷

umount /mnt/lv0

umount /mnt/snap

lvconvert –merge /dev/vg0/snaplv0

 

 

sed工具

用法:sed

常用选项

  -n 不自动打印

  -e 多点编辑

  -f 从指定文件中读取编辑脚本

  -r 支持扩展正则表达式

 
-i.bak
备份文件并原处编辑

编辑命令:

  d 删除模式空间匹配的行

  p 显示模式空间中的内容

  a 在指定行后面追加文本

  i 在行前面插入文本

  c 代替行为单行或多行文本

  w 保存

  r 读取指定文件的文本

  = 为模式空间中的行打印行号

  !取反

s/// 查找替换

代替标记:

  g 行内全局替换

  p 显示替换成功的行

  w保存

sed高级编辑命令

  h 把模式空间中的内容覆盖至保存空间中

  H把模式空间中的内容追加至保存空间中

  g 从保存空间取出覆盖模式空间

  G从保存空间取出追加模式空间

  x 模式空间内容和保存空间内容互换

  n 读取匹配的行的下一行覆盖至模式空间

  N 读取匹配的行的下一行追加至模式空间

  d 删除模式空间的行

  D 删除当前模式空间的内容

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

(0)
yaobinbinyaobinbin
上一篇 2017-05-02 15:42
下一篇 2017-05-02 19:01

相关推荐

  • N22-第四周作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@localhost ~]# cp -r /etc/skel /home/tuser1    (复制/etc/skel为/home/tuser1) [root@localho…

    Linux干货 2016-09-05
  • 第一周 Linux基础知识

    Linux基础

    2018-03-18
  • shell与kernel的理解

    Shell 的英文释义是外壳,与kernel 内核名词遥相呼应,一外一内,一壳一核。内核就像瑞士银行的金库,存放着客户的黄金等众多的(硬件)资产,闲杂人等(包括客户)当然是严格禁止入内的,而作为客户要存取金库中的资产则需要通过专门的特定管理人员代为操作完成,并把存取(操作)的结果呈现给客户。在Linux操作系统中,shell的职能就类似于金库的操作人员,客户…

    Linux干货 2016-02-14
  • Linux系统命令使用格式已经如何查看帮助

    在Linux 系统中有非常多的命令一般的命令格式:“COMMAND OPTIONS ARGUMENTS” 下面有一些基础命令可以体验下命令的基本格式用法 ifconfig命令    作用: 配置网络接口,查看网络接口信息    基本语法:     ifconfig  […

    Linux干货 2016-08-15
  • N25-第六周

    请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#;      cp /etc/rc.d/rc.sysinit /tmp     &nbsp…

    Linux干货 2017-03-08
  • dd命令详解及实战应用

    dd简述 dd在linux中是 一个强大的命令,常用于拷贝大量数据,测试读写效能 ,清空硬盘数据(慎用),不仅如此,由于dd 允许以二进制方式读写,所以特别适合在原始设备上输入、输出。 dd与cp的区别 这里有必要说明一下,两个命令都可用于拷贝,但是级别却完全不一样:cp是文件级别的读取方式,而dd更底层,可以数据块级别去读取硬盘,由此可看出在效率…

    Linux干货 2017-04-04