Một trong những nhà cung cấp của chúng tôi đã cung cấp một hệ thống nhúng mới để chúng tôi thử nghiệm và một trong các tập lệnh thử nghiệm bash của tôi không thành công với:
sshpass -p xxxxxx ssh -o "StrictHostKeyChecking=no" root@rpi-2 "Làm công cụ"
ssh_askpass: exec(/usr/lib64/misc/ssh-askpass): Không có tệp hoặc thư mục như vậy
Quyền bị từ chối, vui lòng thử lại.
Có vẻ như họ đã nâng cấp lên Ubuntu (từ Gentoo):
ID nhà phân phối: Ubuntu
Mô tả: Ubuntu 18.04.6 LTS
Phát hành: 18.04
Tên mã: sinh học
Một tìm kiếm trên google đã đưa tôi đến diễn đàn này nơi một chuỗi khác (liên kết đã bị xóa) chỉ ra một vấn đề tương tự đã được giải quyết bằng cách cài đặt gói ssh-askpass.
Kiểm tra với danh sách apt, tôi thấy không có ssh-askpass nào được cài đặt trên hệ thống này mà tôi tin rằng đó là nguyên nhân cốt lõi gây ra sự cố của tôi.
Tất nhiên, vấn đề của tôi là, hầu hết hệ thống này ở chế độ chỉ đọc và tôi không thể thực hiện bất kỳ cài đặt apt nào (ít nhất là không có cài đặt nào sẽ sửa đổi/bin/lib/usr, v.v.).
Tôi có ấn tượng rằng ssh-askpass đã được sử dụng trong môi trường GUI và không bắt buộc đối với các yêu cầu CLI của ssh. Trong khi X được cài đặt ở đây, nó không liên quan đến phiên tôi đang chạy. Cả HIỂN THỊ và SSH_ASKPASS đều không được đặt trong môi trường của tôi.
Vì vậy, tôi tự hỏi liệu có cách giải quyết nào cho vấn đề này không hay liệu cách thay thế duy nhất của tôi là quay lại nhà cung cấp và yêu cầu họ đưa gói ssh-askpass vào bản phân phối của họ, điều mà họ có thể làm nhưng sẽ mất ít nhất một chu kỳ phát triển (tháng) phê duyệt.
Mục tiêu cuối cùng chỉ đơn giản là thực thi từ xa tập lệnh bash trên Raspberry Pi từ hệ thống nhúng thông qua mạng LAN mà không cần tương tác của người dùng (tức là không có dấu nhắc mật khẩu).
Gợi ý?