目錄node
一:查看磁盤信息linux
二:Linux磁盤分區windows
三:Linux分區的卸載bash
fdisk : 這個命令是磁盤分區表操做工具,fdisk能將磁盤分區,同時也能爲每一個分區指定分區類型,總的來講,fdisk就是磁盤工具post
在windows下硬盤分區很簡單,有專門的磁盤管理工具,還有衆多的第三方軟件能夠對硬盤進行分區,都是圖形化的,操做簡單方便。因此這裏咱們就很少說。性能
今天主要將的是在Linux下用 fdisk 這個命令來對硬盤進行分區的。Linux下對硬盤分區大體能夠分爲七步。測試
第一步:我係統原來有一塊硬盤 /dev/sda 大小60G,後來我再加了一個20G的硬盤,能夠看到,已經識別到了: /dev/sdbspa
第二步:接下來我要對 sdb 進行分區,使用 fdisk /dev/sdb 命令 ,進入 fdisk 模式。這時,有好多選項:.net
咱們輸入 l 查看一下支持哪些磁盤分區類型,能夠看到,支持這麼多種分區類型。
咱們輸入 n 建立新的磁盤分區。
而後讓咱們選擇Partition Type 分區類型,默認是 primary 主分區,還有 extend 擴展分區。咱們選擇默認,直接回車便可。
而後讓咱們選擇分區數字,範圍1-4。默認是從1開始的。若是上一步選的是擴展分區,則選擇4。咱們直接回車默認便可。
而後讓咱們選擇扇區起始編號,默認是2048,咱們也選默認,回車便可。
而後就讓咱們輸入這個分區的大小了。這裏咱們輸入的是 +5G ,即第一塊分區的大小是5G。
這樣,咱們就已經建好了一個標準的Linux格式的分區類型了。
咱們再建四個分區,一個swap分區類型的sdb2分區,一個FAT32分區類型的sdb3分區。一個extend擴展分區sdb4,擴展分區裏面有一個邏輯分區 sdb5。
sdb2和sdb3都是主分區,創建方法和第一個差很少,只不過建成後輸入 t 而後修改分區類型,再輸入對應的分區類型ID便可。
擴展分區sdb4和邏輯分區sdb5創建方法有點不一樣。創建sdb4的時候,選擇分區類型 e ,即擴展分區。而後一路回車便可。就是把剩下的全部空間都給sdb4。sdb4只是至關於一個容器,並不能真正的使用,要在其中創建邏輯分區纔可使用。因此咱們新建邏輯分區sdb5,一路回車便可。就是把擴展分區的容量都給了邏輯分區sdb5了。而後輸入 p 查看已分配的分區。輸入 w 保存退出!
識別新分區: partprobe /dev/sdb
cat /proc/partitions 查看已識別的分區。這裏咱們能夠看到已經識別到了咱們剛剛創建的全部分區。
第三步:建立好了新分區後,咱們就要對新分區分配文件系統了,不一樣的分區類型有不一樣的文件系統,使用的指令也不同。擴展分區是一個容器,不用分配文件系統。sdb2交換分區類型是用命令 mkswap。其餘幾個分區類型用的是 mkfs 命令,sdb1和sdb5用的是標準的ext4文件系統,sdb3用的是vfat文件系統。(原本sdb5想用xfs文件系統,結果kali不支持)
第四步(可選):咱們就能夠給分區製做LABEL標籤了,也就是別名,這一步可作可不作。只不過在最後修改fstab文件的時候能夠用別名表示分區。e2label /dev/sdb1 newpart 。而後使用 blkid 能夠查看已經制做好的文件系統的信息。
第五步: 咱們就去/mnt/ 文件下創建掛載點,分別是 sdb1 、sdb3 、sdb5的掛載點。sdb2 交換分區不須要掛載點,sdb4擴展分區也不須要掛載點。
第六步: 咱們就能夠去修改 /etc/fstab 文件了,把咱們的分區信息寫入進去,保存退出,這裏要注意的是swap分區類型的掛載點就是swap,文件系統也是swap。這裏有6個字段:
第七步: 就是掛載文件系統了,使用mount -a ,就是掛載fstab文件中的全部文件系統。
而後使用 df -Th 查看已掛載的全部文件系統。
swap分區sdb2不顯示在這裏,由於它沒有掛載點。
extend擴展分區sdb4也不會顯示在這裏,由於他僅僅是一個分區,並無分配文件系統。
swap分區的做用是建立一個虛擬內存,開啓虛擬內存的指令爲 swapon -a,將開啓全部fstab文件中的swap分區
關閉使用swapoff,若是隻是關閉一個分區,swapoff /dev/sdb2,關閉全部 swapoff -a
查看虛擬內存空間變化可使用 free -m ,查看當前的虛擬內存能夠用 swapon -s
能夠看到,開啓了咱們建立的虛擬內存後,虛擬內存數量多了一個,虛擬內存空間也變大了
寫了一個腳本實現自動分區,目前只支持分配主分區和標準的linux文件系統(ext4/xfs)的分區
#! /bin/bash # Author:謝公子 # Date:2018-10-13 # Function:對硬盤進行分區,獲得一個標準的linux文件系統(ext4/xfs)的主分區 cat /proc/partitions > old read -p "請輸入你要分區的硬盤(寫絕對路徑,如:/dev/sda):" A if [ -e $A ];then echo "true" else echo "該設備不存在!!" exit fi read -p "請輸入你要建立的磁盤分區類型(這裏只能是主分區,默認按回車便可):" B read -p "請輸入分區數字,範圍1-4,默認從1開始,默認按回車便可:" C read -p "請輸入扇區起始表號,默認按回車便可:" D read -p "請輸入你要分區的分區大小(格式:如 +5G ):" E fdisk $A << EOF n p $C $D $E w EOF echo "一個標準的linux文件系統的分區已經創建好!!" partprobe $A echo "-------------------------------" cat /proc/partitions cat /proc/partitions > new F=`diff new old | grep "<" | awk '{print $5}'` echo "-------------------------------" echo $F echo "你想對新分區設定什麼類型的文件系統?有如下選項:" echo "A:ext4文件系統" echo "B:xfs文件系統" read -p "請輸入你的選擇:" G case $G in a|A) mkfs.ext4 /dev/$F echo "該分區將被掛載在 "/mnt/$F" 下" m=`ls /mnt/|grep $F | wc -l` if [ $m -eq 0 ];then mkdir /mnt/$F fi n=`cat /etc/fstab | grep /dev/$F| wc -l` if [ $n -eq 0 ];then echo "/dev/$F /mnt/$F ext4 defaults 0 0" >> /etc/fstab else sed -i '/^\/dev\/$F/c\/dev/$F /mnt/$F ext4 defaults 0 0' /etc/fstab fi mount -a df -Th ;; b|B) mkfs.xfs -f /dev/$F echo "該分區將被掛載在 "/mnt/$F" 下" m=`ls /mnt/|grep $F | wc -l` if [ $m -eq 0 ];then mkdir /mnt/$F fi n=`cat /etc/fstab | grep /dev/$F | wc -l` if [ $n -eq 0 ];then echo "/dev/$F /mnt/$F xfs defaults 0 0" >> /etc/fstab else sed -i '/^\/dev\/$F/c\/dev/$F /mnt/$F xfs defaults 0 0' /etc/fstab fi mount -a df -Th ;; *) echo "你的輸入有誤!!" esac
如今把咱們上面創建的幾個分區都給卸載了
第一步:先卸載全部已掛載的分區。先查看哪些分區已經掛載上 df -Th ,再依次卸載。最後關閉虛擬分區,由於系統原來就分配有虛擬分區,因此咱們只關閉咱們本身新建的虛擬分區 swapoff /dev/sdb2 。再最後查看是否已卸載完
若是umount的時候,顯示設備正忙。可使用 fuser -mv /mnt/sdbx 來查看哪一個進程在使用這個設備,而後kill掉便可。
第二步:修改 /etc/fstab 文件,把咱們這幾個分區的信息都給刪除了或者註釋掉
第三步:進入/dev/sdb 裏面, fdisk /dev/sdb ,一路按 d ,把建立的全部分區給刪除了,而後 p 查看是否刪除幹嗎 ,w 保存。
刷新一下 sdb 磁盤的分區信息 partprobe /dev/sdb 。
而後查看識別到的分區信息 cat /proc/partitions ,能夠看到已經刪除乾淨了。
管理員能夠爲用戶所能使用的磁盤空間進行配額限制,每一用戶只能使用最大配額範圍內的磁盤空間。既可對用戶存儲文件數量作限制,也可對用戶存儲文件大小作限制
磁盤配額的分爲五步:
這裏我用Red hat7作實驗,在Red hat7上新建了一個sdb1的分區,用sdb1作磁盤配額實驗。
第一步:修改 /etc/fstab文件,找到sdb1所對應的掛載信息,在磁盤參數defaults後面加上 usrquota,grpquota,意思是給這塊分區添加用戶配額和組配額的功能。
設備啓用了配額後,須要將文件系統重載。
umount /mnt/sdb1 ;mount -a (或直接從新掛載 mount -o remount /mnt/sdb1)。
而後查看配額信息是否已經添加進去了 mount | grep sdb1
第二步:執行配額檢查 quotacheck -augcv
執行後,會檢查全部支持磁盤配額的分區,若是分區以前有配置配額,先關閉,再次開啓會有配置文件被更新。
若是是第一次建立磁盤配額,那麼會提示以前沒有任何配額文件,而且會在分區中生成配額文件 aquota.user 和 aquota.group
第三步:爲用戶或組創建配額信息
edquota -u xie 編輯用戶 xie 的配額
edquota -g IT 編輯組IT的配額
一共有六個字段
Filesystem blocks soft hard inodes soft hard
/dev/sdb1 0 80M 100M 0 8 10
前三個字段表示針對文件空間限制,後三個字段表示針對文件數量限制
這個截圖的意思是限制用戶xie在此磁盤中最大使用空間100M ,而且使用超過80M就提示。最多使用建立10個文件,而且超過8個文件就提示。
第四步:開啓 / 關閉配額 功能
若是開啓的時候顯示設備或資源忙,就先關閉全部配額,再從新打開。
quotaon -a 表示開啓支持配額功能的全部分區
quotaoff -a 表示關閉支持配額功能的全部分區
第五步:查看配額信息
查看配額信息的方式有兩種。
注:只有當用戶在這個分區上有數據時,才能夠看到配額信息,不然只顯示none
第六步:驗證配額
配置好了磁盤配額後,咱們就去驗證了,切換到 xie 用戶 ,提早給測試分區權限。
咱們複製文件到磁盤上,每次複製30M ,當複製到第三次的時候,達到了90M>80M ,因此就提示咱們磁盤緊張了。當第四次複製時,就提示已經超過磁盤配額了,第四次只能複製10M的文件過去。
我在上面建立了8個文件,當建立第9個的時候提示我磁盤緊張了。當建立第11個,直接提示我磁盤限制,建立不了第11個了。
相關文章: Linux下性能監控與進程管理