Lỗi "ssh: Could not resolve hostname" thường do: mất kết nối mạng, gõ sai địa chỉ/IP, hoặc file /etc/hosts sai. Dưới đây là quy trình chẩn đoán và sửa chữa.
Kiểm Tra Cơ Bản
- Kiểm tra kết nối mạng (Wi-Fi/Ethernet), độ mạnh tín hiệu.
- Kiểm tra chính tả lệnh:
ssh user@hostnamehoặcssh user@IP. Không phảissh user@servernếu "server" không phân giải được.
Phương Pháp 1: Đảm bảo Cú Pháp Lệnh Đúng
Mở terminal (Ctrl+Alt+T, hoặc Ctrl+Alt+F1..F6 trên server). Cú pháp chuẩn:
ssh user@ten_mien_hoac_IP
Ví dụ: ssh root@myPlace hoặc ssh root@192.168.1.50.
Nếu gõ ssh root@server mà "server" không có trong DNS//etc/hosts → báo lỗi:
ssh: Could not resolve hostname server: Name or service not known
Phương Pháp 2: Sửa File /etc/hosts
Cần quyền root để chỉnh sửa.
Từ terminal (có GUI):
sudo nano /etc/hosts
Từ GUI (Run dialog Alt+F2/Super+R):
gksu gedit /etc/hosts
(Thay gedit bằng mousepad, leafpad, kate tùy DE).
Đảm bảo các dòng sau tồn tại duy nhất một lần:
127.0.0.1 localhost
127.0.1.1 TenMayCuaBan
TenMayCuaBan = hostname thực tế (xem bằng lệnh hostname).
Nếu dùng IPv6, thêm:
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
Quan trọng: Comment (thêm # đầu dòng) các dòng trùng lặp. Chỉ giữ 1 ánh xạ cho mỗi tên. Lưu file và thoát editor ngay.
Sau Khi Sửa
- Thử lại lệnh
sshvới cú pháp đúng. - Nếu vẫn lỗi →
reboot.
Mẹo Nhớ
Luôn nhớ: ssh user@hostname. Không bao giờ bỏ user@ trừ khi user local = user remote.