#!/bin/bash
# --- Configuration ---
SOURCE_DEV="/dev/sr0"
MOUNT_POINT="/mnt/mac_legacy_cd"
DEST_DIR="$HOME/Desktop/mac_recovered_files"
# 1. Ensure the system is ready
echo "Checking for HFS support..."
sudo modprobe hfs 2>/dev/null
sudo modprobe hfsplus 2>/dev/null
# Create directories
sudo mkdir -p "$MOUNT_POINT"
mkdir -p "$DEST_DIR"
# 2. Attempt to mount
# We try HFS first with MacRoman to UTF-8 translation
echo "Attempting to mount $SOURCE_DEV..."
sudo mount -t hfs -o ro,iocharset=utf8 "$SOURCE_DEV" "$MOUNT_POINT" 2>/dev/null
if [ $? -ne 0 ]; then
echo "HFS mount failed, trying HFS+ (Mac OS Extended)..."
sudo mount -t hfsplus -o ro "$SOURCE_DEV" "$MOUNT_POINT"
fi
# 3. Verify mount and Copy
if mountpoint -q "$MOUNT_POINT"; then
echo "Mount successful. Copying files to $DEST_DIR..."
# -a: archive mode (preserves symlinks, permissions, times)
# -v: verbose
# -z: compress (not really needed for local, but good practice)
# -P: show progress
rsync -avzP "$MOUNT_POINT/" "$DEST_DIR/"
echo "---"
echo "Copy complete. Unmounting..."
sudo umount "$MOUNT_POINT"
echo "Done. You can find your files in $DEST_DIR"
else
echo "Error: Could not mount the disc. Ensure the CD is inserted and $SOURCE_DEV is the correct path."
exit 1
fi



https://archive.is/c4JHd