Files
SkyArtShop/migrate-transfer.sh

100 lines
3.3 KiB
Bash
Raw Normal View History

#!/bin/bash
# Quick Transfer Script - Use this to send backup to new server
echo "========================================="
echo " SkyArtShop - Quick Transfer"
echo "========================================="
echo ""
# Colors
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m'
# Check if backup exists
BACKUP_DIR=~/skyartshop-backup
if [ ! -d "$BACKUP_DIR" ]; then
echo -e "${YELLOW}Backup not found. Running preparation script...${NC}"
bash /var/www/SkyArtShop/migrate-prepare.sh
fi
# Get new server details
echo -e "${BLUE}Enter new server details:${NC}"
read -p "Username: " NEW_USER
read -p "IP Address: " NEW_IP
echo ""
# Create single archive
echo -e "${YELLOW}Creating single archive for easy transfer...${NC}"
DATE=$(date +%Y%m%d_%H%M%S)
cd ~
tar -czf skyartshop-complete-$DATE.tar.gz skyartshop-backup/
ARCHIVE_SIZE=$(du -sh skyartshop-complete-$DATE.tar.gz | cut -f1)
echo -e "${GREEN}✓ Archive created: skyartshop-complete-$DATE.tar.gz ($ARCHIVE_SIZE)${NC}"
echo ""
# Test connection
echo -e "${YELLOW}Testing connection to new server...${NC}"
if ssh -o ConnectTimeout=5 $NEW_USER@$NEW_IP "echo 'Connection successful'" 2>/dev/null; then
echo -e "${GREEN}✓ Connection successful${NC}"
echo ""
# Transfer file
echo -e "${YELLOW}Transferring archive to new server...${NC}"
echo "This may take several minutes depending on file size and network speed..."
scp ~/skyartshop-complete-$DATE.tar.gz $NEW_USER@$NEW_IP:/tmp/
if [ $? -eq 0 ]; then
echo -e "${GREEN}✓ Transfer complete!${NC}"
echo ""
# Extract on remote server
echo -e "${YELLOW}Extracting on new server...${NC}"
ssh $NEW_USER@$NEW_IP "cd ~ && tar -xzf /tmp/skyartshop-complete-$DATE.tar.gz && rm /tmp/skyartshop-complete-$DATE.tar.gz"
echo -e "${GREEN}✓ Files extracted on new server${NC}"
echo ""
# Display next steps
echo "========================================="
echo " ✅ TRANSFER COMPLETE"
echo "========================================="
echo ""
echo "Next Steps - Run on NEW SERVER:"
echo ""
echo "1. SSH to the new server:"
echo -e " ${YELLOW}ssh $NEW_USER@$NEW_IP${NC}"
echo ""
echo "2. Install prerequisites (if not already installed):"
echo -e " ${YELLOW}bash ~/skyartshop-backup/install-prerequisites.sh${NC}"
echo ""
echo "3. Run restoration script:"
echo -e " ${YELLOW}bash ~/skyartshop-backup/migrate-restore.sh${NC}"
echo ""
echo "4. Follow the on-screen instructions"
echo ""
else
echo -e "${RED}✗ Transfer failed${NC}"
echo "Try manual transfer:"
echo -e " ${YELLOW}scp ~/skyartshop-complete-$DATE.tar.gz $NEW_USER@$NEW_IP:/tmp/${NC}"
fi
else
echo -e "${RED}✗ Cannot connect to new server${NC}"
echo ""
echo "Manual transfer options:"
echo ""
echo "1. Using SCP:"
echo -e " ${YELLOW}scp ~/skyartshop-complete-$DATE.tar.gz $NEW_USER@$NEW_IP:/tmp/${NC}"
echo ""
echo "2. Using USB drive:"
echo -e " ${YELLOW}cp ~/skyartshop-complete-$DATE.tar.gz /media/usb-drive/${NC}"
echo ""
echo "3. Using cloud storage:"
echo " Upload ~/skyartshop-complete-$DATE.tar.gz to your cloud provider"
echo ""
fi