solaris磁带设备使用方法总结

最近一段时间以来,老是看到网友问及磁带方面的问题,
其实,偶对此也不大熟,不过,很想对这东东做一个总结,
口可口可,下午的时候,找时间写了一篇,
有错误的地方,请大家指正,
共同交流一下!



磁带设备使用方法总结
磁带主要用来离线存储数据,通常用于备份 。
当一个新的磁带设备连接到系统并被发现后(ok. boor –r),这个磁带设备就可以使用了 。与磁盘不同,磁带设备不需要进行格式化(format),卷标识(label)等 。

磁带设备的地址和逻辑设备名
-------------------------------------------------------------------------------------------------------
磁盘设备 SCSI地址(Target ID) 主逻辑设备名 附加逻辑设备名
-------------------------------------------------------------------------------------------------------
第一个磁带设备 4 /dev/rmt/0 /dev/rmt/0l
/dev/rmt/0m
/dev/rmt/0h
/dev/rmt/0u
第二个磁带设备 5 /dev/rmt/1 /dev/rmt/1l
/dev/rmt/1m
/dev/rmt/1h
/dev/rmt/1u
-------------------------------------------------------------------------------------------------------
(SCSI地址可以是总线上的唯一地址)
附加的参数表示了磁带密度
l ---------- low
m --------- medium
h --------- high
u --------- ultra

增加一个磁带机的步骤
1. 关闭系统
2. 检查磁带的SCSI地址是否设置正确
默认的,磁带机的目标地址为4,如果你有多个磁带的话,则要设置正确设置第二个磁带机,使它的SCSI地址不要与当前的地址相冲突
3. 安装磁带设备
4. 开启系统和所有外围设备(ok. boot –r)

显示一个磁带设备的状态
将磁带放入磁带机中,然后:
# mt –f /dev/rmt/0 status
如果你有多于一个磁带设备,设备则是:/dev/rmt/1, /dev/rmt/2…
你可能会看到如下信息:
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 如果你出现了这条信息,你的系统与你的磁带设备无法进行通讯 。查看一下,磁带机是否加电,以及连线是否正常,或再次进行:ok. boot –r

磁带的重绕
# mt –f /dev/rmt/0 rewind


与磁带的读写数据有关的命令

主要包括5个命令:
cpio, dd, ufsdump, ufsrestore, tar

命令:cpio
cpio其实就是:copy in/out,从标准输入中读取要拷贝的文件,并将其写入到标准输出 。这个命令是很常用的,但是要重定义标准输入和输出 。当需要使用多于一个磁带时,可以使用这个命令 。
1. 拷贝目录 /work及所有子目录到磁带 /dev/rmt/0
# cd /work
# ls –R | cpio –ocB > /dev/rmt/0

2. 将磁带中的文件拷贝回/work目录
# cd /work
# cpio –icBd < /dev/rmt/0

l o ---- copy out,读取标准输入,获得文件列表,拷贝这些文件到标准输出
l i ---- copy in,从标准输入扩展文件
l c ----标识了头信息已经以ASCII方式被写入
l d ----创建所需的目录
l B ----这是必须使用的,标识着输入是以块的方式被记录

命令:dd
这个命令可以对不同数据格式的文件进行转换并拷贝 。当从你的硬盘迁移一个文件系统或分区时可以使用这个命令 。你也可以使用它来进行从一个硬盘到另一个硬盘的数据拷贝 。如果拷贝时,你指定了变量块的大小,那么,你在恢复时,也要指定相同的变量块 。
1. 拷贝文件系统:/user/sunsystem到一个磁盘设备:/dev/rmt/0
# dd if=/dev/dsk/c0t0d0s7 of=/dev/rmt/0 bs=63k

推荐阅读