磁带及系统备份操作(ufsdump,tar,cpio,dd)(

本文详细介绍磁带机的配置与使用方法,包括磁带机的物理安装、系统设置、磁带设备的命名规则,以及如何利用ufsdump、ufsrestore、tar、cpio和dd等命令进行数据备份和恢复。此外,还介绍了磁带操作命令,如rew、fsf、bsf等,并解释了带与不带'n'参数的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

增加一个磁带机的步骤
  •     系统下电
  •     检查磁带的SCSI地址是否设置正确
  缺省磁带机的target ID为4 (SCSI光驱是6)
  如果你有多个磁带的话,则要设置正确设置第二个磁带机,使它的SCSI地址不要与当前的地址相冲突
  •        物理安装/连接磁带设备
  •        -r启动发现新设备
 ok boot –r



    SCSI磁带机
  •     与磁盘不同,磁带设备不需要进行格式化(format),卷标识(label)等
  •     当一个新的磁带设备连接到系统并被发现后(ok. boor –r),这个磁带设备就可以使用了
  •     缺省磁带机的target ID为4
设备SCSI地址(Target ID)主逻辑设备名附加逻辑设备名
第一个磁带设备 4/dev/rmt/0/dev/rmt/0l
第二个磁带设备 5/dev/rmt/1 
/dev/rmt/1l
SCSI光驱缺省是 6  


      也有的系统,SCSI磁带机是/dev/nst0(不回带),/dev/st0(回带)


    磁带设备名
  •  磁带机逻辑名从0开始,如果你有多于一个磁带设备,设备名则是:
        /dev/rmt/0, /dev/rmt/1 …
  • n----------不倒带 , 非回绕模式
/dev/rmt/0n
  •     磁带密度
/dev/rmt/0l
/dev/rmt/0m
/dev/rmt/0h
/dev/rmt/0u
          l ---------- low
          m --------- medium
          h --------- high
          u --------- ultra 
  • b---------多文件磁带
/dev/rmt/0bn 
如果备份多个FS到一个磁带,就必须加b.
b即BSD style,其作用是磁头位置是在文件EOF位置的前或后。
不加b, 磁头定位在文件EOF之前。显然不利于操作下一个文件
加 b,磁头定位在文件EOF之后,正好可以操作下一个文件
在磁带上读写多个文件时,象 tar 这样的工具是不管磁头在磁带上的位置的
调整磁头位置需要手工命令如 mt 等,这时需要b、n这样的设备名。


      磁带回带和不回带(n),有什么关系?
不加参数n,如/dev/rmt/0,就是自动回绕
tar cvf /dev/rmt/0 oradb
tar cvf /dev/rmt/0 oracle
先写入一个文件,然后自动回带再写入第二个文件,
因为前面已经自动回带到带首,所以等于是覆盖了
前面的文件
正确的做法是:

tar cvf /dev/rmt/0n oradb   
tar cvf /dev/rmt/0 oracle
第一个文件写完,不自动回带
第二个文件接着前面的文件写,写完自动回带
读带也一样:
tar xvf /dev/rmt/0n
tar xvf /dev/rmt/0
读的是第一个文件(oradb) ,不倒带读完第一个文件
接着读第二个文件(oracle)
这种自动回绕的设备,就不能连续在一盒磁带上备份多个文件系统
总之,加n,写完不倒带,下次可以接着往下写
                      加n,读完不倒带,下面接着读下一个文件

  多个文件tar到磁带,就要加bn

      显示一个磁带设备的状态
# mt –f /dev/rmt/0 status      
-f 就必须跟文件名
如果你有多于一个磁带设备,设备则是:/dev/rmt/1, /dev/rmt/2… 
# mt status不跟-f,就用缺省设备文件名
如果只有一台磁带机,就不比带-f,直接就可以
你可能会看到如下信息:
Quantum DLT7000 tape drive:      说明识别出了硬件
sense key(0x0)= nosense residual= 0 retries= 0
file no= 0 block no= 0 
sense key(0x0)= nosense 
可以正常访问磁带
sense key(0x6)= unit attention 表示这个设备可能被重置,或是刚加电的状态
/dev/rmt/0: no tape loaded or drive offline通常是磁带没插入,
所以先将磁带放入磁带机中
no such file or directory表示没找到/dev/rmt/0
说明系统与磁带设备无法进行通讯。
查看一下,磁带机是否加电,以及连线是否正常,
或再次进行:ok. boot –r


      磁带操作(这些操作都是和n配合的,因为没有n则缺省是自动回带的,会很影响操作)
  •     rew回绕
rew  经常和带 n的文件一同操作, mt -f /dev/rmt/0 rew没必要,因为缺省是自动回带
#mt -f /dev/rmt/0n rewn是不自动回带
rew 手动回带
  •     fsf 前进,bsf 后退
mt -f /dev/rmt/0n fsf 1前进一段
mt -f /dev/rmt/0n bsf 3后退两段
  •     offline 退出磁带(退出磁带前自动回带)  
mt -f /dev/nst0 offline



================================磁带的备份操作和恢复操作===============================

    与磁带的读写数据有关的命令主要包括5个命令: ufsdump, ufsrestore, tar , cpio, dd


      ufsdump命令提供了不同等级的转储,从0至9.转储等级用来确定对哪些文件备份.
  •  0级指定完全转储
完全转储是对整个文件系统做备份.在较长的间隔做一次,如一星期或一月
  •  1级增量转储
将对在 上一次低等级(0级)转储后修改或创建的文件进行备份.
增量转储更频繁一些,可能一天一次


      备份整个系统时,首先应将系统转至运行单用户level s.
ok boot –s
ok boot cdrom –s
如系统在运行level 3时,文件可能正在使用,于是可能造成无效备份
不止ufsdump/ufsrestore,其他tar,cpio进行整个系统备份时,都要单用户重起


    Usage: ufsdump [0123456789fustdWwnNDCcbavloS [argument]] filesystem
#/usr/sbin/ufsdump 0uf /dev/rmt/0 /export/home             最常见的备份命令


      0级备份(完全存储)步骤
  • 1)进入单用户模式    init s
  • 2)插入磁带    
  • 3)开始备份   
