1. 程式人生 > >lvm 邏輯卷的快照及備份 還原

lvm 邏輯卷的快照及備份 還原

1. LVM的快照概述     LVM機制還提供了對LV做快照的功能,以此來獲得檔案系統的狀態一致性備份。LVM採用寫時複製技術(Copy-On-Write,COW),不用停止服務或將邏輯卷設為只讀就可以進行備份,使用LVM快照功能既可以獲得一致備份,又不會影響伺服器的可用性。     LVM採用的寫時複製,是指當LVM快照建立的時候,僅複製原始卷中資料的元資料。換句話說,也就是在建立LVM邏輯卷的時候,並不會發生資料的物理複製。再換句話說,複製元資料,不復制物理資料,夠清楚了吧?因此快照的建立幾乎是實時的。當原始捲上有寫的操作執行時,快照會跟蹤原始卷中塊的改變,這個時候原始捲上將要改變的資料會在改變之前拷貝到快照預留的空間。 2.建立LVM快照     建立快照實際上也是建立了一個邏輯卷,只不過該卷的屬性與普通邏輯卷的屬性有些不一樣。下面以/dev/vg6/ftpdata建立一個大小為500M的快照為例,演示快照創建於使用的方法。 首先我們先看一下/dev/vg6/ftpdata裡面的內容,裡面有很多檔案. 前期的一些步驟,我就不多說了
[[email protected] Desktop]# pvcreate /dev/sda5
  Writing physical volume data to disk "/dev/sda5"
  Physical volume "/dev/sda5" successfully created
[[email protected] Desktop]# vgcreate vg5 /dev/sda5
  Volume group "vg5" successfully created
[[email protected] Desktop]# vgs
  VG         #PV #LV #SN Attr   VSize  VFree 
  vg5          1   0   0 wz--n- 10.00g 10.00g
  vg_yangcan   1   2   0 wz--n- 19.51g     0 
[[email protected] Desktop]# lvcreate -L 6G -n ftp vg5
  Logical volume "ftp" created
[[email protected] Desktop]# mkdir /ftp
[[email protected] Desktop]# mke2fs -T ext4 /dev/mapper/vg5-ftp 
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
393216 inodes, 1572864 blocks
78643 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=1610612736
48 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 31 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
[[email protected] /]# mount /dev/mapper/vg5-ftp /ftp/
[[email protected] /]# mount|grep ftp
/dev/mapper/vg5-ftp on /ftp type ext4 (rw)
[[email protected] /]# df -h |grep ftp
/dev/mapper/vg5-ftp   6.0G  140M  5.5G   3% /ftp
[[email protected] /]# cd /ftp/
[[email protected] ftp]# ll
total 16
drwx------. 2 root root 16384 Aug  2 21:12 lost+found 
[[email protected] ftp]# cp /etc/*.conf .
[[email protected] ftp]# cp /usr/share/dict/linux.words .
[[email protected] ftp]# ll
total 5112
-rw-r--r--. 1 root root     148 Aug  2 21:18 asound.conf
-rw-------. 1 root root     232 Aug  2 21:18 autofs_ldap_auth.conf
-rw-r--r--. 1 root root    1780 Aug  2 21:18 cas.conf
-rw-r--r--. 1 root root   21214 Aug  2 21:18 dnsmasq.conf
-rw-r--r--. 1 root root     559 Aug  2 21:18 dracut.conf
-rw-r--r--. 1 root root      20 Aug  2 21:18 fprintd.conf
-rw-r--r--. 1 root root       0 Aug  2 21:18 gai.conf
-rw-------. 1 root root     821 Aug  2 21:18 grub.conf
..........................
我們在這個時刻拍一個快照
[[email protected] ~]# lvcreate -L 500M -n snap-ftp -s  /dev/vg5/ftp 
  Logical volume "snap-ftp" created
