非常に奇妙な問題に直面しました。
私のFedora PCには12GBのスワップファイルがあります。
しかし、発行すると、次のような結果がfree -h
得られます。
total used free shared buff/cache available
Mem: 7.7Gi 1.8Gi 3.7Gi 409Mi 2.2Gi 5.2Gi
Swap: 11Gi 0B 11Gi
ご覧のとおり、私のスワップスペースは11GBと表示されますが、実際には12GBです。
これは私が使用すると修正されます。free --giga
total used free shared buff/cache available
Mem: 8 1 3 0 2 5
Swap: 12 0 12
ここでは正しい出力を得ています。
なぜ使用すると違いがあるのでしょうか? -h
そして --giga
?
ここで何が起こっているのでしょうか?
答え1
両方のコマンドは異なる単位を使用します。-h
値は1024の累乗で表されます(接尾辞「Gi」に注意してください)。ギガバイト)、--giga
1000の累乗値を表示します。
あなたの場合、12GB(ギガバイト)は12,000,000,000バイトです。これは11.2GiB(最も近い0.1に四捨五入)、free
11に丸められます。
free -h
フラグを使用すると、10の累乗を強制的に使用できます--si
。
free -h --si
units
次の種類の変換を実行できます。
$ units 12GB GiB
* 11.175871
/ 0.089478485