xfsdump命令使用
一:使用xfsdump备份和恢复xfs文件系统
首先了解一下xfsdump的备份级别有以下两种,默认为0(即完全备份)
0 完全备份
1 <= level <= 9 增量备份
1.创建xfs文件系统并挂载到/data目录下
Linux-x4xj:~ # mkfs.xfs /dev/sdb
linux-x4xj:~ # mkdir /data
linux-x4xj:~ # mount /dev/sdb /data
linux-x4xj:~ # df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 4.0G 1.6G 2.2G 43% /
devtmpfs 465M 168K 465M 1% /dev
tmpfs 465M 0 465M 0% /dev/shm
/dev/sdb 20G 33M 20G 1% /data
linux-x4xj:~ #
2.备份测试
首先复制一些文件到/data目录下,以便测试,如下所示
linux-x4xj:~ # ls -l /data
total 1792
-rwxr--r-- 1 nobody nobody 1832960 Sep 1314:12 iozone3_429.tar
drwxr-xr-x 2 nobody nobody 102 Sep 16 20:46 lustre-client-el5.8-2.1.6
linux-x4xj:~ #
◆首先备份/data整个目录到/tmp目录下
测试过程中发现:如果命令这样写xfsdump -f /tmp/dump_data /data/,就会提示错误(xfsdump:ERROR: /data/ does not identify a file system)
linux-x4xj:~ # xfsdump -f /tmp/dump_data /data/
xfsdump: using file dump (drive_simple)strategy
xfsdump: version 3.0.5 (dump format 3.0) -Running single-threaded
============================= dump labeldialog ==============================
please enter label for this dump session(timeout in 300 sec)
-> dump_data
session label entered:"dump_data"
---------------------------------end dialog ---------------------------------
xfsdump: ERROR:/data/ does not identify a file system
xfsdump: usage: xfsdump [ -a (dump DMFdualstate files as offline) ]
*
*
*
必须要这样写xfsdump -f /tmp/dump_data /data(即/data后面的/不能要)这样才能成功
linux-x4xj:~ # xfsdump -f /tmp/data_dump /data
xfsdump: using file dump (drive_simple)strategy
xfsdump: version 3.0.5 (dump format 3.0) -Running single-threaded
============================= dump labeldialog ==============================
please enter label for this dump session(timeout in 300 sec)
-> data_dump
session label entered:"data_dump"
--------------------------------- end dialog---------------------------------
xfsdump: level 0 dump of linux-x4xj:/data
xfsdump: dump date: Tue Sep 16 20:58:582014
xfsdump: session id:ca3390ef-1a8c-429b-8d87-4e60d22d3c54
xfsdump: session label: "data_dump"
xfsdump: ino map phase 1: constructinginitial dump list
xfsdump: ino map phase 2: skipping (nopruning necessary)
xfsdump: ino map phase 3: skipping (onlyone dump stream)
xfsdump: ino map construction complete
xfsdump: estimated dump size: 70670208bytes
============================= media labeldialog =============================
please enter label for media in drive 0(timeout in 300 sec)
-> media0
media label entered: "media0"
--------------------------------- end dialog---------------------------------
xfsdump: creating dump session media file 0(media 0, file 0)
xfsdump: dumping ino map
xfsdump: dumping directories
xfsdump: dumping non-directory files
xfsdump: ending media file
xfsdump: media file size 70680352 bytes
xfsdump: dump size (non-dir files) :70656816 bytes
xfsdump: dump complete: 9 seconds elapsed
xfsdump: Dump Status: SUCCESS
linux-x4xj:~ # ls -l /tmp/data_dump
-rw-r--r-- 1 root root 70680352 Sep 1620:59 /tmp/data_dump
linux-x4xj:~ #
以上为会话模式,即会提示让你输入label for session和label for dump,可以用下面的命令运行,就不会出现会话模式了
linux-x4xj:~ # xfsdump -f /tmp/data_dump /data -L data_dump -M data_dump
◆备份/data目录下的lustre-client-el5.8-2.1.6子目录到/tmp目录下,命令如下
linux-x4xj:~ # xfsdump -f /tmp/data_lustre_client_dump -s lustre-client-el5.8-2.1.6 /data -L data_lustre_client_dump -M media0 (注意子目录前面不能有/,最后面也不能有/)
xfsdump: using file dump (drive_simple)strategy
xfsdump: version 3.0.5 (dump format 3.0) -Running single-threaded
xfsdump: level 0 dump of linux-x4xj:/data
xfsdump: dump date: Tue Sep 16 21:07:14 2014
xfsdump: session id:12d13ad4-47d2-4ea5-94df-afc2d71cb6a4
xfsdump: session label:"data_lustre_client_dump"
xfsdump: ino map phase 1: constructinginitial dump list
xfsdump: ino map phase 2: skipping (nopruning necessary)
xfsdump: ino map phase 3: skipping (onlyone dump stream)
xfsdump: ino map construction complete
xfsdump: estimated dump size: 68834880bytes
xfsdump: creating dump session media file 0(media 0, file 0)
xfsdump: dumping ino map
xfsdump: dumping directories
xfsdump: dumping non-directory files
xfsdump: ending media file
xfsdump: media file size 68845344 bytes
xfsdump: dump size (non-dir files) :68822096 bytes
xfsdump: dump complete: 0 seconds elapsed
xfsdump: Dump Status: SUCCESS
linux-x4xj:~ # ls -l /tmp/data_lustre_client_dump
-rw-r--r-- 1 root root 68845344 Sep 1621:07 /tmp/data_lustre_client_dump
linux-x4xj:~ #
◆克隆/data(备份所有内容到另一个目录或到另一个硬盘下),本次新加了一个盘用作备份,挂载到了/data2下,开始克隆,命令如下
linux-x4xj:~ #xfsdump - /data | xfsrestore - /data2
或者
linux-x4xj:~ #xfsdump -l 0 - /data | xfsrestore - /data2 (因为默认级别为0)
linux-x4xj:~ # ll /data
total 1792
-rwxr--r-- 1 nobodynobody 1832960 Sep 13 14:12 iozone3_429.tar
drwxr-xr-x 2 nobodynobody 102 Sep 16 20:46lustre-client-el5.8-2.1.6
linux-x4xj:~ # ll /data2/
total 1792
-rwxr--r-- 1 nobodynobody 1832960 Sep 13 14:12 iozone3_429.tar
drwxr-xr-x 2 nobodynobody 102 Sep 16 20:46lustre-client-el5.8-2.1.6
linux-x4xj:~ #
◆只克隆/data下的子目录lustre-client-el5.8-2.1.6到/data2目录下,命令如下
linux-x4xj:~ #xfsdump - -s lustre-client-el5.8-2.1.6 /data | xfsrestore - /data2
或者
linux-x4xj:~ #xfsdump -l 0 - -s lustre-client-el5.8-2.1.6 /data | xfsrestore - /data2
linux-x4xj:~ # ll /data2/
total 0
drwxr-xr-x 2 nobodynobody 102 Sep 16 20:46 lustre-client-el5.8-2.1.6
linux-x4xj:~ #
3.查看会话存档
可以使用xfsdump -I来查看session存档
linux-x4xj:~ #xfsdump -I (从存档中选择了一个会话内容如下)
session 2:
mount point: linux-x4xj:/data
device: linux-x4xj:/dev/sdb
time: Tue Sep 16 20:58:58 2014
session label: "data_dump" (会话标识)
session id: ca3390ef-1a8c-429b-8d87-4e60d22d3c54
level: 0
resumed: NO
subtree: NO
streams: 1
stream 0:
pathname: /tmp/data_dump
start: ino 131 offset 0
end: ino 136 offset 0
interrupted: NO
media files: 1
media file 0:
mfileindex: 0
mfiletype: data
mfilesize: 70680352
mfilestart: ino 131 offset 0
mfile end: ino 136 offset 0
medialabel: "media0" (介质标识)
media id: 43881f83-231f-4835-a858-4d4ade150efe
4.使用xfsrestore恢复数据
★模拟删除/data目录内的所有内容,然后恢复数据
linux-x4xj:~ # rm -rf /data/*
linux-x4xj:~ #xfsrestore -f /tmp/data_dump /data
★根据会话标识,只恢复某个文件或者是子目录
linux-x4xj:~#xfsrestore-f /tmp/data_dump -L data_dump -s lustre-client-el5.8-2.1.6 /data
5.在没有进行恢复之前可以通过xfsrestore -f /tmp/data_dump -t查看data_dump内容
xfsdump命令使用的更多相关文章
- Linux 文件恢复(XFS & EXT4)
在Linux中,删除rm命令使用需谨慎,有时候可能由于误操作,导致重要文件删除了,这时不要太紧张,操作得当的话,还是可以恢复的. EXT 类型文件恢复 删除一个文件,实际上并不清除inode节点和bl ...
- 实战:xfs文件系统的备份和恢复
概述 XFS提供了 xfsdump 和 xfsrestore 工具协助备份XFS文件系统中的数据.xfsdump 按inode顺序备份一个XFS文件系统. centos7选择xfs格式作为默认文件系统 ...
- linux文件系统和日志分析
一.Linux文件系统 1.inode与block 1.概述: (1)文件数据包括元信息与实际信息 (2)文件存储在硬盘上,硬盘最小存储单位是"扇区",每个扇区存储512字节 (3 ...
- 深入理解Linux文件系统与日志分析
一.inode和bolck概述 二.链接文件 三.inode节点耗尽故障处理 四.EXT类型文件恢复 五.xfs文件备份和恢复 六.日志文件 一.inode和bolck概述 1.定义 文件数据 文件数 ...
- Linux文件系统与日志分析
Linux文件系统与日志分析一.inode与block概述① 文件数据包括元信息(类似文件属性)与实际数据② 文件存储在硬盘上,硬盘最小存储单位是"扇区"(sector),每个扇区 ...
- Linux文件系统与日志文件
目录 一.inode和block 1.1.inode和block概述 1.2.inode的内容 inode包含文件的元信息: 查看inode号两种方式 目录文件的结构 1.3.inode的号码 用户通 ...
- 深入理解Linux文件系统与日志文件
目录: 一.inode与block 二.inode内容 三.inode的号码 四.inode的大小 五.链接文件 六.inode节点耗尽故障处理 七.恢复EXT类型的文件编译安装extundelete ...
- Linux文件系统与日志分析的了解
Linux文件系统与日志分析 1.inode和block概述 2.模拟inode耗尽实验 3.ext类型文件恢复 4.xfs类型文件恢复 5.日志文件 6.日志分析 1.文件:文件是存储在硬盘上的,硬 ...
- 转:CentOS, 找不到dump命令:command not found
dump 功能说明:备份文件系统.语 法:dump [-cnu][-0123456789][-b <区块大小>][-B <区块数目>][-d <密度>][-f &l ...
随机推荐
- Android -- 获取View宽高
在activity中可以调用View.getWidth.View.getHeight().View.getMeasuredWidth() .View.getgetMeasuredHeight()来获得 ...
- 【Scala】Scala学习资料
Scala学习资料 java 树形 分类器_百度搜索 决策树分类器-Java实现 - CSDN博客 KNN分类器-Java实现 - CSDN博客 学习:java设计模式—分类 - 飞翔荷兰人 - 博客 ...
- linux运维需要掌握的基础知识
踏入linux运维工程师这一职业,其实有很多工具技能需要掌握,下面我来给大家一一介绍. 1.shell脚本和另一个脚本语言,shell是运维人员必须具备的,不懂这个连入职都不行,至少也要写出一些系统管 ...
- 自己定义View时,用到Paint Canvas的一些温故,简单的帧动画(动画一 ,"掏粪男孩Gif"顺便再提提onWindowFocusChanged)
转载请注明出处:王亟亟的大牛之路 之前在绘画的过程中提到了静态的旋转啊,缩放啊,平移等一些效果.那么自己定义的View当然也有动态的效果也就是我们的Animation.经常使用的有三种 View An ...
- JqueryValidate表单相同Name不校验问题解决
在使用Jquery validate中遇到一个问题,当表单元素有name相同字段时,validate只校验表单元素name第一个值是否通过校验,比如 <input type="text ...
- Google想出了一个决定人员晋升的算法,然后就没有然后了......
Google 有点跑偏了,逗死我了~实践一下也好~ Prasad Setty 是 Google People Analytics 团队的副总裁.7 年前 Google 成立的这支团队的职责是收集和利用 ...
- 复习C语言:第一章
复习C语言中的5中基本类型,以及各个类型占用了多少个字节: #include <stdio.h> int main(void) { printf("int=%d\n", ...
- Linux网络编程:基于TCP的程序开发回顾篇《转》
面向连接的TCP程序设计 基于TCP的程序开发分为服务器端和客户端两部分,常见的核心步骤和流程: 其实按照上面这个流程调用系统API确实可以完全实现应用层程序的开发,一点问题没有.可随着时间的推移,你 ...
- Swift语言精要 - 浅谈代理模式(Delegate)
在iOS编程中,我们经常谈到代理代理,也就是delegate,那么什么是代理呢? 我们来看一下cocoa对它的描述: Delegation is Cocoa’s term for passing of ...
- 转:Creating a Nested ESXi 5 Environment
http://tsmith.co/2011/creating-a-nested-esxi-5-environment/ http://tsmith.co/2012/vsphere-5-1-lab-ne ...