我們檢視一下邏輯卷和快照的資訊!
[[email protected] ~]# lvdisplay 
  --- Logical volume ---
  LV Name                /dev/vg5/ftp
  VG Name                vg5
  LV UUID                tRDd7b-jYiA-bxA3-KtUx-mYZW-xwHL-21SSVk
  LV Write Access        read/write
  LV snapshot status     source of
                         /dev/vg5/snap-ftp [active]
  LV Status              available
  # open                 1
  LV Size                6.00 GiB
  Current LE             1536
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:2
   
  --- Logical volume ---
  LV Name                /dev/vg5/snap-ftp
  VG Name                vg5
  LV UUID                0y8tuc-GdFu-duvd-fSDt-wsLQ-fYWa-q6hOd3
  LV Write Access        read/write
  LV snapshot status     active destination for /dev/vg5/ftp
  LV Status              available
  # open                 0
  LV Size                6.00 GiB
  Current LE             1536
  COW-table size         500.00 MiB
  COW-table LE           125
  Allocated to snapshot  0.00% --此時的使用率為0
  Snapshot chunk size    4.00 KiB
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:3

我們另外開一個控制檯,時刻檢視快照的使用大小
[[email protected] ftp]# watch -n 0.5 "lvdisplay /dev/vg5/snap-ftp |grep %"

我們在開一個控制檯,用於增加ftp檔案的大小,此刻我們用的是ls的定向輸出到檔案ls.txt.因為此過程較長,我們我們有充分的時間看Allocated to snapshot大小的變化

[[email protected] ftp]# (ls -lR / ;ls -lR /)&>./ls.txt

t1時刻--ls還未完成


t2時刻--ls已經完成!!

 
ls已經完成,我們看一下 Allocated to snapshot 大小的變化
[[email protected] ~]# lvdisplay 
  --- Logical volume ---
  LV Name                /dev/vg5/snap-ftp
  VG Name                vg5
  LV UUID                0y8tuc-GdFu-duvd-fSDt-wsLQ-fYWa-q6hOd3
  LV Write Access        read/write
  LV snapshot status     active destination for /dev/vg5/ftp
  LV Status              available
  # open                 0
  LV Size                6.00 GiB
  Current LE             1536
  COW-table size         500.00 MiB
  COW-table LE           125
  Allocated to snapshot  5.86% 
  Snapshot chunk size    4.00 KiB
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:3

我們在t3時刻DD新建一下檔案10M-t1

[[email protected] ftp]# dd if=/dev/zero of=./10M-t1 bs=1M count=10
10+0 records in
10+0 records out
10485760 bytes (10 MB) copied, 0.0276569 s, 379 MB/s
我們在t4時刻DD新建一下檔案 10M-t1
[[email protected] ftp]# dd if=/dev/zero of=./20M-t2 bs=1M count=20
20+0 records in
20+0 records out
20971520 bytes (21 MB) copied, 0.0647524 s, 324 MB/s
 
我們掛載快照,看下里面的檔案!
[[email protected] ftp]# mkdir /snap-ftp
[[email protected] ftp]# mount /dev/mapper/vg5-snap--ftp /snap-ftp/

對比一下! 
 /dev/vg5/ftp掛載目錄/ftp的檔案!
[[email protected] ftp]# ll -nt 
total 65512
-rw-r--r--. 1 0 0 20971520 Aug  2 21:35 20M-t2
-rw-r--r--. 1 0 0 10485760 Aug  2 21:31 10M-t1
-rw-r--r--. 1 0 0 30389219 Aug  2 21:26 ls.txt
-rw-r--r--. 1 0 0  4953699 Aug  2 21:18 linux.words
-rw-r--r--. 1 0 0      969 Aug  2 21:18 yum.conf
-rw-r--r--. 1 0 0      585 Aug  2 21:18 yp.conf
-rw-r--r--. 1 0 0     3001 Aug  2 21:18 warnquota.conf
-rw-r--r--. 1 0 0      480 Aug  2 21:18 updatedb.conf
-rw-r--r--. 1 0 0       45 Aug  2 21:18 Trolltech.conf
-rw-r--r--. 1 0 0     1314 Aug  2 21:18 tpvmlp.conf
-rw-r--r--. 1 0 0     1148 Aug  2 21:18 sysctl.conf
-rw-r--r--. 1 0 0      260 Aug  2 21:18 sos.conf
-rw-r--r--. 1 0 0     1272 Aug  2 21:18 smi.conf
-rw-r--r--. 1 0 0     6463 Aug  2 21:18 smartd.conf
-rw-r--r--. 1 0 0      216 Aug  2 21:18 sestatus.conf
-rw-r--r--. 1 0 0     2741 Aug  2 21:18 rsyslog.conf
-rw-r--r--. 1 0 0      103 Aug  2 21:18 resolv.conf
..........................
 快照 /dev/mapper/vg5-snap--ftp 掛載的/snap-ftp/
