麒麟OS执行rsync同步大量文件时提示权限不足或空间满怎么排查

星强吖_1906

星强吖_1906

2026-11-05

564人浏览

原创

立即定位需看错误码:含“Permission denied (13)”指向路径则分源/目标端,“No space left on device (28)”直指磁盘耗尽;用--dry-run -v观察open/mkstemp前缀,配合namei -l查目录x权限、df -i查inode、getenforce和findmnt验SELinux与挂载状态。

麒麟os执行rsync同步大量文件时提示权限不足或空间满怎么排查

麒麟OS执行rsync同步大量文件时提示权限不足或空间满,需立即定位是源端读取受阻、目标端写入失败,还是磁盘真实耗尽——错误信息中明确含“Permission denied (13)”指向源或目标路径,“No space left on device (28)”则直接锁定空间问题。

快速区分权限不足发生在哪一端

运行同步命令时追加--dry-run -v参数,观察报错行前缀:【open "/src/file"】表示源端读取失败;【mkstemp "/dst/file"】或Permission denied (13)出现在目标路径,则是目标端写入权限或属性设置问题。

若报错未带具体路径,仅显示some files could not be transferred,优先检查目标端——这类模糊提示90%以上源于目标目录无法创建临时文件、设置时间戳或修改属主。

用rsync -av --delete --dry-run /src/ user@host:/dst/ 2>&1 | head -20截取前20行错误,比全量日志更易聚焦关键线索。

排查源端读取权限(Permission denied 指向源路径)

方法一:逐层验证目录执行权限
执行namei -l /path/to/source,输出中任一级目录权限若不含x(例如drw-r--r--),即为阻断点——Linux要求从根目录到文件的每一级父目录都必须有x权限才能进入访问。

方法二:确认实际运行用户身份
定时任务中运行rsync时,crontab默认不加载~/.bashrc,可能缺失umask导致新建文件权限过严;在crontab中显式添加umask 022并用绝对路径调用rsync(如/usr/bin/rsync)可规避此问题。

方法三:检查KYSEC安全机制干扰
麒麟V10默认启用KYSEC,它可能拦截非授权进程的文件访问。执行cat /proc/sys/kernel/kylin_sec,若返回1,临时关闭验证:echo 0 | sudo tee /proc/sys/kernel/kylin_sec。注意:该操作需管理员权限,且仅用于排查,验证后应恢复。

MuleRun
MuleRun

一款AI办公效率工具,主要用于全球首个AI Agent交易平台,适合需要提升相关任务效率的用户。

下载

排查目标端写入权限与空间(Permission denied 或 No space left)

第一步:确认目标目录基础权限
执行ls -ld /dst/path,若输出中无w(如dr-xr-xr-x),说明当前用户无写权限;若属主为root而你不是root,直接sudo rsync会改变解压后文件属主,更推荐sudo chown $USER:$USER /dst/path再同步。

第二步:检查磁盘真实使用率
不要只看df -h,执行df -i确认inode是否耗尽——小文件极多时,即使空间充足也会因inode满而报No space left on device;若Use%列显示100%,用find /dst/path -xdev -type f | head -20快速查看大文件分布。

第三步:绕过不可写子目录(仅限非关键路径)
若目标目录下存在系统保留子目录(如.Trash-1000)导致同步中断,添加--exclude='.Trash*' --exclude='lost+found'跳过,避免整个任务失败。

验证SELinux与挂载限制(麒麟V10特有)

执行getenforce,若返回Enforcing,需检查SELinux布尔值:getsebool rsync_full_access。若为off,运行sudo setsebool -P rsync_full_access 1——【-P参数必须加上,否则重启失效】。

检查源或目标路径所在分区是否只读挂载:findmnt -T /path/to/dir,若TYPE列显示ext4但OPTIONS含ro,说明挂载时被设为只读,需联系系统管理员修复磁盘或重新挂载。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
DBeaver怎么导入数据
DBeaver怎么导入数据

DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。

2026.11.05

0

12

DBeaver安全防护教程大全
DBeaver安全防护教程大全

DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。

2026.11.05

0

12

DBeaver连接创建与配置教程
DBeaver连接创建与配置教程

本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。

2026.11.04

0

16

XORM框架结构体映射与表结构同步
XORM框架结构体映射与表结构同步

本专题围绕XORM框架的结构体映射展开,说明表名与字段的命名策略、xorm标签常用属性、主键自增与时间字段自动填充,并演示Sync2自动建表、增量字段升级、索引声明与反向生成结构体的完整流程。

2026.11.04

0

15

XORM框架安装配置与数据库连接
XORM框架安装配置与数据库连接

本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。

2026.11.04

0

15

XORM框架安装配置与数据库连接
XORM框架安装配置与数据库连接

本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。

2026.11.04

0

16

XORM框架安装配置与数据库连接
XORM框架安装配置与数据库连接

本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。

2026.11.04

0

16

XORM框架零基础入门教程
XORM框架零基础入门教程

本专题梳理XORM框架的入门路径,从框架定位、依赖安装、连接数据库到跑通第一个增删改查示例,讲清Engine初始化、日志开启与项目目录规划,并对比GORM等同类ORM的差异,帮助Go开发者建立整体认知。

2026.11.04

0

15

Docker Desktop怎么设置端口映射
Docker Desktop怎么设置端口映射

本专题聚焦Docker Desktop容器端口映射与访问配置,整理从创建容器、设置端口绑定到验证本地服务访问的操作流程。针对端口被占用、映射配置错误、容器服务无法访问等情况,也提供相应的检查方向,方便用户完成端口配置。

2026.11.03

20

18

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.7万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 134.1万人学习