CentOS下甚用备份工具
说明:CentOS备份工具有很多选择,但要看备份的数据是否符合你的备份工具,选择错误,往往会造成很多麻烦事.
第一类 本地化备份
1、cp 复制
改变(创建)inode所指向的block(在创建时,会分配新的block)。
[带目录复制]
cp -R
2、mv
mv 操作只是改变文件的inode,并没有对inode所指向的磁盘block做任何的改动。
3、dd
convert and copy a file
dd if=[STDIN] of=[STDOUT]
if =输入文件(或设备名称)。
of =输出文件(或设备名称)。
ibs = bytes 一次读取bytes字节,即读入缓冲区的字节数。
skip = blocks 跳过读入缓冲区开头的ibs*blocks块。
obs = bytes 一次写入bytes字节,即写入缓冲区的字节数。
bs = bytes 同时设置读/写缓冲区的字节数(等于设置ibs和obs)。
cbs = byte 一次转换bytes字节。
例1:将文件sfile拷贝到文件 dfile中。
#dd if=sfile of=dfile
例2:创建一个100M的空文件
#dd if=/dev/zero of=hello.txt bs=100M count=1
[/dev/zero,是一个输入设备,你可你用它来初始化文件。]
4、tar
[root@linux ~]# tar -cvf /tmp/etc.tar /etc <==仅打包,不压缩!
[root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc <==打包后,以 gzip 压缩
[root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc --exclude=/etc/passwd <==打包后,以 gzip 压缩,不包含/etc/passwd文件
[root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc <==打包后,以 bzip2 压缩
[root@linux ~]# tar -ztvf /tmp/etc.tar.gz <==查阅打包文件包含哪些文件
[root@linux ~]# tar -zxvf /tmp/etc.tar.gz <==解压
[root@linux ~]# tar -zxvf /tmp/etc.tar.gz -C /tmp <==解压文件到/tmp目录下
5、cpio
将/etc下的文件备份到/mnt下
cd /etc;find . -print | cpio -Bpdumv /mnt/ > /mnt/cpio.log 2>&1 &
6、ln
ln分硬连接和软连接
ln -s 源目标 目的目标
硬链接ln ** **,没有参数-s, 它会在你选定的位置上生成一个和源文件大小相同的文件,文件同步变化;
软链接就是ln -s ** **,它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间,文件同步变化;
软链接是可以跨分区的,但是硬链接只能在同一分区内;
-R 使用相对路径信息
--include=PATTERN 指定不排除而需要传输的文件模式
gid=nobody
max connections=10 #最大连接数
use chroot=no #如果为true,那么在rsync在传输文件以前首先chroot到path参数指定的目录下
log file=/var/log/rsyncd.log
pid file=/var/run/rsyncd.pid
[test]
path=/opt/htdocs
read only = no #可以写入
hosts allow=10.0.0.21 10.0.0.22 #限制可以访问的客户端