#!/bin/bash echo "Stopping mhvtl Virtual Tape Library..." CONFIG_FILE="/etc/mhvtl/device.conf" # First try graceful shutdown using vtlcmd for each configured Drive if [ -f "$CONFIG_FILE" ] && command -v vtlcmd >/dev/null 2>&1; then DRIVES=$(grep "^Drive:" "$CONFIG_FILE" | awk '{print $2}' | sort -u) for d in $DRIVES; do if pgrep -f "vtltape.*-q $d" >/dev/null; then echo "Attempting graceful shutdown of vtltape (queue $d)..." /usr/bin/vtlcmd $d exit || true fi done # Give processes a few seconds to exit cleanly sleep 3 fi # Fallback: ensure vtllibrary and any remaining vtltape processes are killed killall vtllibrary 2>/dev/null || true killall vtltape 2>/dev/null || true sleep 1 rm -f /var/lock/mhvtl/mhvtl* 2>/dev/null || true # Try to remove kernel module if present rmmod mhvtl 2>/dev/null || true echo "mhvtl stopped successfully" exit 0