Perbaiki Error “cannot run ssh” di Git (Arch Linux)

Solusi cepat dan santai buat kamu yang nemuin pesan error: cannot run ssh: No such file or directory

Kalau kamu baru aja nemu error ini waktu jalankan git fetch atau git pull di Arch Linux:

error: cannot run ssh: No such file or directory
fatal: unable to fork

Tenang, ini bukan error besar kok 😎 Biasanya Git cuma tidak bisa nemuin program ssh yang dibutuhkan untuk konek ke remote repository.

🔍 Penyebab Umum

💡 Script Otomatis: fix-git-ssh.sh

Biar makin gampang, kamu bisa pakai script ini untuk otomatis mendeteksi dan memperbaiki error:

#!/usr/bin/env bash
# ===============================================
# fix-git-ssh.sh — Perbaiki error "cannot run ssh"
# untuk Arch Linux / Manjaro
# ===============================================
set -e
YELLOW='\033[1;33m'
GREEN='\033[1;32m'
RED='\033[1;31m'
NC='\033[0m'
echo -e "${YELLOW}🔍 Mengecek apakah OpenSSH sudah terinstal...${NC}"
if ! pacman -Q openssh &>/dev/null; then
 echo -e "${RED}❌ OpenSSH belum terinstal.${NC}"
 echo -e "${YELLOW}➡️ Menginstal openssh...${NC}"
 sudo pacman -S --noconfirm openssh
else
 echo -e "${GREEN}✅ OpenSSH sudah terinstal.${NC}"
fi
echo -e "\n${YELLOW}🔍 Mengecek lokasi binary ssh...${NC}"
if ! command -v ssh >/dev/null 2>&1; then
 echo -e "${RED}❌ ssh tidak ditemukan di PATH.${NC}"
 echo "PATH saat ini:"
 echo "$PATH"
 echo "Pastikan /usr/bin ada di PATH kamu."
 exit 1
else
 SSH_PATH=$(command -v ssh)
 echo -e "${GREEN}✅ ssh ditemukan di: ${SSH_PATH}${NC}"
fi
echo -e "\n${YELLOW}🧪 Mengecek versi ssh...${NC}"
ssh -V || {
 echo -e "${RED}❌ Gagal menjalankan ssh.${NC}"
 exit 1
}
# Tes koneksi git remote (jika di dalam repo)
if git rev-parse --is-inside-work-tree &>/dev/null; then
 echo -e "\n${YELLOW}🔍 Mengecek remote Git...${NC}"
 REMOTE_URL=$(git config --get remote.origin.url || true)
 if [[ -n "$REMOTE_URL" ]]; then
 echo "Remote ditemukan: $REMOTE_URL"
 if [[ "$REMOTE_URL" == git@* ]]; then
 echo -e "${YELLOW}🧪 Menguji koneksi SSH ke Git...${NC}"
 ssh -T [email protected] || true
 else
 echo -e "${GREEN}ℹ️ Remote menggunakan HTTPS, SSH tidak diperlukan.${NC}"
 fi
 else
 echo -e "${RED}⚠️ Tidak ada remote.origin.url ditemukan.${NC}"
 fi
fi
echo -e "\n${GREEN}🎉 Semua selesai! SSH siap digunakan untuk Git.${NC}"

Kamu bisa simpan file ini sebagai fix-git-ssh.sh, lalu jalankan:

chmod +x fix-git-ssh.sh
./fix-git-ssh.sh

📸 Contoh Tampilan & Tes

Contoh git fetch setelah fix
Hasil perbaikan ssh di Arch Linux

🧰 Solusi untuk Arch Linux

Cukup jalankan ini:

sudo pacman -S openssh

Lalu pastikan sudah terdeteksi:

which ssh
ssh -V

Kalau muncul versi seperti OpenSSH_9.8p1, berarti sudah beres ✅