Chinaunix首页 | 论坛 | 博客
  • 博客访问: 148270
  • 博文数量: 31
  • 博客积分: 2075
  • 博客等级: 大尉
  • 技术积分: 340
  • 用 户 组: 普通用户
  • 注册时间: 2009-08-29 10:06
文章分类

全部博文(31)

文章存档

2017年(3)

2014年(1)

2013年(1)

2011年(9)

2010年(14)

2009年(3)

我的朋友

分类:

2011-02-23 15:19:21

mtime,atime,以及ctime.
unix系统为每个文件都记录这三个不同的时间,第一个是mtime,即修改时间。无论何时,只要文件内容被改变,mtime的值就会被相应修改。第二个是atime,即访问时间。只要文件被访问(比如运行或读取),它就会被修改。第三个是ctime,即变更时间。当文件的属性发生变化(比如改变权限或者所有关系)时,ctime的值就会被改变。管理员用ctime来查找黑客。备份会改变atime,tar,cpio,dd都会这样做,dump通过原始设备来读取文件系统,因此它不会改变atime.

【dump的语法】
dump levelunbdsf blkg-factor density size device-name file_system
例子:
把/home完全备份到一个称做/dev/rmt/0cbn的本地磁带驱动器上。
# dump 0unbdsf 126 141000 11500 /dev/rmt/0cbn /home
把/home完全备份到一个称做/backup/home.dump的光学CD驱动器上。
# dump 0unbdsf 126 141000 11500 /backup/home.dump /home
以上命令由三个不需要参数的选项(0,u and n)以及四个需要一个协作参数的选项(b,d,s and f)组成。
命令选项:
0---9     指定DUMP应该进行的备份级别。
b         指定DUMP就应该使用的块因子。
u         指定DUMP更新dumpdates文件。
n         完成操作时要通知操作员组的成员。
d(密度) and s(大小)   告诉DUMP备份卷有多大,DUMP用这些数字来估计要使用何种磁带。
f         告诉DUMP要使用什么设备。
W,w       告诉DUMP执行一次空运行来告诉你什么文件系统需要备份。

要避免跨卷DUMP。

【restore的语法】
restore [trxi]vbsfy blocking-factor file-number device-name
例子:
要恢复一个使用块因子32创建的DUMP磁带备份(位于/dev/rmt/0cbn)的全部内容。
# restore rvbfy 32 /dev/rmt/0cbn
有一个使用块因子32创建的位于/dev/rmt/0cbn中的DUMP磁带,如果想从该磁带中恢复文件/etc/hosts and /etc/passwd.
# restore xvbfy 32 /dev/rmt/0cbn ./etc/hosts ./etc/passwd
创建内容表
# restore tfy device >;/tmp/dump.list
命令选项:
决定restore的类型
t       显示卷的内容。
r       指明卷的整个内容应该被恢复到当前工作目录下。
x        只提取命令后面所列的文件。
i        允许执行交互式恢复。
决定restore的行为
v        指定详细输出
s        读取之前跳过的磁带文件个数
b        块因子
f        备份驱动器的文件名。
y        恢复过程禁止询问。

【使用cpio工具进行备份和恢复】
备份的语法
cpio -o[aBcv]
恢复的语法
cpio -i[Btv][patterns]
例子:
在一个本地磁带上创建/home的一个完全备份。
# cd /home
# touch level.0.cpio.timestamp     使增量备份成为可能。建立时间参考点。
# find . -print|cpio -oacvB >; device   device可以是一个光学或CD设备。
# touch level.1.cpio.timestamp     增量备份的时间参考点。
# find . newer level.1.cpio.timestamp -print|cpio -oacvB >;device
在远程磁带上创建/home的一个完全备份。
# cd /home
# find . -print|cpio -oavB|(rsh remote_system dd of=device bs=5120)

