Linux设置SCSI磁带设备的块大小
时间:2020-01-09 10:43:18 来源:igfitidea点击:
问题描述:Ive Debian Linux 4.0在HP服务器上安装。
该服务器具有SCSI磁带设备。
根据我的磁带文档,大小应为64k。
如何设置HP SCSI磁带设备的块大小?
解决方法:您需要使用标准的tar或者cpio命令来设置SCSI磁带设备的块大小。
没有用于设置磁带块的特殊设置。
tar命令设置块大小
-b选项用于设置块大小。
记录大小为Nx512字节(默认值为N = 20)。
以下示例将磁带设置为256k块以备份/data文件系统:
# tar -b 512 -cvf /dev/st0 /data
要提取,只需使用:
# tar -b 512 -xvf /dev/st0
其中:
- -b 512使用512的块大小,即512x512字节
c
:创建档案- v:详细(显示进度)
- f:磁带设备名称/dev/st0
- x:提取档案
因此,要将数据传输块大小设置为64k(64x64bytes),请执行:
# tar -b 128 -cvf /dev/st0 /path/to/backup/directory
请参阅有关mt和tar命令的更多信息,以在Linux下进行备份。
cpio命令
将block-size BLOCK选项传递给cpio命令,执行:
# find /home | cpio --block-size 128 -o -H tar -F /dev/nst0
要恢复备份,请输入以下命令
# cpio --block-size 128 -i -F /dev/nst0
如何找出胶带块的尺寸?
请参考磁带制造商文档或者产品网站。
但是,借助dd命令(很少尝试和错误),您可以找到磁带的实际块大小。
您所要做的就是提供ibs = BLOCKSIZE:
# dd if=/dev/st0 of=/tmp/test.file ibs=64k count=1
输出:
dd: reading `/dev/st0': Cannot allocate memory 0+0 records in 0+0 records out
如果收到错误消息"无法分配内存",请尝试下一个块大小,因为所选的块大小(64k)太小:
# dd if=/dev/st0 of=testfile ibs=256k count=1
输出:
1+0 records in 512+0 records out
因此,此scsi磁带设备的正确块大小为256k。