Created
May 7, 2025 23:26
-
-
Save cakmalik/43781f1bce81d2c6e72d1b78334f41b4 to your computer and use it in GitHub Desktop.
Revisions
-
cakmalik created this gist
May 7, 2025 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,95 @@ #!/bin/bash echo "🚨 Mulai proses penghapusan PHP, Web Server, dan MySQL dari sistem Anda..." # Fungsi bantu hapus paket jika ditemukan remove_pkg() { local pattern="$1" local pkgs=$(pacman -Qq | grep -E "$pattern") if [[ -n "$pkgs" ]]; then echo "🧹 Menghapus paket: $pattern ..." sudo pacman -Rns --noconfirm $pkgs fi } # 1. Hapus PHP dan turunannya remove_pkg '^php|php[0-9]{2}|php-' # 2. Hapus Web Server: Apache & Nginx for svc in httpd apache nginx; do sudo systemctl stop $svc 2>/dev/null sudo systemctl disable $svc 2>/dev/null done remove_pkg 'apache' remove_pkg 'nginx' # 3. Hapus MySQL dan MariaDB for svc in mysqld mysql mariadb; do sudo systemctl stop $svc 2>/dev/null sudo systemctl disable $svc 2>/dev/null done remove_pkg 'mysql' remove_pkg 'mariadb' # 4. Hapus dari AUR jika menggunakan yay atau paru for aur_helper in yay paru; do if command -v $aur_helper &>/dev/null; then echo "🧹 Menghapus PHP, Web Server, dan MySQL dari AUR ($aur_helper)..." aur_pkgs=$($aur_helper -Qq | grep -E 'php|apache|nginx|mysql|mariadb') if [[ -n "$aur_pkgs" ]]; then $aur_helper -Rns --noconfirm $aur_pkgs fi fi done # 5. Hapus phpbrew dan semua versinya if command -v phpbrew &>/dev/null; then echo "🧹 Menghapus phpbrew dan versinya..." phpbrew list | awk '{print $1}' | tail -n +3 | xargs -I{} phpbrew remove {} rm -rf ~/.phpbrew fi # 6. Hapus phpenv dan phpv jika ada echo "🧹 Menghapus phpenv dan phpv..." rm -rf ~/.phpenv ~/.phpv # 7. Hapus konfigurasi dan file global echo "🧹 Menghapus konfigurasi dan file global..." sudo rm -rf /etc/php* /usr/lib/php* /usr/include/php* /usr/share/php* sudo rm -rf /etc/httpd /etc/nginx /etc/mysql* /etc/mariadb* sudo chattr -i -R /var/lib/mysql* /var/lib/mariadb* 2>/dev/null sudo rm -rf /var/lib/mysql* /var/lib/mariadb* sudo rm -rf /usr/lib/mysql* /usr/lib/mariadb* /usr/include/mysql* /usr/include/mariadb* # 8. Hapus konfigurasi user echo "🧹 Menghapus konfigurasi user..." rm -rf ~/.config/php ~/.local/share/php ~/.mysql_history ~/.cache/mysql # 9. Bersihkan PATH dan konfigurasi shell echo "🧼 Membersihkan PATH dari phpbrew/phpenv..." for file in ~/.bashrc ~/.zshrc ~/.profile ~/.bash_profile ~/.config/fish/config.fish; do sed -i '/phpbrew/d' "$file" 2>/dev/null sed -i '/phpenv/d' "$file" 2>/dev/null done # 10. Hapus cache pacman echo "🧹 Menghapus cache pacman terkait..." sudo rm -rf /var/cache/pacman/pkg/php* /var/cache/pacman/pkg/mysql* /var/cache/pacman/pkg/mariadb* sudo journalctl --vacuum-time=1s 2>/dev/null # 11. Verifikasi echo "🔍 Verifikasi apakah PHP, Web Server, dan MySQL masih ada..." for cmd in php httpd nginx mysql mariadb; do if command -v $cmd &>/dev/null; then echo "⚠️ Masih terdeteksi: $cmd -> $(which $cmd)" fi done # 12. Cari sisa file terkait echo "🔍 Mencari sisa file PHP, Web Server, dan MySQL..." sudo find / \( -iname "*php*" -o -iname "*mysql*" -o -iname "*mariadb*" -o -iname "*httpd*" -o -iname "*nginx*" \) \ -not -path "/proc/*" -not -path "/sys/*" -not -path "/run/*" >~/sisa_lamp_files.txt echo "📄 Daftar file tersisa disimpan di ~/sisa_lamp_files.txt" echo "✅ Proses penghapusan selesai." echo "🔁 Disarankan untuk me-restart sistem Anda agar semua perubahan diterapkan."