Initial commit: Adastra VTL Linux Distribution- Complete build system for VTL-focused Linux distro- mhvtl integration with 4 LTO drives and media changer- iSCSI target configuration for network connectivity- Automated installation and configuration scripts- Comprehensive documentation (architecture, installation, configuration)- Systemd service files and kernel tuning- Quick start wizard for easy setup
This commit is contained in:
133
scripts/install-mhvtl.sh
Executable file
133
scripts/install-mhvtl.sh
Executable file
@@ -0,0 +1,133 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
echo "=========================================="
|
||||
echo " mhvtl Installation Script"
|
||||
echo "=========================================="
|
||||
echo ""
|
||||
|
||||
if [ "$EUID" -ne 0 ]; then
|
||||
echo "Error: This script must be run as root"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
MHVTL_VERSION="1.6-7"
|
||||
MHVTL_DIR="/opt/mhvtl"
|
||||
MHVTL_CONFIG="/etc/mhvtl"
|
||||
|
||||
echo "[1/5] Installing build dependencies..."
|
||||
apt-get update
|
||||
apt-get install -y \
|
||||
build-essential \
|
||||
git \
|
||||
zlib1g-dev \
|
||||
libibverbs-dev \
|
||||
libconfig-dev \
|
||||
libssl-dev \
|
||||
uuid-dev \
|
||||
linux-headers-$(uname -r) \
|
||||
mt-st \
|
||||
mtx \
|
||||
lsscsi \
|
||||
sg3-utils
|
||||
|
||||
echo "[2/5] Downloading mhvtl source..."
|
||||
cd /tmp
|
||||
if [ -d "mhvtl" ]; then
|
||||
rm -rf mhvtl
|
||||
fi
|
||||
git clone https://github.com/markh794/mhvtl.git
|
||||
cd mhvtl
|
||||
|
||||
echo "[3/5] Building mhvtl..."
|
||||
make
|
||||
|
||||
echo "[4/5] Installing mhvtl..."
|
||||
make install
|
||||
|
||||
echo "[5/5] Configuring mhvtl..."
|
||||
mkdir -p "$MHVTL_DIR"
|
||||
mkdir -p "$MHVTL_CONFIG"
|
||||
|
||||
if [ ! -f "$MHVTL_CONFIG/device.conf" ]; then
|
||||
cat > "$MHVTL_CONFIG/device.conf" << 'EOF'
|
||||
VERSION: 5
|
||||
|
||||
Library: 10 CHANNEL: 00 TARGET: 00 LUN: 00
|
||||
Vendor identification: STK
|
||||
Product identification: L700
|
||||
Unit serial number: XYZZY_A
|
||||
NAA: 10:22:33:44:ab:cd:ef:00
|
||||
Home directory: /opt/mhvtl
|
||||
Backoff: 400
|
||||
|
||||
Drive: 00 CHANNEL: 00 TARGET: 01 LUN: 00
|
||||
Library ID: 10 Slot: 01
|
||||
Vendor identification: IBM
|
||||
Product identification: ULT3580-TD5
|
||||
Unit serial number: XYZZY_A1
|
||||
NAA: 10:22:33:44:ab:cd:ef:01
|
||||
Compression: factor 3 enabled 1
|
||||
Compression type: lzo
|
||||
Backoff: 400
|
||||
|
||||
Drive: 01 CHANNEL: 00 TARGET: 02 LUN: 00
|
||||
Library ID: 10 Slot: 02
|
||||
Vendor identification: IBM
|
||||
Product identification: ULT3580-TD5
|
||||
Unit serial number: XYZZY_A2
|
||||
NAA: 10:22:33:44:ab:cd:ef:02
|
||||
Compression: factor 3 enabled 1
|
||||
Compression type: lzo
|
||||
Backoff: 400
|
||||
|
||||
Drive: 02 CHANNEL: 00 TARGET: 03 LUN: 00
|
||||
Library ID: 10 Slot: 03
|
||||
Vendor identification: IBM
|
||||
Product identification: ULT3580-TD6
|
||||
Unit serial number: XYZZY_A3
|
||||
NAA: 10:22:33:44:ab:cd:ef:03
|
||||
Compression: factor 3 enabled 1
|
||||
Compression type: lzo
|
||||
Backoff: 400
|
||||
|
||||
Drive: 03 CHANNEL: 00 TARGET: 04 LUN: 00
|
||||
Library ID: 10 Slot: 04
|
||||
Vendor identification: IBM
|
||||
Product identification: ULT3580-TD6
|
||||
Unit serial number: XYZZY_A4
|
||||
NAA: 10:22:33:44:ab:cd:ef:04
|
||||
Compression: factor 3 enabled 1
|
||||
Compression type: lzo
|
||||
Backoff: 400
|
||||
EOF
|
||||
fi
|
||||
|
||||
if [ ! -f "$MHVTL_CONFIG/library_contents.10" ]; then
|
||||
/usr/bin/mktape -l 10 -s 100 -m /opt/mhvtl -t LTO5 -d 20
|
||||
fi
|
||||
|
||||
modprobe mhvtl
|
||||
|
||||
systemctl daemon-reload
|
||||
systemctl enable mhvtl
|
||||
systemctl start mhvtl
|
||||
|
||||
echo ""
|
||||
echo "=========================================="
|
||||
echo " mhvtl Installation Complete!"
|
||||
echo "=========================================="
|
||||
echo ""
|
||||
echo "Configuration:"
|
||||
echo " - Config directory: $MHVTL_CONFIG"
|
||||
echo " - Data directory: $MHVTL_DIR"
|
||||
echo " - Library: STK L700 (ID: 10)"
|
||||
echo " - Drives: 4x LTO-5/6 drives"
|
||||
echo " - Media: 20 LTO-5 tapes"
|
||||
echo ""
|
||||
echo "Check status:"
|
||||
echo " systemctl status mhvtl"
|
||||
echo " lsscsi -g"
|
||||
echo " mtx -f /dev/sg0 status"
|
||||
echo ""
|
||||
Reference in New Issue
Block a user