我在一台内存非常小(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.
对我来说,它有initramfs
512MB。