Linux

帶有選項 -O ^64bit 的 mkfs.ext4 錯誤

  • December 31, 2020

當我在腳本中執行 /sbin/mkfs.ext4 -O ^64bit /dev/app/mysqldata 命令時,它給了我以下錯誤:

nd(): null: With return code "1", Output from: "/sbin/mkfs.ext4 -O ^64bit /dev/app/mysqldata"
mke2fs 1.42.9 (20-Jan-2014)
mkfs.ext4: Size of device (0x1b48caa00 blocks) /dev/app/mysqldata too big to be expressed
       in 32 bits using a blocksize of 4096.

但如果我在沒有 -O ^64bit 的情況下執行,它執行良好。有人可以幫忙嗎?

/sbin/mkfs.ext4  /dev/app/mysqldata

**只是不要嘗試手動禁用 ( ^) 該功能,然後。**您已經在嘗試創建一個超出沒有它的可能的捲。增加文件系統大於 16TiB(4k 塊)的能力是目前(幾乎)唯一的選擇點。

我懷疑您將 64 位選項與其他選項混淆了。從man 5 ext4

64bit
Enables the file system to be larger than 2^32 blocks.  This feature is
set automatically, as needed, but it can  be  useful  to  specify  this
feature  explicitly  if the file system might need to be resized larger
than 2^32 blocks, even if it was smaller than that  threshold  when  it
was  originally  created.   Note  that  some  older  kernels  and older
versions of e2fsprogs will not support  file  systems  with  this  ext4
feature enabled.

如果嘗試操作的腳本不是由您編寫的:考慮另一種解釋為什麼它存在:腳本的作者想讓這個操作失敗,因為她知道無論它設置什麼都不能正常或可靠地使用無論如何,那個大小的體積。您可能正在嘗試以預期不會在其下執行的規模使用軟體。

引用自:https://serverfault.com/questions/1048137