[[email protected] ftp]# cd /snap-ftp/
[[email protected] snap-ftp]# ll -nt 
total 5112  --和最初的大小一樣
-rw-r--r--. 1 0 0 4953699 Aug  2 21:18 linux.words
-rw-r--r--. 1 0 0     969 Aug  2 21:18 yum.conf
-rw-r--r--. 1 0 0     585 Aug  2 21:18 yp.conf
-rw-r--r--. 1 0 0    3001 Aug  2 21:18 warnquota.conf
-rw-r--r--. 1 0 0     480 Aug  2 21:18 updatedb.conf
-rw-r--r--. 1 0 0      45 Aug  2 21:18 Trolltech.conf
-rw-r--r--. 1 0 0    1314 Aug  2 21:18 tpvmlp.conf
-rw-r--r--. 1 0 0    1148 Aug  2 21:18 sysctl.conf
-rw-r--r--. 1 0 0     260 Aug  2 21:18 sos.conf
-rw-r--r--. 1 0 0    1272 Aug  2 21:18 smi.conf
-rw-r--r--. 1 0 0    6463 Aug  2 21:18 smartd.conf
-rw-r--r--. 1 0 0     216 Aug  2 21:18 sestatus.conf
-rw-r--r--. 1 0 0    2741 Aug  2 21:18 rsyslog.conf
-rw-r--r--. 1 0 0     103 Aug  2 21:18 resolv.conf
-rw-r--r--. 1 0 0    1484 Aug  2 21:18 request-key.conf
...................................
對比一下/ftp  和 /snap-ftp.在 /snap-ftp裡面.並沒有新增加的20M-t2,10M-t1等檔案!這就是快照的作用,保持邏輯卷拍快照的時間點的原始資訊! 當我們刪除原檔案系統的檔案時,觀察下快照大小的變化
[[email protected] ftp]# rm -rf ./*
[[email protected] ftp]# ll
total 0

[[email protected] ftp]# lvdisplay |grep %
  Allocated to snapshot  11.92%   
--沒有什麼變化,當我們刪除資料的時候.真正存放資料的block區塊並沒有變化,真正變化的是inode節點表的資訊被刪了

備份-還原資料
[[email protected] ~]# dump -0u /tmp/ftpdata.bak.dump /snap-ftp

[[email protected] yum.repos.d]# mkdir /ftpdata
[[email protected] yum.repos.d]# cd /ftpdata/
[[email protected] ftpdata]# restore -rf /tmp/ftpdata.bak.dump

相關推薦

lvm 邏輯快照備份 還原

1. LVM的快照概述     LVM機制還提供了對LV做快照的功能,以此來獲得檔案系統的狀態一致性備份。LVM採用寫時複製技術(Copy-On-Write,COW),不用停止服務或將邏輯卷設為只讀就可以進行備份,使用LVM快照功能既可以獲得一致備份,又不會影響伺服器的

實現LVM邏輯卷數據庫備份還原,二進制日誌文件分離存放

