我正在尝试在2TB大的大型raid阵列上使用e2fsck并使用GPT进行分区(因为大小).
系统上只安装了1GB的ram,此时我无法添加更多内存.
问题是,在设备上启动fsck后不久,我收到一条错误消息:
Error storing directory block information (inode=115343515,block=0,num=108120142): Memory allocation failed e2fsck: aborted
经过一些在线搜索和研究后,我遇到了以下帖子:
Running out of memory running fsck on large filesystems
在查找e2fsck.conf的MAN页面后,我遵循了建议,并基本上创建了一个/etc/e2fsck.conf文件,如下所示:
[scratch_files] directory = /var/cache/e2fsck
并确保创建/ var / cache / e2fsck directry后再次尝试fsck.再次启动fsck并观察可用内存,cpu使用情况以及/ var / cashe / e2fsck的目录大小…我可以说它定义了很多帮助…但它最终仍然失败了同样的错误.基本上它有助于减缓内存消耗,但并没有将它们全部否定.
所以我尝试使用以下内容播放e2fsck.conf文件的附加标志:
dirinfo = false
要么
dirinfo = true
和
icount = false
要么
icount = true
在短时间内发生同样的错误,这两者似乎都没有多大影响.
我错过了什么吗?我很好用fsck花了很长时间……但我需要它才能完成而不是错误.
解决方法
如果可以,请在系统中添加一些交换空间. fsck需要花费很长时间,但最终会完成.下一次,将文件系统切成小块.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。