Linux基础学习之Day7-7-LVM快照snapshot

Linux基础学习之从入门到精通Day7-7

LVM快照snapshot

1. 创建快照 (EXT4)

[root@server0 ~]# lvcreate -L 128M -s -n lv2-snap /dev/vg1/lv2
[root@server0 ~]# lvs
LV VG Attr LSize Pool Origin Data% Move Log Cpy%Sync Convert
lv1 vg1 -wi-ao---- 768.00m
lv2 vg1 owi-aos— 512.00m
lv2-snap vg1 swi-aos— 128.00m lv2 5.92

[root@server0 ~]# mount -o ro /dev/vg1/lv2-snap /mnt/lv2-snap/ 不希望破坏快照卷中的数据

[root@server0 ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/vg1-lv2 ext4 488M 32M 429M 7% /mnt/lv2
/dev/mapper/vg1-lv2–snap ext4 488M 32M 429M 7% /mnt/lv2-snap

[root@server0 ~]# lvscan
ACTIVE ‘/dev/vg1/lv1’ [768.00 MiB] inherit
ACTIVE Original ‘/dev/vg1/lv2’ [512.00 MiB] inherit
ACTIVE Snapshot ‘/dev/vg1/lv2-snap’ [128.00 MiB] inherit

[root@server0 ~]# ls /mnt/lv2
etc lost+found
[root@server0 ~]# ls /mnt/lv2-snap/
etc lost+found

  1. 修改原卷的数据

  2. 观察Snapshot
    [root@server0 ~]# lvs
    LV VG Attr LSize Pool Origin Data% Move Log Cpy%Sync Convert
    lv1 vg1 -wi-ao---- 768.00m
    lv2 vg1 owi-aos— 512.00m
    lv2-snap vg1 swi-aos— 128.00m lv2 30.56

XFS:
[root@server0 ~]# mount -o nouuid,ro /dev/vg1/lv1-snap /mnt/lv1-snap/s
挂载快照,尽量使用ro的方式,将不会破坏快照卷中的数据

[root@server0 ~]# dmsetup ls --tree
vg1-lv2–snap (252:5)
├─vg1-lv2–snap-cow (252:7)
│ └─ (253:17)
└─vg1-lv2-real (252:6)
├─ (253:17)
└─ (253:18)
vg1-lv2 (252:1)
└─vg1-lv2-real (252:6)
├─ (253:17)
└─ (253:18)

快照自动增长:
[root@server0 ~]# vim /etc/lvm/lvm.conf
snapshot_autoextend_threshold = 70
snapshot_autoextend_percent = 20
[root@server0 ~]# systemctl restart lvm2-monitor.service
[root@server0 ~]# systemctl enable lvm2-lvmetad.service

注:快照卷 和 原卷 使用同一VG空间

磁盘阵列 RAID

RAID类型 个数 利用率 优缺点
------------------------------------------------------
RAID0 条带集 2+ 100% 读写速率最快,不容错
RAID1 镜像集 2 50% 读写速率一般,容错
RAID5 带奇偶校验条带集 3+ (n-1)/n 读写速率快,容错,允许坏一块
RAID6 带奇偶校验条带集双校验dp 4+ (n-2)/n 读写快,容错,允许坏两块
RAID01
RAID10 RAID1的安全+RAID0的高速 4 50% 读写速率快,容错
RAID50 RAID5的安全+RAID0的高速 6 (n-2)/n 读写速率快,容错
RAID60 RAID6的安全+RAID0的高速 8 (n-4)/n 读写速率快,容错
------------------------------------------------------
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

一、不同场景RAID的使用

RAID 实现方式
硬RAID: 需要RAID卡,有自己的CPU,处理速度快,有电池和无电池
软RAID: 通过操作系统实现,比如Windows、Linux

二、RAID5 (3块硬盘) + 热备(1块硬盘)

  1. 准备4块硬盘
    [root@~]# ll /dev/sd*
    brw-rw---- 1 root disk 8, 48 Jan 13 16:07 /dev/sdd
    brw-rw---- 1 root disk 8, 64 Jan 13 16:07 /dev/sde
    brw-rw---- 1 root disk 8, 80 Jan 13 16:07 /dev/sdf
    brw-rw---- 1 root disk 8, 80 Jan 13 16:07 /dev/sdg

  2. 创建RAID
    [root@~]# yum -y install mdadm //确保mdadm命令可用
    [root@~]# mdadm -C /dev/md0 -l5 -n3 -x1 /dev/sd{d,e,f,g}
    mdadm: array /dev/md0 started.
    -C 创建RAID
    /dev/md0 第一个RAID设备
    -l5 RAID5
    -n RAID成员的数量
    -x 热备磁盘的数量

  3. 格式化,挂载
    [root@~]# mkfs.xfs /dev/md0
    [root@~]# mkdir /mnt/raid5
    [root@~]# mount /dev/md0 /mnt/raid5
    [root@~]# cp -rf /etc /mnt/raid5/etc1

  4. 查看RAID信息
    [root@tianyun ~]# mdadm -D /dev/md0 //-D 查看详细信息
    /dev/md0:
    Version : 1.2
    Creation Time : Mon Jan 13 16:28:47 2014
    Raid Level : raid5
    Array Size : 2095104 (2046.34 MiB 2145.39 MB)
    Used Dev Size : 1047552 (1023.17 MiB 1072.69 MB)
    Raid Devices : 3
    Total Devices : 4
    Persistence : Superblock is persistent

    Update Time : Mon Jan 13 16:34:51 2014
    State : clean
    Active Devices : 3
    Working Devices : 4
    Failed Devices : 0
    Spare Devices : 1

      Layout : left-symmetric
    

    Chunk Size : 512K
    Number Major Minor RaidDevice State
    0 8 48 0 active sync /dev/sdd
    1 8 64 1 active sync /dev/sde
    4 8 80 2 active sync /dev/sdf

    3       8       96        -      spare   /dev/sdg
    
  5. 模拟一块硬盘损坏,并移除
    终端一:
    [root@~]# watch -n 0.5 ‘mdadm -D /dev/md0 | tail’ //watch持续查看
    终端二:
    [root@~]# mdadm /dev/md0 -f /dev/sde -r /dev/sde
    //模拟坏了并移除 -f --fail -r --remove

  6. 设置RAID开机生效
    [root@~]# mdadm -D -s
    ARRAY /dev/md0 metadata=1.2 name=sxl1.com:0 UUID=c6761621:8878498f:f5be209e
    [root@~]# mdadm -D -s > /etc/mdadm.conf

========================================================
mdadm选项:
-s --scan
-S --stop
-D --detail
-C --create
-f --fail
-r --remove
-n --raid-devices=3
-x --spare-devices=1
-l --level=5

lsof 恢复文件

lsof (list open files)
FD 文件句柄

在这里插入图片描述

1. 查看打开文件message的进程/var/log/messages

[root@~]# lsof |grep message
lsof: WARNING: can’t stat() fuse.gvfsd-fuse file system /run/user/42/gvfs
Output information may be incomplete.
abrt-watc 751 root 4r REG 253,0 30056298 36565121 /var/log/messages
rsyslogd 1316 root 4w REG 253,0 30056298 36565121 /var/log/messages
in:imjour 1316 1322 root 4w REG 253,0 30056298 36565121 /var/log/messages
rs:main 1316 1323 root 4w REG 253,0 30056298 36565121 /var/log/messages

2. 备份后模拟误删除文件

[root@~]# cp -rf /var/log/messages /var/log/messages.bak
[root@~]# rm -rf /var/log/messages

3. lsof再次查看message文件状态

[root@~]# lsof |grep message
lsof: WARNING: can’t stat() fuse.gvfsd-fuse file system /run/user/42/gvfs
Output information may be incomplete.
rsyslogd 1316 root 4w REG 253,0 30063165 36565121 /var/log/messages (deleted)
in:imjour 1316 1322 root 4w REG 253,0 30063165 36565121 /var/log/messages (deleted)
rs:main 1316 1323 root 4w REG 253,0 30063165 36565121 /var/log/messages (deleted)

4. 查看相应进程的文件描述符FD

在这里插入图片描述

5. 通过文件描述符查看文件的内容

在这里插入图片描述

6. 通过文件描述符恢复删除的文件

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值