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

使用sudo用户登录后scp跨服务器复制文件提示Permission denied如何解决

SCP Permission denied 报错原因及排查方案

常见触发原因

  • 源端文件权限不足:执行scp命令的用户对本地待传输的file没有可读权限
  • 目标端目录权限不足:目标服务器上的x123用户对/opt/apps目录没有可写权限
  • 目标端路径不存在:/opt/apps目录未在目标服务器上提前创建
  • SSH服务配置限制:目标服务器sshd配置禁止了x123用户登录,或禁用了scp传输功能
  • 目标端资源不足:/opt挂载分区磁盘满,或x123用户的磁盘配额已用尽

逐步排查处理

第一步:校验源端文件权限

在源服务器执行以下命令确认文件权限:

ls -l file

如果执行scp的用户没有读权限,直接在scp命令前加sudo执行即可:

sudo scp -p file x123@targethost:/opt/apps

第二步:校验目标端目录权限与存在性

登录目标服务器,切换为x123用户执行以下命令测试写入权限:

touch /opt/apps/test.tmp

如果提示权限不足,可选三种处理方案:

  • 给x123用户单独授予目录权限(目标端root身份执行):setfacl -m u:x123:rwx /opt/apps
  • 更换目标端有/opt/apps写入权限的用户执行scp
  • 先把文件传到x123的home目录/home/x123,登录目标端后再手动移动到/opt/apps

如果提示目录不存在,先创建目录再配置权限即可:

sudo mkdir -p /opt/apps

第三步:校验SSH登录权限

本地执行以下命令测试x123用户能否正常登录目标服务器:

ssh x123@targethost

如果登录失败,检查目标服务器/etc/ssh/sshd_config配置,确认x123不在DenyUsers/ DenyGroups列表中,同时没有配置禁用scp的ForceCommand规则。

第四步:校验目标端资源

登录目标服务器执行以下命令检查磁盘使用情况:

df -h /opt
quota -u x123

如果磁盘满或者配额超限,清理无用文件或扩容磁盘即可解决。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 17:06:04