如何使用 PuTTY 将文件从 Windows 传输到 Linux?
2024-03-19 22:15:15
使用 PuTTY 通过 Windows 将文件传输到 Linux
问题
当你使用 PuTTY 通过 SSH 远程连接到 Linux 计算机时,可能会遇到将文件从本地 Windows 笔记本电脑传输过去的困难。使用 scp
命令时,你可能会遇到以下错误:
- "No such file or directory":这表明你输入的文件路径不正确。
- "Permission denied":这表明你没有 Linux 计算机上目标文件夹的写入权限。
解决步骤
1. 检查路径的正确性
仔细检查文件路径中是否存在拼写错误或多余的字符。正确的路径应类似于:C:\Users\Admin\Desktop\file.txt
2. 使用绝对路径
使用文件的绝对路径,包括驱动器号。例如:C:\Users\Admin\Desktop\file.txt
3. 检查 Linux 权限
确保你拥有 Linux 计算机上目标文件夹的写入权限。使用 ls -l
命令检查权限。
4. 使用 pscp 命令
PuTTY Suite 还提供了一个名为 pscp
的命令,专门用于在 Windows 和 SSH 服务器之间进行文件传输。它更易于使用,并且具有更友好的错误消息。尝试使用 pscp
命令:
pscp C:\Users\Admin\Desktop\file.txt username@linux_machine_ip:/path/to/destination/folder
5. 技巧
- 重命名文件为更简单的名称,以避免字符转义问题。
- 检查防火墙或防病毒软件是否阻止了文件传输。
- 使用详细模式(
-v
)重新运行scp
命令以获取更多调试信息。
示例
以下是使用 pscp
命令传输文件的示例:
pscp -v C:\Users\Admin\Desktop\file.txt username@192.168.1.10:/home/user/Desktop
此命令将文件 file.txt
从 Windows 笔记本电脑传输到 Linux 计算机上的 /home/user/Desktop
目录。
常见问题解答
1. 为什么我收到 "No such file or directory" 错误?
这表明文件路径不正确。检查路径中是否存在拼写错误或多余的字符。
2. 为什么我收到 "Permission denied" 错误?
这表明你没有 Linux 计算机上目标文件夹的写入权限。使用 chmod
命令修改权限。
3. 如何使用 pscp 命令?
使用以下语法:
pscp local_file_path username@linux_machine_ip:/path/to/destination/folder
4. 如何在详细模式下使用 scp 命令?
使用 -v
标志:
scp -v local_file_path username@linux_machine_ip:/path/to/destination/folder
5. 如何解决文件传输被防火墙阻止的问题?
在防火墙中允许 scp
或 pscp
端口。