磁盤和文件管理(一)前端
管理磁盤及分區linux
在Linux服務器中,當現有硬盤的分區規劃不能知足要求(例如:根分區的剩餘空間過少,沒法繼續安裝新的系統程序)時,就須要對硬盤中的分區進行從新規劃和調整,有時還需添加新的硬盤設備來擴展存儲空間。後端
實現上述操做須要用到fdisk磁盤分區管理工具,fdisk是大多數Linux系統中自帶的基本工具之一。本章將經過爲Linux主機新增一塊硬盤並創建分區的過程,介紹fdisk工具的使用。服務器
檢測並確認新硬盤網絡
Linux主機接好新的硬盤並啓動主機後,Linux系統會自動檢測並加載該硬盤,無需額外安裝驅動。執行「fdisk -l 」 命令能夠查看、確認新增硬盤的設備名稱和位置。ide
fdisk -l 命令的做用是列出當前系統中全部硬盤設備及分區的信息。工具
上述輸出信息包含了各硬盤的總體狀況和分區狀況,其中「/dev/sda」爲原有的硬盤設備,「/dev/sdb2」爲新增長的硬盤。Xi8nde硬盤設備未初始化,沒有包含有效的分區信息。對於已有分區,將經過列表輸出如下信息:oop
Device:分區設備文件名稱。學習
Boot : 是不是引導分區,是,則有「 * 」標示ui
Start : 該分區在硬盤中的起始位置(柱面數)
End : 該分區在硬盤中的結束位置(柱面數)
Blocks: 分區的大小,以Blocks(塊)爲單位,默認的塊大小1024字節。
Id : 分區對應的系統ID號,83標示linux中的EXT4分區,8e標示LVM邏輯卷。
System: 分區類型
規劃硬盤中的分區
在硬盤中建立、刪除、更改分區等操做一樣 經過fdisk命令進行,只要使用硬盤的設備文件做爲參數。例如:執行「fdisk /dev/sdb」命令後,便可進去交互式的分區管理界面中,以下圖:
進入Command ( m for help) 提示符後,輸入特定的分區操做指令,能夠完成各項分區管理任務。例如:輸入」m」指令後,能夠查件各類操做指令的幫助信息,以下圖:
分區過程當中經常使用的一些交互操做指令
「 p 」指令——列出硬盤中的分區狀況
「 n 」指令——新建分區
接下來建立一個擴展分區和一個邏輯分區(主分區1~4 。5之後是邏輯分區)
「 d 」指令——刪除分區(若刪除擴展分區的話,邏輯分區也將被刪除)
「 t 」指令——更改分區的類型(新建的分區文件系統類型爲EXT4,若新建的分區須要使用Swap 交換分區或者其餘類型的文件系統時,須要對分區類型進行更改,保持一致性,避免管理分區時產生混亂)。
經常使用的EXT四、Swap文件系統的ID號碼分別爲8三、82。Windows中的NTFS文件系統的ID號通常爲86。
下面將邏輯分區「/dev/sdb5」的類型更改成Swap。(首先再次建立一個邏輯分區,然後再次進行更改文件系統類型)
「 l 」指令——查看文件系統類型
「 w 」 和 「 q 」 指令——退出fdisk分區工具
管理文件系統
建立文件系統
上述將分區建好後,還須要對分區進行格式化並掛在到系統中的指定目錄,而後才能用於存儲文件,目錄等數據。下面將學習如何格式化並掛載分區。
mkfs命令的使用
實際上mkfs命令是一個前端工具,能夠自動加載不一樣的程序來建立各類類型分區,然後端的有多個與mkfs命令相關的工具程序,這些程序位於/sbin/目錄中,如支持EXT4分區格式的mkfs、ext4程序等。
使用mkfs命令程序時,基本的命令格式以下
mkfs -t 文件系統類型 分區設備
建立EXT4文件系統
例如將分區/dev/sdb1格式化爲EXT4文件系統
建立FAT32文件系統
通常不建議Linux系統中建立或使用Windows中的文件系統類型,包括FAT16/FAT32等。
例如將/dev/sdb5格式化爲FAT32文件系統(先經過fdisk工具添加/dev/sdb5分區,並將ID號設爲b)
mkswap命令的使用
在Linux系統中,Swap分區的做用相似於Windows系統中的「虛擬內存」,能夠再必定程度上緩解物理內存不足的狀況。當主機運行的服務較多,須要更多的交換空間支撐應用時,能夠爲其增長新的交換分區。
例如將/dev/sdb5建立爲交換分區。(首先更改ID號,設置爲82)
查看減緩分區的總大小,並啓動交換分區,
2.1 掛載、卸載文件系統
在Linux系統中,對各類存儲設備中的資源訪問(如讀取,保存文件等)都是經過目錄結構進行的,雖然系統核心可以經過「設備文件」的方式操做各類設備,可是對於用戶來講,還須要增長一個「掛載」的過程,才能像正常訪問目錄同樣訪問存儲設備中的資源。
固然,在安裝Linux系統的過程當中,自動創建或者識別的分區一般會由系統自動完成掛載,如「/」分區,「/boot」分區等。然而對於後來新增長的硬盤分區,光盤等設備,有時候還須要管理員動手進行掛載,實際上用戶訪問的是通過格式化後創建的文件系統,掛在一個分區時,必須爲其指定一個目錄做爲掛靠點(或稱爲掛載點),用戶將經過這個目錄訪問設備中的文件,目錄數據。
掛載文件系統
mount 命令用途 mount掛載文件系統、ISO鏡像到指定文件夾
命令格式:
mount [ -t 類型 ] 存儲設備名 掛載點目錄
mount -o loop ISO鏡像文件 掛載點目錄
其中,文件系統類型一般能夠省略(系統自動識別),存儲設備名也能夠是網絡資源路徑,例如將光盤掛載到/dev/cdrom /media目錄
例如將/dev/sdb1掛載到新建文件夾a目錄上
使用mount 命令可查看當前掛載的設備
卸載文件系統
umount 卸載已掛載的文件系統
命令格式 umount 存儲設備位置
umount 掛載點目錄
例如卸載掛載的光盤和文件系統
設置文件系統的自動掛載
系統中的/etc/fstab文件能夠視爲mount命令的配置文件,其中存儲了文件系統的靜態掛在數據。Linux系統每次開機時,會自動讀取這個文件的內容,自動掛載所指定的文件系統。默認的fstab文件中包括了根分區,/boot分區,交換分區及proc、tmpfs等爲文件系統的掛載配置。
第1字段:設備名或者設備卷標名
第2字段:文件系統的掛載點目錄的位置
第3字段:文件系統的類型,如EXT四、Swap等。
第4字段:掛載參數,即mount命令 -o 選項後可以使用的參數。例如,defaults(默認參數)
rw(可寫) ro(只讀) noexec(禁止執行程序)。
第5字段:表示文件系統是否須要dump備份(dumo是一個備份工具)。通常設置爲1時表示須要,設置0時江北dump所忽略。
第6字段:該數字用於決定在系統啓動時進行磁盤檢查的順序。0表示不進行檢查,1表示優先檢查,2表示其次檢查。對於根分區應設爲1,其餘分區設爲2。
經過在」/etc/fstab」文件中添夾相應的掛載配置,能夠實現開機後自動掛載指定的分區。
例如將/dev/sdb1添加到自動掛載的文件中。
查看磁盤使用狀況
df命令使用文件或者設備做爲命令參數。
經常使用的選項爲 –h 容量單位顯示
–T 顯示對應文件系統類型
例如:
3、實驗演示
實驗環境
公司原來安裝的RHEL 6.5 服務器採用了自動分區的方案,隨着使用服務器的系統用戶數量不斷增多,根分區常常面臨磁盤空間耗盡的狀況,偶爾有幾回還致使系統沒法啓動。爲了解決這些問題要爲服務器新加一塊SCSI硬盤,冰晶用戶目錄「/home」,中的數據遷移到新硬盤中,要求錢之後不能影響原有用戶帳號的使用。
需求描述
在虛擬機中添加一塊20GB的SCSI磁盤。
在新硬盤中創建一個10GB的分區,用於存放全部普通用戶的宿主文件夾。
新建的分區仍掛載到」/home」目錄下,須要導入系統中原有用戶的數據。
服務器在每次開機後可以自動掛載新分區
實驗步驟
1 關機後添加新硬盤,從新開機進入系統。
2 分區並格式化
使用fdisk命令對新硬盤進行分區,創建一個10GB的主分區(「/dev/sdb1」)。
格式化新建分區爲EXT4文件系統
建立用戶與密碼,遷移「/home」分區
設置永久掛載
最後將帳戶信息遷移回去
課後做業:
一、添加一塊磁盤,建立兩個主分區大小分別爲2G和4G,文件系統類型爲ext3;建立兩個邏輯分區,大小分別爲2G和5G,第一個邏輯分區的類型爲swap。
二、格式化各分區並啓用swap分區,驗證效果
三、把第一個主分區掛載在「/本人名」目錄下。把第二個邏輯分區掛載在「/班級名目錄」下並設置自動掛載後重啓系統。
四、在已掛載的「/本人名」目錄下建立「本人名」文件,查看掛載狀況和磁盤空間佔用狀況。
五、卸載已掛載的本人名目錄。查看本人名文件是否存在。
如遇問題可留言,會進行解答