今天有個同學問了我一下關于之前442學到的磁盤方面的問題,過了幾個月我也蒙了。拿出了電腦放出了狗才終于明白了,看來有必要留下點記錄,真的容易忘啊。
先後看了三篇文章,第一篇http://space.itpub.net/22161612/viewspace-670306,裡面又引用了兩篇文章。http://www.linuxforums.org/forum/miscellaneous/5654-linux-disk-block-size-help-please.html和http://blog.chinaunix.net/u1/33824/showart_408296.html。
現在終于明白點了,給自己來個小結:
磁盤裡面的和檔案系統裡面的兩個都叫block size但是大小是不一樣的,磁盤裡面一般都是512bytes,檔案系統裡面的不一定也是512bytes。
舉例說明:
Disk /dev/sda: 160.0 GB, 160040803840 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 25 200781 83 Linux
紅色的是磁盤裡面的一個block的大小,藍色的是檔案系統裡面的block的個數。
紅色的是1block=512byes 藍色的是1block=1024bytes
檔案系統裡面的用#tune2fs -l /dev/sda1|grep Block可以看到一個block是多大。
犯暈時:
sda1的大小:25*8225280/1024/1024=196MB 200781*512/1024/1024=98MB 少一半囧了。
明白之後:
#tune2fs -l /dev/sda1|grep Block
sda1的大小:25*8225280/1024/1024=196MB 200781*1024/1024/1024=196MB 對上了 。
虧了還學過442,blocak size調優的時候會用到,還是弄明白的好。
2011年3月18日:
#df -H 能顯示正确大小 磁盤用1000而不是1024
本文轉自 sharkyan 51CTO部落格,原文連結:http://blog.51cto.com/sharkyan/415932,如需轉載請自行聯系原作者