實現LVM邏輯卷快照數據備份還原首先需要做到的是就是數據庫文件,以及二進制日誌文件全部放在單獨的邏輯卷存儲。 實現LVM邏輯卷,數據,二進制日誌文件分離存放 一,創建邏輯卷步驟 (1),創建新分區 1,查看分區情況看看還剩多少空間 [root@centos7 backup]# lsblk NA

在Linux系統中,實現LVM邏輯管理磁盤配額

Linux LVM邏輯卷 磁盤管理配額 LVM(Logical Volume Manager)是Linux系統中對磁盤分區進行管理的一種邏輯機制,他是建立在磁盤和分區之上的一個邏輯層,能夠在保持現有數據不變的情況下動態調整磁盤容量,從而提高磁盤管理的靈活性。 1. 執行命令 fdisk -l 來查

Linux磁碟管理之LVM邏輯快照

  一、快照的工作原理   所謂快照就是將當時的系統資料記錄下來,在未來若有資料變動,則會將變更前的資料放入快照區進行儲存。我們可理解為快照就是給系統拍了一張照片,記錄當時系統在拍快照的狀態。只不過現實生活中的照片是沒有辦法將現在的生活還原到照片的時候,而Linux系統裡LVM快照是可以的。從上面的闡述可以瞭

lvm邏輯的基本應用,擴展縮減、快照功能實現方法

mapper tcl 磁盤擴容 align fsck 縮減 mark 替換 1.5 lvm:邏輯卷管理 作用:將多個物理磁盤組合成一個邏輯磁盤,使其擁有更大的磁盤空間邏輯磁盤結構如下:一、下面一Centos6 為例來創建 lvm,首先在虛擬機上添加3塊硬盤,大小自定。1、f

LVM邏輯-創建、擴容、縮減、遷移、快照

網絡 linux LVM邏輯卷邏輯卷管理工具,允許在多個物理設備之間重新組織文件系統,包括重新設定文件系統的大小PE 物理盤區,類似於磁盤中的block邏輯卷的基本存儲單位就是PEdm:device mapper將一個或多個底層塊設備組織成一個邏輯設備的模塊設備名:/dev/dm-# //系統自動

Linux運維之道之admin1.5(分區規劃使用,lvm邏輯,交換空間)

linux 達內 雲計算 admin1.5分區規劃及使用:硬盤分區管理:使用fdisk分區工具:查看分區列表:--fdisk -l /dev/sda修改硬盤的分區表:--fdisk /dev/vdb常用交互命令:-m:列出指令幫助;-p:查看現有分區表;-n:新建分區;-d:刪除分區;-q:放

Linux創建LVM邏輯實現磁盤配額

Linux 邏輯卷 磁盤配額 1、添加兩塊新的磁盤sdb、sdc;2、配置第一塊磁盤sdb,並更改其分區類型;3、同理將第二塊磁盤sdc進行配置;並更改其分區類型;4、將兩塊磁盤逐步設置為;物理卷、卷組和邏輯卷;5、將邏輯卷格式化並掛載;6、設置自動掛載(方便以後開機使用時不用每次手動掛載),添

分區規劃使用、LVM邏輯

最大 .... 文件格式 mount -a app oot 掛載分區 保存 size 分區規劃 扇區的大小:默認 512 字節 ? 識別硬盤 => 分區規劃 => 格式化 => 掛載使用 一、分區規劃 MBR分區模式 最大2TB空間 – 三種分區

Linux下配置RAID5 LVM邏輯磁盤配額的實驗

src cad ima 內容 中新 fst 寫文件 install mage 一:實驗要求 1) 添加四塊硬盤, 建立RAID5環境(md5), 三主一備; 2)將md5使用LVM做成VG01組,在該VG中新建兩個LV, 3)將這兩個LV格式化為ext4\xfs,開機自

LVM邏輯管理--在線擴容、邏輯組容量縮減、邏輯快照

劃分 分區信息 包括 管理 troy 系統 避免 理解 req LVM邏輯卷管理公司生產環境中使用了LVM邏輯卷管理,所以今天花時間整理一下。通過LVM技術整合所有的磁盤資源進行分區,然後創建PV物理卷形成一個資源池,再劃分卷組,最後在卷組上創建不同的邏輯卷,繼而初始化邏輯

