第四回 初探linux文件系統 王白白確定分區方案

上回王白白成功建立了網路連接,這回可以著手硬碟分區(英文是partition)了。

與windows類似,linux也將硬碟分成幾個區。但linux對分區的看法不同。在windows中每個區被看作一個盤(英文是drive),如c、d、e盤(drive)等。如果插入U盤,也會給分配個盤符,視作一個新的盤(drive)。每個盤(drive)有自已的根目錄(root directory),如c盤是「c:」。

linux只有一個根目錄(root directory),所有的分區(partition)都掛載於某個文件夾(directory)下。根目錄就是「/」,注意「/」與windows的「」方向不同, 「/」前面也沒有盤符。因為整個系統只有一個根目錄,不需要盤符來區分。如果插入U盤,U盤可以掛載(mount)到任何一個文件夾(directory)下,例如「/media/abc」等。掛載後,文件夾(directory)內就是U盤的內容。原文件夾的內容不會消失,彈出U盤後又可以看到原來的內容。

windows一般分為一個系統盤和幾個數據盤。Linux的怎麼分區呢?王白白查閱了兩個資料,一個是archwiki{https://wiki.archlinux.org/index.php/Partitioning#Discrete_partitions},它對每個分區的大小有明確的建議。另外一個是更正式的文件,《文件系統層次標準》file hierarchy standard {pathname.com/fhs/}。這個標準對linux下每個文件夾(directory)的作用,應該放什麼東西有詳細的闡述,對每個文件夾進行介紹的同時,也包括分區的建議。

笨笨的王白白記不往那麼多東西,只留下個大概的印象。

不同版本linux的文件系統是基本一致的。根「/」自然是最重要的目錄(directory),它包括一切。根目錄「/」肯定要佔一個分區。根目錄下的/boot是放系統啟動所需文件的,通常單獨設置一個分區。/bin是裝核心命令或程序的文件夾,/etc是系統配置,/opt是裝第三方(add-on)程序的文件夾,/usr(usr 是Unix System Resource的縮寫)是裝不同主機(hosts)間可共享的程序,/home是系統的用戶們存數據或私用程序的地方,相當於windows系統的數據盤。此外還有一些其它的文件夾,王白白就沒看了。

王白白打算給「/」,「/boot」,「/home」分配獨立的分區,其它文件夾不掛載分區了,它們就與根目錄一個分區就可以。

除此以外,王白白還發現swap這個特殊的東西。swap相當於windows下的虛擬內存,不單獨分配分區也是可以的。單獨分配分區的好處是可以使用休眠(hibernation)功能,即把內存內的東西全部存入swap,然後可以給電腦徹底斷電而不丟失目前的工作狀態。

至於每個分區分多大合適,可以參考{https://wiki.archlinux.org/index.php/Partitioning#Partition_scheme}。

總結一下,王白白的分區計劃如下。

硬碟總容量:500G(實際只有465.8G);

「/boot」:1GB;

「/」:100G;

「swap」:8G;

「/home」:剩下的都是。

在確定好分區的計劃後,王白白著手分區了。首先要知道目前硬碟情況,這時可以用lsblk命令,如下圖所示。

上圖有很多信息,王白白搞不太清,但關鍵信息還是很容易看出來的:目前電腦上連有兩個盤(disk),sda和sdb;sda盤(disk)的總大小是465.8G,它只有一個分區(part,partition),即sda1;sdb盤的總大小是3.8G,它有兩個分區sdb1和sdb2,sdb1掛載在/run/archiso/bootmnt。經過一番推理,王白白認定sdb就是archlinux的安裝U盤,因此不用關注sdb,弄明白sda就行了。

sda就是王白白要安裝archlinux的硬碟。sda是一個容量465.8G的硬碟。sda中的「sd」指SATA硬碟,現在的硬碟一般都是SATA硬碟。sda中的「a」就是一個順序號,如果有更多盤,可以sdb、sdc、sde這樣排下去。

王白白打算用BIOS/MBR的形式,它從頭分區的大體步驟是先創建分區表(partition table)用以存放分區信息,這將抹去所有數據,然後逐個創建新的分區(partition)。需要指出的是,對於已分好區的硬碟,僅僅調整分區數量和大小是不需要創建分區表的,王白白所面臨的是最簡單的情況—清空一塊硬碟並安裝系統,所以可以先創建分區表,然後創建新的分區。

分區用的軟體可以是gdisk或fdisk。王白白經過一番調查研究發現,對於BIOS/MBR,fdisk好用些;對於UEFI/GPT,gdisk好用些。王白白是BIOS/MBR,所以選用fdisk。

具體王白白如何用fdisk進行分區,且聽下回分解。


推薦閱讀:
相关文章