您的位置:首页 > 其它

dd备份裸设备相关

2015-12-03 15:48 337 查看
先说一下几个概念:

一,裸设备
裸设备是未经过格式化的磁盘,所以没有文件系统,也没有raid的冗余,所以他的读取不经过操作系统这一层,而是直接读取,I/O效率会更高,由软件程序直接读取,裸设备的备份属于block级别的块备份,块备份采用了cache机制,在裸设备和主内存之前可以传输一整块数据。

二,cache
cache是存在于cpu于主内存之间的告诉缓存,存在的原因是因为cpu的读写速度远远高于内存,所以cpu到内存之间的I/O,经常出现排队的情况,cache可以提供高于主内存的,与cpu相当的存储速度,提高了I/O性能,但是成本太高,也不可能取代普通内存,一般情况是cache中存放cpu使用过的数据,cpu可以优先通过cache来读取,没有的再去主内存找。

裸设备的备份和恢复是通过dd命令来实现的,参数很多,基本的先记住4个吧,if of count bs

if: 要备份的设备,输入文件
of:反之
bs: 一个block的大小
count: block的个数

bs乘以count=磁盘的容量

若进行无软件压缩的备份,使用如下命令:

dd if=<lv> of=/dev/rmt0 ibs=512 obs=<bs> conv=sync

若进行有软件压缩的备份,使用如下命令:

dd if=<lv> bs=512 | compress | dd of=/dev/rmt0 ibs=512 obs=<bs> conv=sync

使用下面的命令恢复所做的裸设备的备份:

i) 恢复没有进行软件压缩的备份,使用如下命令:

dd if=/dev/rmt0 ibs=<bs> obs=512 | dd of=/dev/<lv> bs=512 skip=1 seek=1

ii) 恢复进行了软件压缩的备份,使用如下命令:

dd if=/dev/rmt0 ibs=<bs> obs=512 | uncompress | dd of=/dev/<lv> bs=512 skip=1 seek=1

注意:使用dd命令进行备份时不能跨多盘磁带,用户必须确认要备份的裸设备可在一盘磁带上完整备份。

以下内容是裸设备的创建和绑定方法,来自百度文库:

1、裸设备的绑定
有文件系统的分区是采用mount的方式挂载到某一个挂载点的(目录)
而裸设备不能mount,只能绑定到/dev/raw/下的某一个设备名
比如/dev/raw/raw1


2、裸设备的绑定方法
有两种方法,这里介绍一种,另一种可以google搜索到


修改/etc/sysconfig/rawdevices,添加以下内容,

这里sdd1和sdd2是原始分区名或者原始设备(硬盘)名,
raw1和raw2是/dev目录下的原始设备名,编号从raw1到raw255,也就是最多可以绑定255个裸设备

/dev/raw/raw1 /dev/sdd1

/dev/raw/raw2 /dev/sdd2

3,然后修改裸设备的属主和访问权限

chown oracle:dba /dev/raw/raw1

chown oracle:dba /dev/raw/raw2

chmod 660 /dev/raw/raw1

chmod 660 /dev/raw/raw2

最后使得裸设备生效,并且在机器启动的时候就自动加。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  dd 裸设备