先说一下几个概念:
一,裸设备
裸设备是未经过格式化的磁盘,所以没有文件系统,也没有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
最后使得裸设备生效,并且在机器启动的时候就自动加。
转载于:https://blog.51cto.com/10851095/1719264