linux quota磁盘限额,引发的rename系统调用 errno:18 - Invalid cross-device link
起因:
log4j日志滚动失败,debug发现jvm调用native方法rename失败,也就是系统调用rename失败。
自己写c程序系统调用rename,证实确实是这个问题。
日志打在容器里,日志目录通过docker挂载到宿主机上,而对日志目录设置了quota磁盘限额。挂载目录下的文件rename会失败,而它的子目录下的文件rename不会失败。
几经排查定位到quata设置引起的,在容器更新或重启后,目录的quotaId和文件的quotaId就会对不上。
而 Invalid cross-device link 原意就是,文件在不同的文件系统下,rename系统调用失败报这个错误码。
查询quota
#/usr/bin/lsattr -p -d /home/admin/logs/antdnsfilter/
设置quota
/usr/bin/chattr -p 16777675 +P /home/admin/logs/antdnsfilter/
取消quota
/usr/bin/chattr -p 0 -P /home/admin/logs/antdnsfilter/
linux quota磁盘限额,引发的rename系统调用 errno:18 - Invalid cross-device link的更多相关文章
- Linux:quota磁盘配额设置
磁盘配额的概念 quota 磁盘配额功能只在指定的文件系统(分区)内有效,未设置配额的文件系统不受限制. quota 针对指定的用户账号.组账号进行限制,其他用户或组不受影响. 磁盘配额可以进行两方面 ...
- Linux quota磁盘配额
quota:磁盘配额 限制某一群组所能使用的最大磁盘配额 限制某一用户的最大磁盘配额 使用限制: 仅能针对整个filesystem 核心必须支持quota quota的记录文件 只对一般身份使用者有效 ...
- linux磁盘限额配置:quota命令
LINUX下也有类似WINDOWS NTFS所用的磁盘限额,用的是quota来实现通过rpm -q quota确定是否已安装用quota只能对patation做限额,要做到针对某个目录来做只能靠ln ...
- linux磁盘限额和进阶文件系统的管理 quota RAID LVM
概念: Quota 的一般用途: 针对 WWW server ,例如:每个人的网页空间的容量限制! 针对 mail server,例如:每个人的邮件空间限制. 针对 file server,例如:每个 ...
- linux之磁盘配额(quota)
1.什么是quota 简单的说就是限制用户对磁盘空间的使用量. 因为Linux是多用户多任务的操作系统,许多人共用磁盘空间,为了合理的分配磁盘空间,于是就有了quota的出现. 2.quota的用途 ...
- linux之磁盘配额(quota)使用方法(转)
1.什么是quota 简单的说就是限制用户对磁盘空间的使用量. 因为Linux是多用户多任务的操作系统,许多人共用磁盘空间,为了合理的分配磁盘空间,于是就有了quota的出现. 2.quota的用途 ...
- [转]linux之磁盘配额(quota)
转自:http://www.jb51.net/LINUXjishu/78446.html 磁盘配额(quota)比较常用的几个情况是: * 针对WWW server,例如:每个人的网页空间的容量限制 ...
- rename系统调用的实现浅析
rename系统调用用于在同一个文件系统中做文件的rename操作.如果源和目的在不同mount点上,rename会返回错误EXDEV. rename系统调用的实现入口在./fs/namei.c中: ...
- quota磁盘配额
一.什么是磁盘配额 磁盘配额从字面意思上看就是给一个磁盘配置多少额度,而quota就是有多少限额的意思,所以总的来说就是限制用户对磁盘空间的使用量.因为Linux是多用户多任务的操作系统,许多人公用磁 ...
随机推荐
- Git远程协作和分支
一.远程基本操作 基本的配置远程仓库有两个命令: git remote add origin git@github.com:ZXZxin/gitlearn.git : git push -u orig ...
- [快捷键的使用] IntelliJ IDEA 将数据库里面的表转化为对象
本文讲述IntelliJ IDEA 多行编辑快捷键的使用,希望能帮到新人提高效率. 注意:在笔记本键盘上操作的方法. 数据库连接工具使用SQLyog 第一步: 从数据里面将文本拷贝到User类里面. ...
- Java自学-I/O 字符流
Java的字符流 Reader Writer Reader字符输入流 Writer字符输出流 专门用于字符的形式读取和写入数据 步骤 1 : 使用字符流读取文件 FileReader 是Reader子 ...
- web的应用模式
在开发web应用中,有两种模式: 1.前后端分离. 2.前后端不分离. 一.前后端不分离 在前后端不分离的应用模式中,前端页面看到的效果是有后端控制的,由后端渲染页面或重定向,也就是后端需要控制前端的 ...
- SpringMVC拦截器执行流程
1:MyInterceptor1.MyInterceptor2这2个拦截器都放行 MyInterceptor1......preHandleMyInterceptor2......preHandle ...
- Java 8 Time Api 使用指南-珍藏限量版
前面写过了Stream和Lambda,最近正想写Java 8的Time Api,小胖哥这个文章写得很好,就偷懒转载了. 1.概述 Java 8为Date和Time引入了新的API,以解决旧java.u ...
- ECharts将折线变平滑和去掉点的属性(转载)曲线变圆滑
本文链接:https://blog.csdn.net/sinat_36422236/article/details/62430114 series : [ { name:'your name', sy ...
- 国内不fq安装K8S四: 安装过程中遇到的问题和解决方法
目录 4 安装过程中遇到的问题和解决方法 4.1 常见问题 4.2 常用的操作命令 4.3 比较好的博客 国内不fq安装K8S一: 安装docker 国内不fq安装K8S二: 安装kubernet 国 ...
- MySQL数据物理备份之tar打包备份
复制数据文件方式,可以使用cp或tar 1.停止服务 [root@localhost mysql]# systemctl stop mysqld [root@localhost mysql]# net ...
- rhel7学习第五天
管道命令符的功能的确强大!