设置磁带驱动器 + 自动转换器时,Bacula 中的输入/输出(读取)错误

设置磁带驱动器 + 自动转换器时,Bacula 中的输入/输出(读取)错误

在 bacula 中运行label barcode命令时,我收到输入/输出错误。我刚刚开始尝试进行设置:

Connecting to Storage daemon TapeDevice at ny-back01.ny.stackoverflow.com:9103 ...
Sending label command for Volume "ACJ332" Slot 1 ...
3307 Issuing autochanger "unload slot 8, drive 0" command.
3304 Issuing autochanger "load slot 1, drive 0" command.
3305 Autochanger "load slot 1, drive 0", status is OK.
block.c:1010 Read error on fd=5 at file:blk 0:0 on device "ULTRIUM-HH4" (/dev/st0). ERR=Input/output error.
3000 OK label. VolBytes=64512 DVD=0 Volume="ACJ332" Device="ULTRIUM-HH4" (/dev/st0)
Catalog record for Volume "ACJ332", Slot 1  successfully created.
Sending label command for Volume "ACJ331" Slot 2 ...
3307 Issuing autochanger "unload slot 1, drive 0" command.
3304 Issuing autochanger "load slot 2, drive 0" command.
3305 Autochanger "load slot 2, drive 0", status is OK.
block.c:1010 Read error on fd=5 at file:blk 0:0 on device "ULTRIUM-HH4" (/dev/st0). ERR=Input/output error.
3000 OK label. VolBytes=64512 DVD=0 Volume="ACJ331" Device="ULTRIUM-HH4" (/dev/st0)
Catalog record for Volume "ACJ331", Slot 2  successfully created.
Sending label command for Volume "ACJ328" Slot 3 ...
3307 Issuing autochanger "unload slot 2, drive 0" command.
3304 Issuing autochanger "load slot 3, drive 0" command.
3305 Autochanger "load slot 3, drive 0", status is OK.
block.c:1010 Read error on fd=5 at file:blk 0:0 on device "ULTRIUM-HH4" (/dev/st0). ERR=Input/output error.
3000 OK label. VolBytes=64512 DVD=0 Volume="ACJ328" Device="ULTRIUM-HH4" (/dev/st0)
Catalog record for Volume "ACJ328", Slot 3  successfully created.
Sending label command for Volume "ACJ329" Slot 4 ...
3307 Issuing autochanger "unload slot 3, drive 0" command.
3304 Issuing autochanger "load slot 4, drive 0" command.
3305 Autochanger "load slot 4, drive 0", status is OK.
block.c:1010 Read error on fd=5 at file:blk 0:0 on device "ULTRIUM-HH4" (/dev/st0). ERR=Input/output error.
3000 OK label. VolBytes=64512 DVD=0 Volume="ACJ329" Device="ULTRIUM-HH4" (/dev/st0)
Catalog record for Volume "ACJ329", Slot 4  successfully created.
Sending label command for Volume "ACJ335" Slot 5 ...
3307 Issuing autochanger "unload slot 4, drive 0" command.
3304 Issuing autochanger "load slot 5, drive 0" command.
3305 Autochanger "load slot 5, drive 0", status is OK.
block.c:1010 Read error on fd=5 at file:blk 0:0 on device "ULTRIUM-HH4" (/dev/st0). ERR=Input/output error.
3000 OK label. VolBytes=64512 DVD=0 Volume="ACJ335" Device="ULTRIUM-HH4" (/dev/st0)
Catalog record for Volume "ACJ335", Slot 5  successfully created.
Sending label command for Volume "ACJ334" Slot 6 ...
3307 Issuing autochanger "unload slot 5, drive 0" command.
3304 Issuing autochanger "load slot 6, drive 0" command.
3305 Autochanger "load slot 6, drive 0", status is OK.
block.c:1010 Read error on fd=5 at file:blk 0:0 on device "ULTRIUM-HH4" (/dev/st0). ERR=Input/output error.
3000 OK label. VolBytes=64512 DVD=0 Volume="ACJ334" Device="ULTRIUM-HH4" (/dev/st0)
Catalog record for Volume "ACJ334", Slot 6  successfully created.
Sending label command for Volume "ACJ333" Slot 7 ...
3307 Issuing autochanger "unload slot 6, drive 0" command.
3304 Issuing autochanger "load slot 7, drive 0" command.
3305 Autochanger "load slot 7, drive 0", status is OK.
block.c:1010 Read error on fd=5 at file:blk 0:0 on device "ULTRIUM-HH4" (/dev/st0). ERR=Input/output error.
3000 OK label. VolBytes=64512 DVD=0 Volume="ACJ333" Device="ULTRIUM-HH4" (/dev/st0)
Catalog record for Volume "ACJ333", Slot 7  successfully created.
Sending label command for Volume "ACJ330" Slot 8 ...
3307 Issuing autochanger "unload slot 7, drive 0" command.

Bacula 目录:

    # Definition of file storage device
    Storage {
      Name = TapeDevice
    # Do not use "localhost" here    
      Address = ny-back01....     # N.B. Use a fully qualified name here
      SDPort = 9103
      Password = "..."
      Device = ULTRIUM-HH4
      Media Type = LTO-4
      Media Type = File
      Autochanger = Yes
    }

Bacula-sd:

Autochanger {
        Name = StorageLoader1U
        Device = ULTRIUM-HH4
        Changer Command = "/etc/bacula/scripts/mtx-changer %c %o %S %a %d"
        Changer Device = /dev/sg5
}

Device {
        Name = ULTRIUM-HH4
        Media Type = LTO-4
        Archive Device = /dev/st0
        AutomaticMount = yes;
        AlwaysOpen = yes;
        RemovableMedia = yes;
        RandomAccess = no;
        AutoChanger = yes;
        RandomAccess = no;
}

有人知道这是什么意思/为什么我会得到这个吗?

答案1

好的,由于以下配置错误:

  Media Type = LTO-4
  Media Type = File

看来我搞混了 bacula。命令中列出的介质list media类型为 File。所以我所做的就是删除池,然后尝试使用 重新扫描label barcode。但是,它被拒绝了,因为磁带上已经有 bacula 卷标。为了解决这个问题,我做了这个小循环:

for i in $(seq 1 8); do 
    /etc/bacula/scripts/mtx-changer /dev/sg5 load $i /dev/st0 0
    mt -f /dev/st0 rewind
    mt -f /dev/st0 weof
    /etc/bacula/scripts/mtx-changer /dev/sg5 unload $i /dev/st0 0
done

然后,我这次能够label barcode再次运行,没有出现原始错误或“3920 无法标记卷,因为它已经被标记”错误。

相关内容