Files
CoM-ghost_protocol/covert_sd/tools/lock_storage.sh
T

89 lines
3.2 KiB
Bash
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
# Script to safely lock secure storage
echo "======================================================================"
echo " SECURE STORAGE LOCK TOOL"
echo "======================================================================"
echo ""
# Mount point location
MOUNT_POINT="$HOME/SecureStorage"
# Check if storage is mounted
if mountpoint -q "$MOUNT_POINT" 2>/dev/null || [ -d "$MOUNT_POINT" ] && sudo veracrypt --text --list | grep -q "$MOUNT_POINT"; then
echo "Step 1: Checking for open files..."
# Check if any processes are using the mount
OPEN_FILES=$(sudo lsof "$MOUNT_POINT" 2>/dev/null | tail -n +2)
if [ -n "$OPEN_FILES" ]; then
echo ""
echo "⚠ WARNING: Files or programs are still using the secure storage!"
echo ""
echo "Open files/processes:"
echo "$OPEN_FILES"
echo ""
echo "You should close these programs first to avoid data loss."
echo ""
read -p "Force close and lock anyway? (y/N): " FORCE
if [ "$FORCE" != "y" ] && [ "$FORCE" != "Y" ]; then
echo ""
echo "Lock cancelled. Please:"
echo " 1. Close all programs using the secure storage"
echo " 2. Save any open documents"
echo " 3. Run this script again"
exit 1
fi
echo ""
echo "Forcing lock (files will be closed)..."
else
echo "✓ No open files detected"
fi
echo ""
echo "Step 2: Syncing pending writes to disk..."
sync
echo "✓ All data written to disk"
echo ""
echo "Step 3: Dismounting encrypted volume..."
# Dismount the encrypted volume
if sudo veracrypt --text --dismount "$MOUNT_POINT" 2>/dev/null; then
rmdir "$MOUNT_POINT" 2>/dev/null
echo "✓ Volume dismounted"
echo ""
echo "======================================================================"
echo " SUCCESS!"
echo "======================================================================"
echo ""
echo "Secure storage is now locked and encrypted."
echo "Your data is safe to remove the device."
echo ""
echo "======================================================================"
else
echo ""
echo "======================================================================"
echo " DISMOUNT FAILED"
echo "======================================================================"
echo ""
echo "Possible reasons:"
echo " • Files still in use (close all programs)"
echo " • Permission denied"
echo " • Volume not mounted with this script"
echo ""
echo "Troubleshooting:"
echo " 1. Check what's using it: sudo lsof $MOUNT_POINT"
echo " 2. Force dismount all: sudo veracrypt -d"
echo " 3. Kill processes: sudo fuser -km $MOUNT_POINT"
echo ""
exit 1
fi
else
echo " Secure storage is not currently mounted."
echo ""
echo "Nothing to lock - your data is already secured."
echo ""
echo "If you want to access it, run:"
echo " sudo ./mount_storage.sh"
fi