LINUX.ORG.RU

HP Ultrium 960 data compression

 , ,


0

3

Есть стриммер Ultrium 960 и ленты к нему на 400/800 Gb. Система Debian Wheezy 7.7. Нужно настроить запись на ленту со сжатием, чтобы можно было писать 800 Gb, а не 400, как сейчас.

root@host ~# tapeinfo -f /dev/nst0
Product Type: Tape Drive
Vendor ID: 'HP      '
Product ID: 'Ultrium 3-SCSI  '
Revision: 'G54D'
Attached Changer API: No
SerialNumber: '**********'
MinBlock: 1
MaxBlock: 16777215
SCSI ID: 3
SCSI LUN: 0
Ready: yes
BufferedMode: yes
Medium Type: Not Loaded
Density Code: 0x44
BlockSize: 0
DataCompEnabled: yes
DataCompCapable: yes
DataDeCompEnabled: yes
CompType: 0x1
DeCompType: 0x1
BOP: yes
Block Position: 0
Partition 0 Remaining Kbytes: 400308
Partition 0 Size in Kbytes: 400308
ActivePartition: 0
EarlyWarningSize: 0
NumPartitions: 0
MaxPartitions: 0
Для настройки stinit.def использовал официальную вики Debian. Но учитывая то, что там нет отдельного кофига под LTO-3, я взял конфиг от LTO-4 и подправил в соответсвии с оборудованием.
root@host ~# cat /etc/stinit.def 
manufacturer="HP" model="Ultrium 3-SCSI" {
scsi2logical=1
can-bsr=1
auto-lock=1
two-fms=0
drive-buffering=1
buffer-writes
read-ahead=1
async-writes=1
can-partitions=0
fast-mteom=0
sysv=1
timeout=180 
long-timeout=14400
mode1 blocksize=0 compression=0 density=0x44
mode2 blocksize=0 compression=1 density=0x44
mode3 disabled=1
mode4 disabled=1
}
Полсле чего выполнил
root@host ~# stinit -v -v /dev/nst0
Trying to open database '/etc/stinit.def'.
Open succeeded.

stinit, processing tape 0
Mode 1, name '/dev/nst0'
Mode 2, name '/dev/nst0l'
Mode 3, name '/dev/nst0m'
Mode 4, name '/dev/nst0a'
The manufacturer is 'HP', product is 'Ultrium 3-SCSI', and revision 'G54D'.
Mode 1 definition: scsi2logical=1 can-bsr=1 auto-lock=1 two-fms=0 drive-buffering=1 buffer-writes read-ahead=1 async-writes=1 can-partitions=0 fast-mteom=0 sysv=1 timeout=180  long-timeout=14400  blocksize=0 compression=0 density=0x44 
Mode 2 definition: scsi2logical=1 can-bsr=1 auto-lock=1 two-fms=0 drive-buffering=1 buffer-writes read-ahead=1 async-writes=1 can-partitions=0 fast-mteom=0 sysv=1 timeout=180  long-timeout=14400  blocksize=0 compression=1 density=0x44 
Mode 3 definition: scsi2logical=1 can-bsr=1 auto-lock=1 two-fms=0 drive-buffering=1 buffer-writes read-ahead=1 async-writes=1 can-partitions=0 fast-mteom=0 sysv=1 timeout=180  long-timeout=14400  disabled=1 
Mode 4 definition: scsi2logical=1 can-bsr=1 auto-lock=1 two-fms=0 drive-buffering=1 buffer-writes read-ahead=1 async-writes=1 can-partitions=0 fast-mteom=0 sysv=1 timeout=180  long-timeout=14400  disabled=1
Bacula пишет в устройство /dev/nst0l, но все равно на ленту записывается только 400 Gb, а не 800. На всякий случай приведу конфиг Bacula.
root@host ~# cat /etc/bacula/conf.d/device.conf 
Device {
        Name = "ultrium960"
        DeviceType = Tape
        MediaType = LTO-3
        ArchiveDevice = "/dev/nst0l"
        LabelMedia = yes
        RandomAccess = no
        AutomaticMount = yes
        RemovableMedia = yes
        AlwaysOpen = yes
        BlockChecksum = yes
}

Решение найдено, а вернее причина. Конфигурация верная, аппаратное сжатие данных работало, просто оно было не эффективно из-за программного сжатия Bacul'ы. После отключения сжатия в Bacul'e все заработало и удалось записать на ленту больше 400 Gb. Теперь осталось определить, какое сжатие эффективнее и менее требовательно к ресурсам, но это уже другая история.

terminazaurus
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.