cpio备份用绝对路径(find  /home/file)会限制恢复时的灵活性。它只能恢复到/home/file。如果用相对路径(find home/file)就能把它恢复到任何地方。
命令选项
备份类
o        创建一个备份
a        把atime重置成备份前的值
c        用ASCII首部格式
v        用于详细信息输出
B,C    指定块大小,它们是互斥的。
恢复类
i        指定输入模式,必须是命令列表的第一个。
t        生成内容表,并不实际操作。
k       跳过坏区
d      在需要时创建目录
m     恢复文件备份时的原始修改时间,否则的话,默认动作是把恢复后的文件的修改时间设为新修改时间
u        无条件覆盖所有文件
"*pattern"  恢复匹配该模式的文件
f "*pattern"        恢复不匹配该模式的文件
r        交互式重命名文件名

【tar命令的基本语法】
# tar -[cx]vf device pattern
命令选项
c        创建一个存档
v        详细信息输出
W        对存档文件进行校验
b        块因子
f        输出到DEVICE参数所指的设备,DEVICE可以是文件,光盘,磁带或者标准输出(stdout)
 
pattern 模式匹配如“a*”
x        恢复一个存档
m        正常情况下,恢复后的文件会保留它们在存档前的修改时间,选用该选项把修改时间改
成恢复时间,这与CPIO命令的行为完全相反。
o        把恢复的文件的所有者设置成你。这是对于非root用户的默认行为,除非使用该选项,否则,root提取的文件都会归保存在tar文档中的用户和组所有。
p        默认情况下,tar不会恢复所有的文件属性。文件的许可是由当前umask决定,而不是由原始文件的许可决定,包括setuid and sticky位。这个选项告诉tar用原始文件的许可。
d        能够对存档和文件系统进行一个diff比较。
a        重设置访问时间
F        在卷结束时运行一个脚本,这可用于进行自动卷交换。
Z z     自动调用compress and gzip程序

【dd命令基本语法】
# dd if=device of=device bs=blocksize
if=        指定输入文件,即dd从中拷贝数据的文件。它可以是需要备份的文件或者原始分区,如果从stdin中读取数据,那么该参数不必指定。
of=        指定输出文件,即dd发送数据的目的地。它可以是需要备份的文件或者原始分区,如果从stdout中读取数据,那么该参数不必指定。
bs        指定块大小,即一次i/o操作中传输的数据量。

使用dd和rsh and ssh进行远程备份(GNU tar and GNU cpio命令能读取远程设备)读取远程设备上的备份
# rsh remote_host "dd if=device ibs=blocksize" |tar xvBf -
# ssh remote_host "dd if=device bs=blocksize" |tar xvBf -
# ssh remote_host "dd if=device bs=blocksize" |restore rvf -
# ssh remote_host "dd if=device bs=blocksize" |cpio -itv

把备份写到远程设备上
# tar -cvf - . |(rsh remote_system dd of=device obs=block_size)
# dump 0bdsf 64 100000 100000 - |ssh remote_host "dd if=device bs=64k"
# tar -cvf - |ssh remote_host "dd if=device bs=10k"
# cpio -oacvB |ssh remote_host "dd if=device bs=5k"

【LINUX裸机恢复方法】
1、备份重要的元数据    # fdisk -l >;/etc/fdisk-l.txt
2、用本地工具备份系统  # cd / ; tar cf - . |gzip -c >;/backup/xxx.tar.gz
3、系统损坏,用其它介质引导系统(引导盘,KNOPPIX等)。
4、用元数据对硬盘这行分区并格式化。  
解出元数据文件 #gzip -dc /xxx/xxx.tar.gz|tar -xvf - ./etc/fstab ./etc/fdisk-l.txt
分区  # fdisk /dev/sda
创建文件系统 # mke2fs /dev/sda1
5、恢复操作系统信息 # gzip -dc /xxx/xxx.tar.gz|tar xf -
6、在新根磁盘上恢复引导块
阅读(906) | 评论(0) | 转发(0) |
0

上一篇:SCSI || TAPE

下一篇:CVS

给主人留下些什么吧!~~