使用有限内存运行 mke2fs

使用有限内存运行 mke2fs

我在一台内存非常小(128MB)的电脑上工作——为了我的应用程序,我需要格式化大容量的硬盘(4TB)

我可以格式化超过 2TB 的磁盘,最多约 2.5TB,但除此之外,我得到了以下

mke2fs 1.42-WIP (16-Oct-2011)
/dev/sda1: Memory allocation failed while setting up superblock

我意识到我确实在合理性方面存在问题 - 有什么技巧吗?(块大小等)

知道如何格式化非常大的磁盘吗?

答案1

添加一些交换:http://www.cyberciti.biz/faq/linux-add-a-swap-file-howto/

dd if=/dev/zero of=/swapfile1 bs=1024 count=524288
mkswap /swapfile1
swapon /swapfile1

这将创建 512MB 的交换并启用它。不过,您需要编辑您的文件,/etc/fstab使其在重启后保留。

答案2

更好的方法是使用标志-D。从手册页中:

 Use direct I/O when writing to the  disk.   This  avoids  mke2fs
 dirtying  a  lot  of buffer cache memory, which may impact other
 applications running on a busy server.  This option  will  cause
 mke2fs  to run much more slowly, however, so there is a tradeoff
 to using direct I/O.

对我来说,它有initramfs512MB。

相关内容