分割槽規劃使用、LVM邏輯

NSD ENGINEER DAY01 案例1:硬碟分割槽及格式化 案例2:新建一個邏輯卷 案例3:調整現有磁碟的分割槽 案例4:擴充套件邏輯卷的大小 1 案例1:硬碟分割槽及格式化 1.1 問題 本例要求熟悉硬碟分割槽結構,使用fdisk分割槽工具在磁碟 /dev/vdb

LVM邏輯詳解建立

     我們先來看一下這張圖片: PV: 底層的一個硬碟裝置,可以是一個分割槽,也可能是一個RAID。我們可以把這個塊裝置建立成一個物理卷格式,即一個PV。 VG: 將一個或多個PV提供的儲存空間在一個更低的單位上劃分成一個個獨立的儲存單元,並且把這些儲存單元

邏輯lvm的管理(邏輯的建立 、掛載 、擴容與縮容、指定pe的大小 、邏輯快照的製作 、物理分割槽的徹底刪除)

邏輯卷的管理 概述: 物理分割槽: 用來製作物理卷 物理卷: pv 用來組成物理卷組 ;包含整數個 pe(物理拓展) 物理卷組 : vg 用來製作邏輯卷 邏輯卷: lvm 它的作用是實現硬碟的無限分割槽與擴容 1.邏輯卷的建立 (1).建立物理分割槽

Linux LVM邏輯配置過程詳解(建立、擴充套件、縮減、刪除、解除安裝、快照建立)

一、預備知識 LVM全稱為Logical Volume Manager邏輯卷管理器,LVM是Linux環境中對磁碟分割槽進行管理的一種機制,是建立在硬碟和分割槽之上、檔案系統之下的一個邏輯層,可提高磁碟分割槽管理的靈活性。其中 PV:Physical Volume物理卷 VG:volume Group卷組

LVM邏輯創建擴展

pvs 中比 技術 dev 多個 xfs 方法 管理機 img 一:LVM邏輯卷管理:邏輯卷管理LVM是linxu系統中比較重要的一種磁盤管理機制,管理員利用LVM可以在磁盤不用重新分區的情況下動態調整文件系統的大小,並且利用LVM管理的文件系統可以跨越磁盤。當服務器添加了

LVM邏輯組的新建調整

LVM邏輯卷 練習:關閉虛擬機器,新增一場80G 的硬碟,劃分3個主分割槽,1個擴充套件分割槽,3個邏輯分割槽,每個分割槽10G  傳統分割槽的侷限性:1)分割槽容量調整不方便                   2)單個分割槽的總大小有限 LVM邏輯卷(Logica

LVM 邏輯擴容方法步驟

根據LVM-HOWTO整理了一下邏輯卷的擴容方法,以免將來忘記。 假設VG名為VolGroup01,LV名為lv_data,新增的磁碟為/dev/sdb 1. 使用fdisk建立一個Id為8e (Linux LVM)的分割槽 fdisk /dev/sdb   n (新建分

LVM邏輯管理

文件系統管理 物理卷 動態分區 邏輯卷擴展 楊書凡 LVM概述LVM是邏輯盤卷管理(Logical Volume Manager)的簡稱,它是Linux環境下對磁盤分區進行管理的一種機制,LVM是建立在硬盤和分區之上的一個邏輯層,來提高磁盤分區管理的靈活性。LVM的工作原理其實很簡單,它就

LVM邏輯

linux 邏輯卷 lvm 邏輯卷LVM小實驗LVM全名是 Logical Volume Manager,中文翻譯作逡輯滾動條管理員,我還是喜歡叫邏輯卷。簡單好記QWQ邏輯卷裏面有幾個名詞需要介紹一下!1.PhysicalVolume,實體滾動條,簡稱PV。2.Physical Extend,實體