lcat
My personal /var/log
  • Home
  • Contact
  • HackMe!

Script untuk backup app data di Android

```
#!/bin/sh
set -e

if [ "$#" -ne 3 ]; then
    echo "Usage: $0 [backup|restore] <package_name> <file_path>"
    exit 1
fi

ACTION=$1
PKG=$2
FILE=$3

if [ "$(id -u)" -ne 0 ]; then
    echo "Error: Root access is required."
    exit 1
fi

if [ "$ACTION" = "backup" ]; then
    am force-stop "$PKG"
    tar -czf "$FILE" -C /data/data/ "$PKG"
    echo "Backup saved to $FILE"

elif [ "$ACTION" = "restore" ]; then
    if [ ! -f "$FILE" ]; then
        echo "Error: File $FILE not found."
        exit 1
    fi

    am force-stop "$PKG"
    tar -xzf "$FILE" -C /data/data/

    APP_UID=$(stat -c "%U" "/data/data/$PKG" 2>/dev/null | tr -d '\r')

    if [ "$APP_UID" = "root" ] || [ -z "$APP_UID" ]; then
        RAW_UID=$(dumpsys package "$PKG" | grep userId= | awk -F= '{print $2}' | awk '{print $1}' | tr -d '\r')
        APP_UID="u0_a$((RAW_UID - 10000))"
    fi

    chown -R "$APP_UID":"$APP_UID" "/data/data/$PKG"
    restorecon -R "/data/data/$PKG"
    echo "Restore complete from $FILE"

else
    echo "Error: Invalid action. Use 'backup' or 'restore'."
    exit 1
fi
```

PS: generated by Gemini
Created: 2026-05-18 04:22:04, Updated: 2026-05-18 04:29:31, ID: 3ef940e8-2258-45bb-a00c-7aad2aaa95fb