linux硬盤分區格式化及掛載
1、硬盤的接口類型
硬盤的接口一般分為兩種,一種是IDE並行接口,一種是SATA串行接口, 在linux上面IDE接口的硬盤被識別為/dev/hd[a-z]這樣的設備,其中hdc表示光驅設備,這是因為主板上面一般有兩個IDE插槽,一個IDE插槽可以接兩個硬盤,而光驅是接著IDE的第二個插槽上面的第一個接口上面。其他諸如SCSI,SAS,SATA,USB等接口的設備在linux識別為/dev/sd[a-z]。
2、linux硬盤的分區
磁盤的分區分為: primary(主分區)、extended(擴展分區)、Logical (邏輯分區)且主分區加上擴展分區的個數小於等於4個。且擴展分區最多只有一個,擴展分區是不能直接在裡面寫入數據的,擴展分區裡面新建邏輯分區才能讀寫數據。如果看見一個硬盤有很多分區,則其實是在擴展分區裡面新建的邏輯分區。
主分區從 sdb1--sdb4
邏輯分區是從 sdb5--sdbN
如果所示linux硬盤分區之間的關系
第一種情況為:四個主分區
第二種情況為:三個主分區+一個擴展分區(擴展分區裡面包括邏輯分區)
3、linux上如何實現分區
linux上面實現分區的命令: fdisk
1)fdisk -l [DEVICE]
查看linux某個硬盤的信息 fdisk -l /dev/[hs]d[a-z],不接設備名稱,默認是查看所有硬盤的信息。
2)fdisk DEVICE 可以對硬盤進行分區操作
[root@Redhat5 ~ ~]# fdisk /dev/sda
Command (m for help): m (輸入m查看可以操作的菜單)
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition //刪除一個分區
l list known partition types //已知的分區類型列表
m print this menu
n add a new partition //添加一個新的分區
o create a new empty DOS partition table
p print the partition table //打印分區表
q quit without saving changes //退出但不保存配置
s create a new empty Sun disklabel
t change a partition"s system id //改變一個分區的系統標識
u change display/entry units //改變顯示/條目單位
v verify the partition table //驗證分區表
w write table to disk and exit //保存退出
x extra functionality (experts only)
常見linux支持的分區類型為82 swap交換分區、83 linux分區、8e LVM邏輯卷組。
分區修改完成後鍵入w保存退出。這時分區還不能使用,因為linux的內核還沒有識別分區的信息
4、使linux內核識別分區信息
cat /proc/partitions 查看內核識別的分區信息
[root@Redhat5 ~]# cat /proc/partitions
major minor #blocks name
8 0 125829120 sda
8 1 104391 sda1
8 2 41945715 sda2
8 3 1052257 sda3
253 0 30703616 dm-0
253 1 5111808 dm-1
讓內核重新讀取硬件分區表有兩個命令
partprobe /dev/sda ------> redhat 5.x ,redhat 6.x需要重啟
partx -a /dev/sda5 /dev/sda------->redhat 6.x
內核加載分區信息之後再查看
[root@Redhat5 ~]# cat /proc/partitions
major minor #blocks name
8 0 125829120 sda
8 1 104391 sda1
8 2 41945715 sda2
8 3 1052257 sda3
8 4 0 sda4
8 5 1959898 sda5
8 6 3911796 sda6
253 0 30703616 dm-0
253 1 5111808 dm-1
5、格式化分區
格式化分區的命令
mkfs -t fstype /dev/part -t選擇格式化的類型,然後是那個分區
mkfs.ext2 /dev/part 格式化為ext2的類型,然後是接那個分區
mkfs.ext3 /dev/part 格式化為ext3的類型,然後是接那個分區
mkfs.ext4 /dev/part 格式化為ext4的類型,然後是接那個分區
mke2fs 比之前幾個更加強大的格式化分區的命令
這幾個命令之間相關的關系
mkfs -t ext4 = mkfs.ext4 = mke2fs -t ext4
mkfs -t ext3 = mkfs.ext3 = mke2fs -j = mke2fs -t ext3
mkfs -t ext2 = mkfs.ext2 = mke2fs = mke2fs -t ext2
mke2fs (man mke2fs):創建文件類型--->/etc/mke2fs.conf 配置文件
-t:文件類型
-j:相當於 ext3
-b:指定塊大小{1024"2048|4096byte},塊大小取決cpu對內存頁框大小的支持,x86系統默認頁
大小是4096,4k
-L: label 設定卷標
-m: #預留給管理使用的塊所占的比率 一般用在分區很大的時候,#為數字
mke2fs -t ext3 /dev/sda5 #把分區格式為ext3格式的 mke2fs -t ext3 -b 2048 /dev/sda5 # 把分區的塊改成2048字節,一般用於系統中小文件很多的情況 mke2fs -t ext3 -m 3 /dev/sda5 #把分區預留的空間改為所占總空間的3%,默認為5%,因為當某個分區足夠大的時候,可以減少空間 mke2fs -t ext3 -L DATE /dev/sda5 #把分區的卷標設置為DATE
tune2fs 命令可以查看分區的詳細信息,mke2fs 與 tune2fs的關系和useradd與usermod的關系很類似。mke2fs支持的參數tune2fs大多數都支持,詳情請man tune2fs查看相關的幫助。
option
-l: 顯示文件系統超級塊信息;
-L label:重新設定卷標;
-m #: 調整預留給管理使用的塊所占據總體空間的比例;
-r #: 調整預留給管理使用的塊個數;
-o:設定掛載默認選項
-O: 設定文件系統默認特性
-E: 調整文件系統的擴展屬性
tune2fs不支持-b參數改變塊的大小。
tune2fs -l /dev/sda5 可以詳細查看分區的信息
[root@Redhat5 ~]# tune2fs -l /dev/sda5 | grep "^Block size" //顯示sda5分區塊的大小 Block size: 4096 [root@Redhat5 ~]# tune2fs -l /dev/sda5 | grep "^Reserved" //顯示sda5預留空間 Reserved block count: 24498 Reserved GDT blocks: 119 Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root)