You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

向AWS EC2实例传输Kaggle文件时遇SCP权限类错误求助

解决SCP传输Kaggle文件到AWS EC2时的密钥文件找不到问题

嘿,我来帮你搞定这个SCP的错误!从你给出的错误信息来看,核心问题有两个:命令执行的位置错了,还有密钥文件的路径没填对,咱们一步步来捋清楚:

首先,你搞反了命令的执行环境!

你现在是在已经登录到EC2实例的终端里跑scp命令,但这个命令的写法是用来从你的本地电脑(比如Windows机器)把文件传到EC2的,应该在本地的终端工具里执行——比如Putty配套的命令行、Windows PowerShell,或者Git Bash,而不是在EC2的远程终端里操作。

如果你确实需要在EC2内部执行SCP(比如从其他服务器拉文件),那得先解决这两个问题:

1. 替换占位符为真实的密钥文件路径

你写的/path/my-key-pair.pem是教程里的占位符,不是实际路径!你得把它换成密钥文件在EC2实例里的真实位置:

  • 比如你把密钥传到了EC2用户的家目录,那路径就是~/my-key-pair.pem
  • 如果放在/home/ec2-user/keys文件夹里,就写/home/ec2-user/keys/my-key-pair.pem

2. 修复密钥文件的权限问题

AWS对密钥文件的权限要求很严格,权限太开放会被拒绝,先执行这条命令修改权限:

chmod 400 /实际路径/my-key-pair.pem

正确的本地→EC2传输命令(在本地终端执行)

如果你是要把本地的cookies.txt传到EC2,用下面的格式(以Windows环境为例):

# 用PowerShell或者Git Bash的话
scp -i "C:\Users\你的用户名\路径\my-key-pair.pem" "C:\Users\你的用户名\路径\cookies.txt" ec2-user@ec2-34-214-179-99.us-west-2.compute.amazonaws.com:~

或者用Putty自带的PSCP工具:

pscp -i "C:\Users\你的用户名\路径\my-key-pair.ppk" "C:\Users\你的用户名\路径\cookies.txt" ec2-user@ec2-34-214-179-99.us-west-2.compute.amazonaws.com:~

⚠️ 注意:Putty用的是.ppk格式的密钥,如果你只有.pem文件,需要用PuttyGen工具转换成.ppk格式才能用。

最后再检查两个关键点

  • 确认你的EC2安全组允许SSH(22端口)的入站流量,并且你的本地IP在允许列表里
  • 确认本地的密钥文件没有被改名、移动,路径完全正确

内容的提问来源于stack exchange,提问作者Prajwal Acharya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 06:38:48