鐵带机的简单使用操作
磁带机设备的关联 下表举例说明了在Linux环境下设备文件是如 何和物理设备关联起来的。 正如表中看到的那样,设备名是基于位于针对这 种设备类型的分层结构的设备的逻辑数字,而不 是其物理ID(SCSI)或者IDE通道(ATARI) o因 此,即使某个SCSI磁带机被分配为SCSI设备 的ID4,如果它是SCSI链的第一个磁带设备,则 它将是
/dev/stO,而不是/dev/st4,这种命名惯例 有利于跟踪系统中的磁带设备时也适用,甚至在 拥有多个驱动类型的磁带设备时也适用。同样, 在2・0・X内核下,只支持单个ATAPI设备,2.2 版本的内核可以使用多个ATAPI驱动(例如htO, htl,・••等)。 现在我们来看看这些文件是如何被命名的,回卷 和不回卷的区别在哪里呢?简单的说,回卷设备 允许
在结束操作以后,自动将磁带回卷到开始 处,而不回卷设备在操作结束以后,将磁带机停
留在当时的位置而不进行回卷操作。对于大多数 简单备份操作,回卷设备更适合一些,因为在备 份操作结束以后其自动回卷以准备取出磁带。而 对于那些复杂的备份操作(如附加备份,逻辑搜 索及那些高端备份工具的操作),不回卷设备更 适合一些。 在UNIX环境下,磁带机设备文件和物理设备关 联的情况就比较复杂了,要和磁带机的类型以及 UNIX系统的类型而变,下表只举例说明常用的 Sun Solaris操作系统下磁带机设备文件和物理 设备关联的情况。
磁带机的命令 下面介绍一下磁带机的读写命令和操作管理命 令,最常用的磁带机读写命令是仙馬它可以对磁 带进行列目录、读和写目录文件,下面是对磁带 机读写命令的介绍:
列磁带目录:tar tvf磁带机设备文件名 首次写入磁带:tar cvf磁带机设备文件名欲记 录的文件或目录名 增量写入磁带:tar rvf磁带机设备文件名欲记 录的文件或目录名
读磁带:tar xvf磁带机设备文件名欲读出的文 件或目录名 注:上面的磁带机设备文件名即指磁带机设备在
Linux> UNIX系统中的关联缩写。磁带机的其
他操作命令和更详细的使用说明可参考tar的
man page。
磁带机读写命令举例:
$ tar tvf /dev/rmt/Oh/^ 列磁带目录*/ $
tar
cvf
/dev/rmt/0h/usr2/ora_bak/full01.dmp.gz /* 首次 写
入磁带*/
$ tar rvf /dev/rmt/0h/usr2/ora _bak/fu!102.dmp.gz /* 增量
写入磁带勺
xvf
/dev/rmt/Oh
/usr2/ora_bak/full02.dmp.gz 读磁带 */ 最常用的磁
带机操作管理命令是mt, mt命令是 操作磁带机的一个很常用的命令,利用它可以 十分方便地管理磁带机设备,下面是对磁带机操 作管理命令的介绍: 拉紧磁带:mt・f磁带机设备文件名retension 倒带:mt磁带机设备文件名rewind
列出磁带机状态nut磁带机设备文件名
status
擦掉数据: mt -f磁带机设备文件名erase
注:关于mt命令更详细的使用说明可参考mt
的 man page。
磁带机操作管理命令举例:
$ mt -f /dev/rmt/Oh retension /* 拉紧磁带 */ $ mt -f /dev/rmt/Oh rewind /* 倒带*/ $ mt -f /dev/rmt/Oh status /* 列出磁带机状态 */
$ mt -f /dev/rmt/Oh erase /* 擦掉磁带数据 */
基本概念
・磁带是线性存储设备,没有什么分区表的概念,磁头在哪里,就从哪里开始读。
磁带机好像只能用root用户操作。
・磁带上可以划分存储空间,每个存储空间有个file number,从0开始顺序排列。 ・磁头在存储空间中的位置用block number
一 来表示,0代表开始,大于0的整数代表块, 比如39代表磁头在本file number的第39 块的位置,而・1则代表磁头位于本file
number的结尾。
・同样一部磁带机,用/dev/stO时是当自动回 卷设
备使用,每次操作完成之后,磁头都返
回 file number=O3 block number=0, BOT 的位置;而用/dev/nstO调用时,操作完成 时磁头就停在那个位置,不会回到开头。 ・使用nst非回卷方式,用tartvf列文件,只 有当block number=O时才能出内容,并且 列完之后block number为大于0的整数, 注意这并不代表本段存储空间的结尾(-1 ) O
由于磁带机本身具有压缩功能,所以添加文件的 时候不建议指定Zip或者bz2压缩,因为如果一 点点压缩后的数据损坏,会导致全部内容不可识 别;如果的确需要压缩的话,可以压缩成本地文 件再存储到磁带上,减少对其他文件的影响。 自动回卷的使用方式
这种方式比较简单,用tar直接操作即可,基 本上和tar操作本地文件相同。
往新磁带上存储文件,注意如果磁带上已有文 件,会被覆盖掉:
tar cvf /dev/stO file to store
向磁带上添加文件:
tar rvf /dev/stO file to store
更新磁带上的同名文件:
tar uvf /dev/stO file to store
列出磁带上的现有文件:
tar tvf /dev/stO
删除磁带上的文件:
tar vf /dev/stO -delete file_to_delete
但我使用这个命令的时候总是提示错误,文件倒 是删掉了,可查看的时候也总有错误信息,难道 是无法删除,或者只能全部xvf出来再存到磁带 上?不过我们也应当养成一个好的习惯,每次向 磁带机存
储文件的时候一定要在文件名中带上 日期标记。 非自动回卷的使用方式
一般这样使用,都是用到多个存储空间file
number的时候;如果还是一个存储段,只是手 工
移动文件指针就没有什么意义了。
在操作上,文件的存储方式和自动回卷是基 本相同的,不同之处在于要注意磁头的位置,并 且手工进行必要的位移,以一个新磁带的操作为 例来说明(status我只截取有用的部分显示):
# mt -f /dev/nstO status file number = 0 block number = 0
General status bits on (41010000):
OT ONLINE IM_REP_EN
存入一个新的文件A:
# tar cvf /dev/nstO A A
# mt -f /dev/nstO status file number = 1 block number = 0
General status bits on (81010000):
EOF ONLINE IM_REP_EN
注意这时磁头已经移动到了第二段存储空间了, 现在再存入一个新的文件B,当然B和A是不 在一个存储空间中的:
# tar cvf /dev/nstO B
# mt -f /dev/nstO status file number = 2 block number = 0
General status bits on (81010000):
EOF ONLINE IM_REP_EN
磁头又移动到第三段存储空间了,如果要查看刚 才存的第二段存储空间中的内容,需要先移动磁 头:
# mt -f /dev/nstO bsf 2 # mt -f /dev/nstO status file number = 0 block number =
General status bits on (1010000):
ONLINE IM_REP_EN
# mt -f /dev/nstO fsf 1 # mt -f /dev/nstO status
file number = 1 block number = 0
General status bits on (81010000):
EOF ONLINE IM_REP_EN
由于有存储空间结束标记,所以这里釆用退2进 1的方式,详细的磁头移动方式可以看man mto 然后查看文件列表:
# tar tvf /dev/nstO -rw-r-r- root/root 21194792 11:37
# mt -f /dev/nstO status
2007-10-24
file number = 1 block number = 2070
General status bits on (1010000):
ONLINE IM REP EN
列出文件列表之后,磁头停在了文件结束的位
1,但不是存储空间的结尾。现在移动磁头到本 段
存储空间的开始,并且添加文件C:
# mt -f /dev/nstO bsf 1 # mt -f /dev/nstO status file number = 0 block number =
General status bits on (1010000):
ONLINE IM_REP_EN
# mt -f /dev/nstO fsf 1 # mt -f /dev/nstO status file number = 1 block number = 0
General status bits on (81010000):
EOF ONLINE IM_REP_EN
# tar rvf /dev/nstO C C
# mt -f /dev/nstO status file number = 2 block number = 0
General status bits on (81010000):
EOF ONLINE IM_REP_EN
首先还是要移动磁头,到这里基本上可以发现 mt的fsf和bsf的规律了,fsf是磁头向前移动, 0的位置,而bsf是磁头向后移动,总是停留在 block
number = -1的位置。添加完成文件之后,磁头又定
位到了
并且总是停留在block number
第三个存储空间(下一个)的开始。现在我们依 然是移动磁头到第二段存储空间开始,并且用覆 盖方式添加文件
D: # mt -f /dev/nstO bsf 2 # mt -f /dev/nstO fsf 1 # mt -f /dev/nstO status file number = 1 block number = 0
General status bits on (81010000):
EOF ONLINE IM_REP_EN
# tar cvf /dev/nstO D D # mt -f /dev/nstO status file number = 2 block number = 0
General status bits on (81010000):
EOF ONLINE IM_REP_EN
文件D是用覆盖方式添加的,所以刚才添加的 文
件B和C现在应该都消失了:
# mt -f /dev/nstO bsf 2 # mt -f /dev/nstO fsf 1
# mt -f /dev/nstO status file number = 1 block number = 0
General status bits on (81010000):
EOF ONLINE IM_REP_EN
# tar tvf /dev/nstO
-rw-r-r- root/root 34201298
11:57 D # mt -f /dev/nstO status file number = 1 block number = 3341 General status bits on (1010000):
ONLINE IM REP EN
2007-10-24
完成,
卷磁带,从开始一直tvf:
# mt -f /dev/nstO rewind # tar tvf /dev/nstO
-rw-r-r- root/root 3410 2007-10-24 11:37 A # tar tvf /dev/nstO # tar tvf /dev/nstO -rw-r-r- root/root 34201298 11:57 D
# tar tvf /dev/nstO # tar tvf /dev/nstO # tar tvf /dev/nstO
tar: /dev/nstO: Cannot read: Input/output error tar: At beginning of tape, quitting now tar: Error is not recoverable: exiting now # mt -f /dev/nstO status file number = 2 block number = -1 General status bits on (9010000):
2007-10-24
EOD ONLINE IM REP EN
现在,能看懂这个了么?我用空行隔开的位置正 好是block number为0的位置。还有一些其他 的操作就比较简单了: 出带,将磁带卷至初始位置然后从磁带机内弹出
# mt -f /dev/nstO offline
清除磁带中的所有内容,特慢,还伤带,轻易不 要用
# mt -f /dev/nstO erase
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- efsc.cn 版权所有 赣ICP备2024042792号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务