linux中磁盤管理
硬盤可以分成若幹個分區,每個分區可視為獨立的磁盤來使用。硬盤的分區方案被記錄到“磁盤分區表”中,通常該表由4個部分組成,每個部分定義一個分區的信 息,因此原始概念中一個硬盤最多只能建立4個分區,稱為“主分區”。由於硬盤越來越大,4個分區已不無法滿足用戶的需要,為此引入“擴展分區”的概念。擴展分區由擴展磁盤分區表維護,可以把某個主分區作為擴展分區劃分為若幹更小的“邏輯分區”。理論上,硬盤空間足夠時,可以建立任意數量的分區。
二、Linux磁盤分區工具
在linux中磁盤分區的工具有parted ,fdisk ,gdisk 。fdisk與gdisk功能一樣,本文只介紹fdisk。以下具體介紹:(本文中的sdX表示所指定的硬盤分區名稱)
1、parted
parted:Linux下的磁盤分區與分區調整工具。
parted /dev/sdX 可進入交互模式
parted -l 列出所有硬盤的分區表
parted /dev/sdX print 列出指定硬盤的分區信息
parted /dev/sdb print 列出指定硬盤sdb的分區信息
parted /dev/sdX mklabel gpt | msdos 給指定硬盤重建指定類型的分區表gpt | mbr
parted /dev/sdb mklabel gpt 給指定硬盤sdb重建指定類型gpt的分區表 交互模式 parted /dev/sdb print 再次列出指定硬盤sdb的分區信息
parted /dev/sdb mklabel msdos -s 給指定硬盤sdb重建指定類型msdos的分區表 非交互模式
parted命令對/dev/sdb 進行分區,只能人為輸入起始空間。
parted /dev/sdb mkpart primary 1 2G 給sdb分一個大小為2G的標準分區 parted /dev/sdb mkpart primary 2G 5G 下一個標準分區起始地址為上一個分區的結束地址 parted /dev/sdb mkpart primary 5G 10G parted /dev/sdb mkpart extended 10G 21.5G 為sdb分一個擴展分區 parted /dev/sdb mkpart logical 10G 11G
2、fdisk
fdisk 是一個強大的磁盤分區工具,為交互模式。
fdisk -l 列出所有塊設備的分區信息
fdisk -l /dev/sdX 查看指定塊設備的分區信息
fdisk -l /dev/sdb 查看指定塊設備sdb的分區信息
fdisk /dev/sdX 對指定硬盤修改分區
fdisk /dev/sdb 對硬盤sdb修改分區
輸入m後顯示以下幫助提示
具體步驟如下:
經過以上操作創建了一個空間大小為2G的標準分區。
硬盤sdb為非操作系統,創建分區後可以直接w保存並同步到內核,但如果是操作系統所在硬盤,w後自動同步不成功,需要手動同步,輸入命令:partprobe(限centos7及之後)。
三、 常用的磁盤管理命令
mkfs :設置磁盤的文件系統。
mkfs.ext4 /dev/sdb1 設置磁盤sdb的文件系統為ext4
parted /dev/sdb print 列出指定硬盤sdb的分區信息
mkfs.ext4 /dev/sdb1 設置磁盤sdb的文件系統為ext4
parted /dev/sdb print 再次列出指定硬盤sdb的分區信息,文件系統為ext4
mkfs.ext4 -L 新建名 硬盤分區名 設置卷標
umount /a11 或 umount /dev/sdb1 在此之前已掛載,設置卷標前需要先卸載 mkfs.ext4 -L chen /dev/sdb1 設置卷標為chen
e2label /dev/sdX 查看卷標
e2label /dev/sdb1 查看卷標 e2label /dev/sdb1 fan 修改卷標為fan
四 、mount命令
當我們把磁盤分區之後,再初始化文件系統後就可以把塊設備掛載到目錄或文件上。
mount /dev/sdb1 /a11 mount 掛載源 掛載點
使用df命令查看當前分區掛載情況
mount /dev/sdb1 /a11 把/dev/sdb1掛載到a11目錄上 df
在etc/fstab配置文件裏面可以添加永久掛載項,開機啟動時會自動讀取該文件,相當於執行命令mount -a
vim etc/fstab 進入編輯 ,只截取了部分,在最後一行輸入了以下命令: /dev/sdb1 /a11 ext4 defaults 0 0
還可以在default後面添加掛載選項,添加完之後如果該磁盤被掛載,需要先卸載後掛載才能生效。
vim /etc/fstab /dev/sdb1 /a11 ext4 defaults,noacl,ro 1 0 增加兩項noacl,ro
方法一:
mount -a 讀取/etc/fstab 掛載當前尚未掛載的文件系統,已經掛載的文件系統不會重新掛載,也不會更新掛載選項
mount -o remnount (掛載選項)/dev/sdb1來修改掛載項。
此方法需要手工重新掛載。
umount /a11 卸載 mount /dev/sdb1 /a11 重新掛載 mount |grep /a11 只摘取/a11 這一行,查看具體信息 (可不查看,只是顯示出結果易區分) mount -a mount |grep /a11 只摘取/a11 這一行,再次查看具體信息 (可不查看) mount -o remnount /a11 mount |grep /a11 再次查看,掛載選項已改變
方法二:
umount /a11 卸載 mount -a mount |grep /a11 查看,掛載選項已改變
linux中磁盤管理