温馨提示×

linux sftp传输失败咋办

小樊
35
2026-10-07 22:27:19
栏目: 智能运维

Linux 下 SFTP 传输失败 的原因有很多,可以按下面步骤快速排查和解决:


一、先看错误信息(最重要)

执行 SFTP 时,仔细看报错内容,常见错误包括:

  • Permission denied
  • Connection refused
  • Connection timed out
  • No such file or directory
  • Broken pipe

把具体报错贴出来,能直接定位问题。


二、常见原因与解决办法

1️⃣ 权限问题(最常见)

现象:

put: Permission denied

解决:

  • 确认目标目录有写权限:
ls -ld /远程目录
  • 本地文件是否可读:
ls -l 本地文件
  • 用对应用户登录(不是 root 被禁?)

2️⃣ SSH / SFTP 服务未开

现象:

Connection refused

解决:

systemctl status sshd

没开就:

systemctl start sshd

3️⃣ 防火墙 / 端口问题

现象:

Connection timed out

检查:

telnet 服务器IP 22

或

ssh 用户@服务器IP

防火墙放行:

ufw allow 22
# 或
firewall-cmd --add-service=ssh --permanent

4️⃣ SFTP 被禁用

现象: 能 SSH,但不能 SFTP

检查:

grep sftp /etc/ssh/sshd_config

应有:

Subsystem sftp internal-sftp

修改后重启:

systemctl restart sshd

5️⃣ 磁盘满了

df -h

磁盘 100% 会直接传输失败。


6️⃣ 大文件 / 网络中断

解决:

  • 使用 rsync 更稳:
rsync -avz 文件 用户@IP:/目录
  • 或断点续传工具:lftp

三、一个标准 SFTP 示例

sftp user@192.168.1.10
put local.txt /home/user/

四、你可以这样告诉我

为了更精准帮你,可以发:

  1. 完整报错信息
  2. 用的命令
  3. 本地 & 服务器系统(CentOS / Ubuntu?)

我可以一步一步帮你查。

0 踩