Linux是一套免費使用和自由傳播的類Unix作業系統,是一個基於POSIX和UNIX的多使用者、多工、支援多執行緒和多CPU的作業系統。我們在使用硬碟的時候,出現了問題,需要對硬碟進行格式化。那 Linux 如何格式化硬碟呢?下面就和大家說一下 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 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選擇格式化的型別,然後是那個分割槽
2 /dev/part 格式化為ext2的型別,然後是接那個分割槽
3 /dev/part 格式化為ext3的型別,然後是接那個分割槽
4 /dev/part 格式化為ext4的型別,然後是接那個分割槽
mke2fs 比之前幾個更加強大的格式化分割槽的命令
這幾個命令之間相關的關係
mkfs -t ext4 = 4 = mke2fs -t ext4
mkfs -t ext3 = 3 = mke2fs -j = mke2fs -t ext3
mkfs -t ext2 = 2 = mke2fs = mke2fs -t ext2
mke2fs (man mke2fs):建立檔案型別---》/etc/ 配置檔案
-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)
tune2fs -L DATE /dev/sda5 #修改卷標
tune2fs -m 3 /dev/sda5 #修改預留給管理使用的塊所佔據總體空間的比例
e2label:顯示或設定卷標
e2label /dev/sda5 MYDATE
blkid :顯示裝置的UUID及檔案系統型別,及卷標
6、掛載
mount 掛載------》顯示的是/etc/mtab檔案裡面的內容
mount [-t fstype] DEVICE MOUNT_POINT
命令 裝置 掛載點
mount [-t fstype] LABEL=“卷標” MOUNT_POINT --》e2label檢視標籤
mount [-t fstype] UUID=“UUID” MOUNT_POINT ----》blkid可以檢視UUID
options:
-o:用於指定掛著選項,常用的掛著選項,選項有很多用逗號隔開
ro:只讀掛載
rw:讀寫掛載(預設)
noatime:關閉更新訪問時間
auto:是否能夠由“mount -a”掛載
defaults:相當於rw, suid, dev, exec, auto, nouser, async.
sync:同步
async:非同步
noexec:不容易裝置中的二進位制直接執行
remount:重新掛載
loop:本地迴環裝置: 掛載系統已經存在的映象
-t:
-v:verbose 顯示詳細資訊
-n:掛載檔案系統時,不更新/etc/mtab檔案
-r:只讀掛載相當於“-o ro”
掛載的幾種方式
顯示系統已經掛載的檔案
掛載分割槽sda5到/mnt/sda5目錄下
[root@Redhat5 ~]# mkdir /mnt/sda5 #建立一個掛載目錄
[root@Redhat5 ~]# mount /dev/sda5 /mnt/sda5/ #把分割槽掛載到新建的目錄裡面
[root@Redhat5 ~]# mount “ grep ”/dev/sda5“ #檢視分割槽是否掛載
/dev/sda5 on /mnt/sda5 type ext3 (rw) #顯示分割槽已經掛載
[root@Redhat5 ~]# umount /dev/sda5 #解除安裝分割槽
[root@Redhat5 ~]#mount | grep ”/dev/sda5“ #發現分割槽已經被解除安裝
[root@Redhat5 ~]# blkid #顯示裝置的UUID及檔案系統型別,及卷標
/dev/mapper/vol0-home: UUID=”d1aeef77-bb47-4718-a91c-d4870b536440“ TYPE=”ext3“
/dev/sda3: LABEL=”SWAP-sda3“ TYPE=”swap“
/dev/sda1: LABEL=”/boot“ UUID=”5e5eaaac-cc56-42da-81eb-9adebff0fa2e“ TYPE=”ext3“
/dev/vol0/root: UUID=”4302a528-e88e-43d3-b3cc-1c2b29cda656“ TYPE=”ext3“
/dev/sda5: LABEL=”DATE“ UUID=”8f4f9b53-0bf0-4ce9-9665-bd4c7ae9ce59“ TYPE=”ext3“
[root@Redhat5 ~]# mount LABEL=”DATE“ /mnt/sda5/ #可以查到到分割槽5的標籤為DATE,通
過掛載標籤來掛載分割槽
[root@Redhat5 ~]# mount | grep ”/dev/sda5“ #檢視分割槽是否掛載
/dev/sda5 on /mnt/sda5 type ext3 (rw)
[root@Redhat5 ~]# umount /dev/sda5 #解除安裝分割槽
[root@Redhat5 ~]#mount | grep ”/dev/sda5“
[root@Redhat5 ~]# mount UUID=”8f4f9b53-0bf0-4ce9-9665-bd4c7ae9ce59“ /mnt/sda5/
#通過掛載UUID來掛載分割槽
[root@Redhat5 ~]#mount | grep ”/dev/sda5“
/dev/sda5 on /mnt/sda5 type ext3 (rw)
用mount命令掛載的檔案在系統開機的時候是不能自動掛載的,想要系統開機就掛載寫到配置檔案即可/etc/fstab
echo ”LABEL=DATE /mnt/sde5 ext3 defaults 0 0“ 》》 /etc/fstab
/etc/fstab檔案的格式
[root@Redhat5 ~]# cat /etc/fstab
/dev/vol0/root / ext3 defaults 1 1
/dev/vol0/home /home ext3 defaults 1 2
LABEL=/boot /boot ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
欄位以空格分隔
1、掛載的裝置:裝置檔案、卷標、UUID
2、掛載點: 與跟相關聯的目錄
3、檔案系統型別:ext3,ext4
4、掛載選項:defaults表示使用預設選項,多個選項彼此間逗號分隔
5、轉儲頻率:0:從不備份、1:每日備份、2:每隔一日備份
6、自檢次序:0:不檢測、1:第一個檢測,一般只能為根檔案系統第一個檢測 2 。。.9
linux格式化硬碟的方法和步驟就給大家詳細介紹到這裡了。如你還不知道怎麼格式化硬碟的,現在只要按照上述的步驟去操作就可以格式化硬碟了。希望在這裡能夠幫助到更多有需要的人。