在许多文件系统相关的手册页中,单位由单个字母 [bBsSkKmMgGtTpPeE] 表示。大写和小写是什么意思?即兆字节、兆比特、兆比特、兆比特,哪个是哪个?
答案1
Unix 工具并不一致,您需要检查每个工具的手册页。
LVM 实用程序是一致,并且一些(但不是全部)手册页包含详细信息。例如,从等级(8):
所有大小均以以下单位输出:(h)人类可读、(b)字节、(s)扇区、(k)伊洛字节、(m)兆字节、(g)兆字节、(t)兆字节、(p)兆字节、 (e)xa 字节。大写使用 1000 (SI) 的倍数而不是 1024。
即b
或者B
是字节,s
或者S
是扇区(512字节),K
是1000字节(SI千字节),k
是1024字节(千比字节),M
是1000000字节(SI兆字节),M
是1048576字节(兆字节),等等。
更一般地说,b
在文件或磁盘大小的上下文中,绝不是位;它通常是字节,但有时可能是块(块的大小也取决于工具)。前缀 k/m/g/t/p/e 可能表示 1000 的幂或 1024 的幂,具体取决于工具,有时还取决于大小写。 LVM 中的 S 代表扇区是不寻常的。另一个常见单位(LVM 不使用)是c
字节;这来自C字符,早在多字节字符流行之前。
答案2
某些 LVM 命令(例如lvcreate
)对小写字母单位和大写字母单位没有区别。b
orB
表示字节,s
或S
表示 512 字节的扇区, k
或K
表示二进制千字节 (2^10 = 1024 字节),m
或M
表示二进制兆字节 (2^20 = 1 048 576 字节),g
或G
表示二进制千兆字节 (2^30 = 1 073 741 824 字节),t
或T
表示二进制太字节(2^40 = 1 099 511 627 776 字节),p
或P
表示二进制拍字节和e
或E
表示二进制艾字节。记录在man lvcreate
选项下-L
。其他 LVM 命令,例如lvs
,采用小写单位表示 2 的幂,采用大写单位表示 10 的幂。
其他命令有不同的约定。例如,对于二进制单位dd
需要K
, M
,而对于十进制单位需要(not ), , ;并使用, ,表示二进制单位,(而不是), ,表示十进制单位;阅读您想要使用的命令的手册页。G
kB
KB
MB
GB
du
df
K
M
G
KB
kB
MB
GB
没有与文件系统相关的命令使用位大小。它们始终以字节为单位。
答案3
小写字母 b 表示位,大写字母 B 表示字节
MB/mB = megabyte
Mb/mb = megabit
数学解释很简单:
MiB = Mebibyte = 1024 KiB
KiB = Kibibyte = 1024 Bytes
MB = Megabyte = 1,000 KB
KB = Kilobyte = 1,000 Bytes
答案4
正如手册页中提到的lvcreate
-L|--size LogicalVolumeSize[b|B|s|S|k|K|m|M|g|G|t|T|p|P|e|E]
Gives the size to allocate for the new logical volume. A size suffix of
b or B for bytes,
s or S for sectors as 512 bytes,
k or K for kilobytes,
m or M for megabytes,
g or G for gigabytes,
t or T for terabytes,
p or P for petabytes or E for exabytes is optional.
Default unit is megabytes.
大写仅用于将其表示为 1000 而不是 1024 的倍数。
还可以指定自定义单位,例如 --units 3M