Shell

無法將 .pem 文件內聯爲 ssh 的 -i 選項

  • September 24, 2019

我收到此錯誤:

警告:身份文件 /dev/fd/63 無法訪問:文件描述符錯誤。

執行此命令時:

ssh -Y 'root@ec2-54-xxx-94-xxx.us-west-2.compute.amazonaws.com' -i <(cat << EOF
-----BEGIN RSA PRIVATE KEY-----
MIIEogIBAAKCAQEAgbUQXIfIWtMJpYcTn5C+LStaL8NICo/0l1V33IQ8pQADUk+Tq+cfotyiHrRl  
JXRyn8KJe8zmAQs7uSR3drVdj2KNFhXnFsEbXYxjAS93ZutO1Z2eBvvKcp/W8AoOr7r2JtTXaGml
W18/0Fot83UcVRdqYI4CCv5hhYN7oGDYT94d8d0yFtuIhXf8IlkCgYEAkugROAktxuG1AgQ9KGP5
.........
a3ZAHHf5F2rn0oW0X5YNtEWqhGknYQkkiztqaWAPM4bAP7gpDIqYyqh81soqYHxxP9q2Ch634NPb
BMmdZb9hMb/PY9bJNKwZt/yO7W0yq1zzjXFIqhymGDqkc/E4/K+V+svsDIV8VtainrY=
-----END RSA PRIVATE KEY-----
EOF
)
nix-collect-garbage

我只是想在遠端機器上執行“nix-collect-garbage”命令。

也許臨時文件/fd 有錯誤的權限?有沒有辦法給我正確的權限?

我認為這是程序替換的權限問題,但不確定如何解決。

ssh關閉它的所有文件描述符,除了標準的 in、out 和 err,在做任何有趣的事情之前,甚至在解析它的命令行開關之前。

因此,您不能使用程序替換(或任何使用該/dev/fd/機制的 shell 功能)將文件參數傳遞給-i其他選項。

引用自:https://unix.stackexchange.com/questions/543336