在Linux中對(duì)存儲(chǔ)設(shè)備進(jìn)行分區(qū)和格式化的操作步驟
簡(jiǎn)介
在 Linux 系統(tǒng)上準(zhǔn)備新磁盤以供使用是一個(gè)簡(jiǎn)單的過(guò)程。雖然有許多工具、文件系統(tǒng)格式和分區(qū)方案可能會(huì)因?yàn)樘厥庑枨蠖淖冞@個(gè)過(guò)程,但基本原理仍然是一樣的。
本指南將涵蓋以下過(guò)程:
- 在系統(tǒng)上識(shí)別新磁盤。
- 創(chuàng)建一個(gè)跨越整個(gè)驅(qū)動(dòng)器的單個(gè)分區(qū)(大多數(shù)操作系統(tǒng)都期望有一個(gè)分區(qū)布局,即使只有一個(gè)文件系統(tǒng)存在)
- 使用 Ext4 文件系統(tǒng)格式化分區(qū)(在大多數(shù)現(xiàn)代 Linux 發(fā)行版中是默認(rèn)的)
- 掛載并設(shè)置文件系統(tǒng)在啟動(dòng)時(shí)自動(dòng)掛載
步驟 1 — 安裝 Parted
要對(duì)驅(qū)動(dòng)器進(jìn)行分區(qū),您將使用 parted
實(shí)用程序。大多數(shù)與低級(jí)文件系統(tǒng)交互所需的命令在 Linux 上默認(rèn)可用。創(chuàng)建分區(qū)的 parted
是偶爾的例外之一。
如果您在 Ubuntu 或 Debian 服務(wù)器上,并且尚未安裝 parted
,可以通過(guò)輸入以下命令進(jìn)行安裝:
sudo apt update sudo apt install parted
如果您在 RHEL、Rocky Linux 或 Fedora 服務(wù)器上,可以通過(guò)輸入以下命令進(jìn)行安裝:
sudo dnf install parted
本教程中使用的其他命令應(yīng)該是預(yù)安裝的,因此您可以繼續(xù)下一步。
步驟 2 — 在系統(tǒng)上識(shí)別新磁盤
在設(shè)置驅(qū)動(dòng)器之前,您需要能夠在服務(wù)器上正確識(shí)別它。
如果這是一個(gè)全新的驅(qū)動(dòng)器,一種在服務(wù)器上識(shí)別它的方法是查找缺少分區(qū)方案。如果您要求 parted
列出磁盤的分區(qū)布局,對(duì)于沒(méi)有有效分區(qū)方案的任何磁盤,它將產(chǎn)生錯(cuò)誤。這可以用來(lái)幫助識(shí)別新磁盤:
sudo parted -l | grep Error
您應(yīng)該會(huì)看到新的、未分區(qū)的磁盤出現(xiàn) unrecognized disk label
錯(cuò)誤:
Error: /dev/sda: unrecognized disk label
您還可以使用 lsblk
命令,并查找一個(gè)正確大小且沒(méi)有關(guān)聯(lián)分區(qū)的磁盤:
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 100G 0 disk vda 253:0 0 20G 0 disk └─vda1 253:1 0 20G 0 part /
當(dāng)您知道內(nèi)核為您的磁盤分配的名稱后,您可以對(duì)驅(qū)動(dòng)器進(jìn)行分區(qū)。
步驟 3 — 對(duì)新驅(qū)動(dòng)器進(jìn)行分區(qū)
如簡(jiǎn)介中所述,您將在本指南中創(chuàng)建一個(gè)跨越整個(gè)磁盤的單個(gè)分區(qū)。
選擇分區(qū)標(biāo)準(zhǔn)
首先,您需要指定要使用的分區(qū)標(biāo)準(zhǔn)。有兩個(gè)選項(xiàng):GPT 和 MBR。GPT 是一個(gè)更現(xiàn)代的標(biāo)準(zhǔn),而 MBR 在舊操作系統(tǒng)中更受支持。對(duì)于典型的云服務(wù)器,GPT 是一個(gè)更好的選擇。
要選擇 GPT 標(biāo)準(zhǔn),請(qǐng)使用 parted
并使用 mklabel gpt
傳遞您識(shí)別的磁盤:
sudo parted /dev/sda mklabel gpt
要使用 MBR 格式,請(qǐng)使用 mklabel msdos
:
sudo parted /dev/sda mklabel msdos
創(chuàng)建新分區(qū)
選擇格式后,您可以使用 parted -a
創(chuàng)建跨越整個(gè)驅(qū)動(dòng)器的分區(qū):
sudo parted -a opt /dev/sda mkpart primary ext4 0% 100%
您可以將此命令分解如下:
parted -a opt
運(yùn)行 parted,設(shè)置默認(rèn)的 optimal 對(duì)齊類型。/dev/sda
是您要分區(qū)的磁盤。mkpart primary ext4
創(chuàng)建一個(gè)獨(dú)立的(即可引導(dǎo)的,不是從另一個(gè)擴(kuò)展的)分區(qū),使用 ext4 文件系統(tǒng)。0% 100%
表示此分區(qū)應(yīng)跨越磁盤的起始到結(jié)束。
有關(guān)更多信息,請(qǐng)參閱 Parted 的手冊(cè)頁(yè)。
如果您檢查 lsblk
,您應(yīng)該會(huì)看到新的分區(qū)可用:
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 100G 0 disk └─sda1 8:1 0 100G 0 part vda 253:0 0 20G 0 disk └─vda1 253:1 0 20G 0 part /
您現(xiàn)在已經(jīng)創(chuàng)建了一個(gè)新分區(qū),但尚未將其初始化為文件系統(tǒng)。這兩個(gè)步驟之間的區(qū)別在某種程度上是任意的,并且是獨(dú)特于 Linux 文件系統(tǒng)工作方式的,但在實(shí)踐中它們?nèi)匀皇莾蓚€(gè)步驟。
步驟 4 —— 在新分區(qū)上創(chuàng)建文件系統(tǒng)
現(xiàn)在你已經(jīng)有了一個(gè)可用的分區(qū),你可以將其初始化為 Ext4 文件系統(tǒng)。Ext4 不是唯一的文件系統(tǒng)選項(xiàng),但它是單個(gè)獨(dú)立 Linux 卷的最直接的選項(xiàng)。Windows 使用諸如 NTFS 和 exFAT 的文件系統(tǒng),但它們?cè)谄渌脚_(tái)上的支持有限(這意味著在某些情況下它們將是只讀的,并且不能用作其他操作系統(tǒng)的引導(dǎo)驅(qū)動(dòng)器),macOS 使用 HFS+ 和 APFS,也有相同的注意事項(xiàng)。還有比 Ext4 更新的 Linux 文件系統(tǒng),比如 ZFS 和 BTRFS,但這些文件系統(tǒng)有不同的要求,通常更適用于多磁盤陣列。
要初始化 Ext4 文件系統(tǒng),使用 mkfs.ext4 實(shí)用程序。你可以使用 -L 標(biāo)志添加分區(qū)標(biāo)簽。選擇一個(gè)能幫助你識(shí)別這個(gè)特定驅(qū)動(dòng)器的名稱:
sudo mkfs.ext4 -L datapartition /dev/sda1
如果以后想要更改分區(qū)標(biāo)簽,可以使用 e2label
命令:
sudo e2label /dev/sda1 newlabel
你可以使用 lsblk
查看所有不同的識(shí)別分區(qū)的方法。你應(yīng)該找到分區(qū)的名稱、標(biāo)簽和 UUID。
某些版本的 lsblk
將使用 --fs
參數(shù)打印所有這些信息:
sudo lsblk --fs
你也可以手動(dòng)指定它們,使用 lsblk -o
后跟相關(guān)選項(xiàng):
sudo lsblk -o NAME,FSTYPE,LABEL,UUID,MOUNTPOINT
你應(yīng)該會(huì)收到這樣的輸出。高亮顯示的輸出表示你可以用來(lái)引用新文件系統(tǒng)的不同方法:
NAME FSTYPE LABEL UUID MOUNTPOINT sda └─sda1 ext4 datapartition 4b313333-a7b5-48c1-a957-d77d637e4fda vda └─vda1 ext4 DOROOT 050e1e34-39e6-4072-a03e-ae0bf90ba13a /
記下這個(gè)輸出,因?yàn)槟銓⒃谙乱徊綊燧d文件系統(tǒng)時(shí)用到它。
步驟 5 —— 掛載新文件系統(tǒng)
現(xiàn)在,你可以掛載文件系統(tǒng)以供使用。
文件系統(tǒng)層次結(jié)構(gòu)標(biāo)準(zhǔn)建議使用 /mnt 目錄或其子目錄來(lái)臨時(shí)掛載文件系統(tǒng)(如可移動(dòng)驅(qū)動(dòng)器)。它對(duì)于掛載更持久的存儲(chǔ)沒(méi)有建議,所以你可以選擇任何你喜歡的方案。在本教程中,你將把驅(qū)動(dòng)器掛載到 /mnt/data 下。
使用 mkdir 創(chuàng)建該目錄:
sudo mkdir -p /mnt/data
臨時(shí)掛載文件系統(tǒng)
你可以輸入以下命令臨時(shí)掛載文件系統(tǒng):
sudo mount -o defaults /dev/sda1 /mnt/data
在啟動(dòng)時(shí)自動(dòng)掛載文件系統(tǒng)
為了在每次服務(wù)器啟動(dòng)時(shí)自動(dòng)掛載文件系統(tǒng),你需要向 /etc/fstab
文件添加一個(gè)條目。該文件包含有關(guān)系統(tǒng)所有永久或經(jīng)常掛載的磁盤的信息。使用 nano
或你喜歡的文本編輯器打開(kāi)該文件:
sudo nano /etc/fstab
在上一步中,你使用了 sudo lsblk --fs
命令顯示文件系統(tǒng)的標(biāo)識(shí)符。你可以在這個(gè)文件中使用其中任何一個(gè)。這個(gè)示例使用了分區(qū) 標(biāo)簽,但你可以看到使用其他兩個(gè)標(biāo)識(shí)符的行是什么樣的,它們被注釋掉了:
. . . ## 使用你找到的標(biāo)識(shí)符之一來(lái)引用正確的分區(qū) # /dev/sda1 /mnt/data ext4 defaults 0 2 # UUID=4b313333-a7b5-48c1-a957-d77d637e4fda /mnt/data ext4 defaults 0 2 LABEL=datapartition /mnt/data ext4 defaults 0 2
除了 LABEL=datapartition
元素外,這些選項(xiàng)的作用如下:
/mnt/data
是磁盤被掛載的路徑。ext4
表示這是一個(gè) Ext4 分區(qū)。defaults
表示該卷應(yīng)該使用默認(rèn)選項(xiàng)掛載,比如讀寫(xiě)支持。0 2
表示在本地機(jī)器出現(xiàn)錯(cuò)誤時(shí)應(yīng)該由本地機(jī)器驗(yàn)證文件系統(tǒng),但作為第二優(yōu)先級(jí),而不是你的根卷。
完成后保存并關(guān)閉文件。如果你使用的是 nano
,按 Ctrl+X
,然后在提示時(shí)按 Y
,然后按 Enter
。
如果之前沒(méi)有掛載文件系統(tǒng),現(xiàn)在可以使用 mount -a
命令掛載它:
sudo mount -a
測(cè)試掛載
在掛載了卷之后,我們應(yīng)該檢查確保文件系統(tǒng)是可訪問(wèn)的。
您可以通過(guò)df
命令的輸出來(lái)檢查磁盤是否可用。有時(shí)df
會(huì)在輸出中包含關(guān)于臨時(shí)文件系統(tǒng)(稱為tmpfs
)的不必要信息,您可以通過(guò)附加-x tmpfs
來(lái)排除這些信息:
df -h -x tmpfs
文件系統(tǒng) 容量 已用 可用 已用% 掛載點(diǎn) /dev/vda1 20G 1.3G 18G 7% / /dev/sda1 99G 60M 94G 1% /mnt/data
您還可以通過(guò)寫(xiě)入一個(gè)測(cè)試文件來(lái)檢查磁盤是否具有讀寫(xiě)功能:
echo "success" | sudo tee /mnt/data/test_file
再次讀取文件,以確保寫(xiě)入執(zhí)行正確:
cat /mnt/data/test_file
success
在驗(yàn)證新文件系統(tǒng)正常運(yùn)行后,您可以刪除該文件:
sudo rm /mnt/data/test_file
結(jié)論
您的新驅(qū)動(dòng)器現(xiàn)在應(yīng)該已經(jīng)被分區(qū)、格式化、掛載,并且可以使用了。這是您可以使用的一般過(guò)程,將原始磁盤轉(zhuǎn)換為 Linux 可用于存儲(chǔ)的文件系統(tǒng)。在某些情況下,可能會(huì)有更復(fù)雜的分區(qū)、格式化和掛載方法更為合適,但上述方法是一般用途的良好起點(diǎn)。
以上就是在Linux中對(duì)存儲(chǔ)設(shè)備進(jìn)行分區(qū)和格式化的操作步驟的詳細(xì)內(nèi)容,更多關(guān)于Linux對(duì)存儲(chǔ)設(shè)備分區(qū)和格式化的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
LNMP下安裝Pureftpd開(kāi)啟FTP服務(wù)以及修改FTP端口的方法
這篇文章主要介紹了LNMP下安裝Pureftpd開(kāi)啟FTP服務(wù)以及修改FTP端口的方法,需要的朋友可以參考下2016-09-09Linux查看和關(guān)閉后臺(tái)運(yùn)行程序的方法
這篇文章主要介紹了Linux查看和關(guān)閉后臺(tái)運(yùn)行程序的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09CentOS 下yum安裝mysql、jdk和tomcat的方法
這篇文章主要介紹了CentOS 下yum安裝mysql、jdk和tomcat的方法的相關(guān)資料,需要的朋友可以參考下2016-10-10將你的Apache速度提高十倍的經(jīng)驗(yàn)分享
你知道嗎,如果你的web server是采用apache那你就有機(jī)會(huì)通過(guò)安裝一個(gè)軟件模塊提高你的網(wǎng)站訪問(wèn)速度,最大能有10倍之多!這可不是吹牛,你看看原理就明白了2013-04-04windows下實(shí)現(xiàn)定時(shí)重啟Apache與MySQL方法
有時(shí)候?yàn)榱朔?wù)器具有更好的效率,可以定時(shí)重啟apache服務(wù)等。讓網(wǎng)站運(yùn)行的效果更快。2010-09-09linux CentOS 系統(tǒng)下如何將php和mysql命令加入到環(huán)境變量中
這篇文章主要介紹了linux CentOS 系統(tǒng)下如何將php和mysql命令加入到環(huán)境變量中的相關(guān)資料,需要的朋友可以參考下2016-11-11centos6.5 安裝hadoop1.2.1的教程詳解【親測(cè)版】
這篇文章主要介紹了centos6.5 安裝hadoop1.2.1的教程詳細(xì),該教程小編親測(cè)過(guò),非常不錯(cuò),值得推薦給大家,需要的朋友可以參考下2018-08-08詳解如何在 Linux 中安裝最新的 Python 3.6 版本
本篇文章主要介紹了詳解如何在 Linux 中安裝最新的 Python 3.6 版本,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-03-03