首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >xfs:尝试在设备结束后进行访问

xfs:尝试在设备结束后进行访问
EN

Unix & Linux用户
提问于 2018-04-12 12:21:22
回答 1查看 2.5K关注 0票数 0

在redhat 7.2上(我没有根访问权限)命令,如lscat,在xfs文件系统挂起中创建的某些目录/文件上运行/运行。我还观察到了dmesg输出的连续错误,如:

[Thu Apr 12 10:22:27 2018] dm-3: rw=33, want=63076776, limit=62914560 [Thu Apr 12 10:22:27 2018] attempt to access beyond end of device [Thu Apr 12 10:22:27 2018] dm-3: rw=33, want=63076784, limit=62914560 [Thu Apr 12 10:22:27 2018] attempt to access beyond end of device

文件系统的大小应该是50 be,在df -h输出上是50 be。

代码语言:javascript
复制
$ df -h /opt/data
Filesystem                     Size  Used Avail Use% Mounted on
/dev/mapper/datavg-optdata   50G  3.5G   47G   7% /opt/data

但是,当我检查lsblk时(只有这个功能不需要根访问),它显示了30 it的LV设备大小。在更小的30 LV上,FS怎么会被调整到50 LV?还是这里还有其他的xfs问题?

代码语言:javascript
复制
sdb                      8:16   0   50G  0 disk
└─datavg-optdata    253:3    0   30G  0 lvm  /opt/data

有人有线索吗?

EN

回答 1

Unix & Linux用户

发布于 2018-04-12 13:57:40

正如frostschutz和psusi已经评论过的那样,最有可能的事件链是文件系统和它包含的LV最初都是50G大小的。

xfs_growfs命令通常会增长文件系统以匹配底层存储设备的大小(无论是LV、分区还是整个磁盘)。xfs_growfs二进制文件中可用的消息似乎表明,即使您自己指定了文件系统的新大小,它也会检查答案,因此不可能将文件系统扩展到底层LV的范围之外。

更有可能的是,有人忘记了lvreduce命令(如果没有-r选项,如果实现的话)只会减少LV,而不会减少其中的文件系统。而且XFS文件系统没有缩小的能力,只具有扩展的能力。

使用LVM,扩展现有的文件系统和LV很容易.因此,人们可能会认为,减少这些风险同样容易。不幸的是,这并不完全正确:减少文件系统通常比扩展文件系统要复杂得多。

现在,如果将datavg-optdata LV从50G减少到30G,就意味着文件系统尾部的20G块被切断了。如果立即将减少的空间用于其他用途,则那里的数据现在丢失了。

票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/437268

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档