# /usr/sbin/ufsdump 0cuf  /dev/rmt/0  /dev/rdsk/cntndns0
raw slice整个备份到磁带
0:0级(完全)备份
c:盒式磁带 (此参数可带可不带)
u: 更新文件/etc/dumpdates
f:类似tar的f参数,后面可以指定具体设备文件名
   必须带f,这样才可以指定后面的文件名/dev/rmt/0
如果备份需要多个磁带,ufsdump命令会自动通知更换磁带



      ufsrestore命令从ufsdump命令创建的备份中复制文件到当前目录。
从备份磁带上拷贝文件至当前目录下
# cd /newdir先cd

# /usr/sbin/ufsrestore rvf /dev/rmt/0 
恢复到当前目录



      tar  备份和恢复磁带
tar备份过程tar恢复过程
$ cd xxx
$ tar cvf /dev/rmt/0 *
$ cd xxx
$ tar xvf /dev/rmt/0
先cd,后缺省目录
 

    tar到磁带时,顺便写lable
tar -cvpf /dev/nst0 --label="Backup set created on `date '+%d-%B-%Y'`." --directory / --exclude=var/spool/ etc home usr/local var/spool


     cpio 备份到磁带
拷贝目录 /work及所有子目录到磁带 /dev/rmt/0 
将磁带中的文件拷贝回/work目录
# cd /work
# ls –R | cpio –ocB > /dev/rmt/0
# cd /work
# cpio –icBd < /dev/rmt/0
c ----标识了头信息已经以ASCII方式被写入
B ----这是必须使用的,标识着输入是以块的方式被记录

    cpio –o -i命令 缺省就支持多卷备份(能提示换磁带
cpio -ov >tape_device_name
cpio -i [vt] <tape_device_name
一旦它识别出介质的尾部,它就提示你插入另一磁带.



      dd 命令
dd if=/dev/rmt/0 of=/tmp/file bs=1024
 dd命令 恢复磁带文件到/tmp/file



    如何看磁带内文件
tar -tvf /dev/rmt/0如果是 tar入磁带的,就好一些,
直接把磁带当作一个tar文件
ufsrestore tvf /dev/rmt/0c用于ufsdump备份的磁带
smitty lsmksysb系统备份可以用smitty lsmksysb查看磁带内容

     

   本文转自: http://blog.sina.com.cn/s/blog_6151984a0100fqmh.html

参考资源链接:[Solaris操作系统备份与恢复:tar, dd, cpio, pax详解](https://wenku.youkuaiyun.com/doc/88cqnmezof?utm_source=wenku_answer2doc_content) 在处理Solaris系统的数据备份和恢复任务时,掌握tarddcpio和pax这几种工具的使用是至关重要的。以下是针对每种工具的一个基础使用场景和命令示例,以帮助用户更好地理解和应用这些实用工具: 1. **tar** - tar工具适用于将文件和目录归档到一个单独的tar文件中,这对于备份小型数据集非常有用。基本使用场景是备份用户目录。命令示例:`tar cvf /path/to/backup.tar /home/user`。这里,`cvf`选项分别代表创建、详细显示处理过程和指定归档文件路径,`/home/user`是要备份的目录。恢复命令则为:`tar xvf /path/to/backup.tar`。 2. **dd** - dd可以用来复制数据块,适合备份整个分区或磁盘。一个典型的使用场景是将根分区备份到另一个分区或磁盘镜像。命令示例:`dd if=/dev/rdsk/c0t0d0s0 of=/path/to/backup.img bs=512k`。在这个例子中,`if`指定输入文件,即要备份磁盘分区,`of`指定输出文件,即备份文件的位置,`bs`是块大小。恢复时,可以使用相同的命令方向,将`of`改为`if`。 3. **cpio** - cpio工具用于创建或恢复归档文件,它特别适合备份和恢复系统文件。一个使用场景是备份`/etc`目录。命令示例:`find /etc -print | cpio -o > /path/to/etc-backup.cpio`。恢复时使用:`cpio -id < /path/to/etc-backup.cpio`。这里的`-o`表示输出归档,`-i`表示输入归档,`-d`表示创建不存在的目录。 4. **pax** - pax是另一种归档工具,它整合了tarcpio的特性,可用于备份和恢复。使用场景是备份多个目录到一个归档文件。命令示例:`pax -w -f /path/to/backup.pax /home /var`。这里,`-w`表示写入模式,`-f`指定归档文件名。恢复命令为:`pax -r -f /path/to/backup.pax`。 在实际操作时,除了上述基本命令之外,还应考虑使用额外的参数来优化备份过程,例如添加过滤模式、设置归档权限等。此外,为了确保备份数据的可靠性和完整性,建议定期测试恢复流程,并结合Solaris的其他备份管理工具,如Solstice AdminSuite中的`volmgt`和`ufsdump/ufsrestore`,以及第三方软件解决方案。为了深入理解每个工具的高级功能和最佳实践,推荐阅读《Solaris操作系统备份与恢复:tar, dd, cpio, pax详解》一书,这将为你提供全的参考和实用的示例。 参考资源链接:[Solaris操作系统备份与恢复:tar, dd, cpio, pax详解](https://wenku.youkuaiyun.com/doc/88cqnmezof?utm_source=wenku_answer2doc_content)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值