Сборка LTFS
| Информация в данном пункте необходима для использования пулов Tape Library, LTFS. |
Страница проекта: https://github.com/LinearTapeFileSystem/ltfs
Зависимости, которые должны быть установлены перед сборкой: https://github.com/LinearTapeFileSystem/ltfs/wiki/Build-Environments
Общая сборочная инструкция: https://github.com/LinearTapeFileSystem/ltfs#build-and-install-on-linux
Поддерживаемые устройства: https://github.com/LinearTapeFileSystem/ltfs#supported-tape-drives
-
Установите зависимости, необходимые для сборки LTFS:
- RPM-based OS (Rosa Cobalt, RHEL)
-
yum install perl make gcc git pkg-config libxml2-dev automake autoconf libtool uuid uuid-devel libuuid-devel icu fuse fuse-devel libicu-devel net-snmp net-snmp-devel - RPM-based OS (RedOS, CentOS, Rosa Chrome)
-
dnf install perl make gcc git pkg-config libxml2-dev automake autoconf libtool uuid uuid-devel libuuid-devel icu fuse fuse-devel libicu-devel net-snmp net-snmp-devel - DEB-based OS (кроме Astra Linux 1.8 и Debian 12)
-
apt install make git pkg-config libxml2-dev automake autoconf libtool uuid uuid-dev fuse libfuse-dev libsnmp-dev icu-devtools libicu-dev - Astra Linux 1.8 и Debian 12
-
apt install make git pkg-config libxml2-dev automake autoconf libtool uuid uuid-dev libfuse2 libfuse-dev libsnmp-dev icu-devtools libicu-devСоздайте файл
/usr/bin/icu-configсо следующим содержимым:#!/bin/sh opts=$1 case $opts in '--cppflags') echo '' ;; '--ldflags') echo '-licuuc -licudata -ldl' ;; *) echo '/usr/lib/x86_64-linux-gnu/icu/pkgdata.inc' ;; esacи выполните команду:
chmod 755 /usr/bin/icu-config
-
Сборка
Для сборки выполните:
git clone https://github.com/LinearTapeFileSystem/ltfs.git cd ltfs ./autogen.sh ./configure make make install ldconfig -v -
Проверьте, подключена ли ленточная библиотека к хосту:
lsscsi -gКоманда должна показать подключённые устройства, в их числе привод (приводы) ленточной библиотеки и робота ленточной библиотеки:
[1:0:0:0] tape IBM ULT3580-TD6 D8E4 /dev/st0 /dev/sg5[1:0:0:1] mediumx IBM3573-TL C.20 /dev/sch0 /dev/sg6В данном случае у библиотеки есть один ленточный привод (магнитофон) и робот, к которому можно обращаться через
/dev/sg6. -
Получите информацию о ленточной библиотеке, обращаясь к роботу ленточной библиотеки:
mtx -f /dev/sg6 statusЭта команда должна показать информацию о слотах ленточной библиотеки, о загруженных в них картриджах и о приводах ленточной библиотеки.
Пример выводаsudo mtx -f /dev/sg6 statusStorage Changer /dev/sg6:1 Drives, 24 Slots ( 1 Import/Export ) Data Transfer Element 0:Empty Storage Element 1:Full :VolumeTag=INT020L6 Storage Element 2:Full :VolumeTag=INT023L6 Storage Element 3:Full :VolumeTag=INT033L6 Storage Element 4:Full :VolumeTag=INT026L6 Storage Element 5:Full :VolumeTag=INT029L6 Storage Element 6:Full :VolumeTag=INT022L6 Storage Element 7:Full :VolumeTag=INT034L6 Storage Element 8:Full :VolumeTag=INT025L6 Storage Element 9:Full :VolumeTag=INT028L6 Storage Element 10:Full :VolumeTag=INT021L6 Storage Element 11:Full :VolumeTag=INT024L6 Storage Element 12:Full :VolumeTag=INT039L6 Storage Element 13:Full :VolumeTag=INT012L6 Storage Element 14:Full :VolumeTag=INT011L6 Storage Element 15:Empty Storage Element 16:Full :VolumeTag=INT036L6 Storage Element 17:Full :VolumeTag=INT014L6 Storage Element 18:Full :VolumeTag=INT010L6 Storage Element 19:Empty Storage Element 20:Full :VolumeTag=INT038L6 Storage Element 21:Full :VolumeTag=INT037L6 Storage Element 22:Empty Storage Element 23:Full :VolumeTag=CLNU41L1 Storage Element 24 IMPORT/EXPORT:Full :VolumeTag=INT027L6
В данном случае библиотека состоит из 24 слотов, один из которых — слот ввода-вывода, через который можно импортировать или экспортировать ленточные картриджи, и один ленточный привод (сейчас пуст). Слоты ленточной библиотеки заполнены картриджами с определенными VolumeTag, один из картриджей — чистящий, три слота в ленточной библиотеке пусты.
-
Загрузите картридж в ленточную библиотеку, создайте на нем файловую систему LTFS и проверьте её работу:
mtx -f /dev/sg6 load 1 0В результате выполнения этой команды картридж из слота 1 будет загружен в единственный магнитофон 0.
-
Создайте файловую систему LTFS на картридже:
mkltfs -f -d /dev/sg5 -
Проверьте файловую систему LTFS:
ltfsck /dev/sg5 -
Создайте точку монтирования:
mkdir /ltfs -
Монтируйте файловую систему LTFS:
ltfs -o devname=/dev/sg5 /ltfs/ -
Убедитесь, что файловая система примонтирована:
df -k /ltfsFilesystem 1K-blocks Used Available Use% Mounted on ltfs:/dev/sg5 2351648768 0 2351648768 0% /ltfs
-
Отмонтировать файловую систему LTFS:
umount /ltfs -
Возвратить картридж из магнитофона 0 в слот 1:
mtx -f /dev/sg6 unload 1 0
Если все действия завершились успешно, то ленточная библиотека готова к работе с сервером RuBackup.