高级文件系统管理

为用户设定配额

 执行开始或取消配额: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

相关推荐

  • TCP连接的状态转移

    TCP是一个面向连接的传输层协议,因此不论哪一方需要传输数据,都需要在双方之间建立一条传输连接。 用TCP的三次握手与四次挥手来解释TCP的各个状态之间的会比较清晰。 一、TCP的三次握手: a)         单方主动发起连接: 1、  服务器端应用层的应用程序创建…

    2017-03-19
  • 网络配置详解(一)

    Linux网络属性配置      ifcfg命令家族:ifconfig, route, netstat      ifconfig命令:      ifconfig [INTERFACE]      # ifconfig -a 显示所有接口…

    Linux干货 2017-01-02
  • Hadoop新增datanode与SecondaryNameNode

    无论是新增namenode还是SecondaryNameNode,操作方法大致相同 一、如果新增datanode,需要保证namenode能无密码ssh连接到新datanode 如果是添加SecondaryNameNode,则需保证其能无密码ssh连接至各datanode和namenode,namenode也需要能无密码连接到新SecondaryNameNo…

    Linux干货 2015-03-08
  • shell编程之循环及函数

    for 循环 for 变量名 in 列表;do    循环体 done   执行机制: 依次将列表中的元素赋值给“变量名”; 每次赋值后即执行一次循环体; 直到列表中 的元素耗尽,循环结束   列表生成方式: (1)直接给出列表 (2)整数列表: (a) {start..end} (b) $(seq [start [s…

    Linux干货 2016-08-24
  • “拆”解RAID工作原理

    一、什么是RAID RAID:Redundant Arrays of Inexpensive(Independent)Disks,廉价(独立)的冗余磁盘阵列。1988年由加利福尼亚大学伯克利分校提出。使用多个相对便宜的磁盘通过某种方式组合成一个“阵列”,来提供更好的性能、冗余,或两者同时提供。 性能提高:     &n…

    Linux干货 2016-11-22
  • grub详解

    grub详解 1、GRUB(Boot Loader): grub:grub 0.x:grub1 legacy传统的版本 grub 1.x:grub2 grub legacy: 第1阶段:mbr 第1.5阶段:mbr之后的扇区中,让第一阶段中的boot loader能识别第二阶段所在分区上的文件系统 第2阶段:磁盘分区(/boot/grub/) 配置文件/et…

    2017-09-03