1. 程式人生 > >2017.12.29 3周5次課

2017.12.29 3周5次課

linux學習

三周第五次課(12月29日)

4.5/4.6 磁盤格式化 4.7/4.8 磁盤掛載 4.9 手動增加swap空間

4.5/4.6 磁盤格式化

centos7系統支持的文件格式如下:

在/etc/filesystems裏查看

技術分享圖片

“xfs”是centos7默認的文件系統,之前的版本都是“ext“

技術分享圖片

  1. 命令【mke2fs】:格式化成ext2/ext3/ext4的文件系統

常用的選項有(mkfs.ext2/ext3/ext4也適用):

‘-b’ 分區時設定每個數據區塊占用空間大小,目前支持1024, 2048 以及4096 bytes每個塊。

‘-i’ 設定inode的大小

‘-N’ 設定inode數量,有時使用默認的inode數不夠用,所以要自定設定inode數量。

‘-m’指定分區預留的分區大小。

‘-c’ 在格式化前先檢測一下磁盤是否有問題,加上這個選項後會非常慢

‘-L’ 預設該分區的標簽label

‘-j’ 建立ext3格式的分區,如果使用mkfs.ext3 就不用加這個選項了

‘-t’ 用來指定什麽類型的文件系統,可以是ext2, ext3 也可以是 ext4。默認是ext2

  1. 命令【mkfs】:格式化成xfs/ext2/ext3/ext4的文件系統

mkfs本身並不執行建立文件系統的工作,而是去調用相關的程序來執行。

如果要格式化成xfs文件系統時,如有已存在文件系統的分區,命令會提醒用“-f”選項強制寫入。

使用方式 : mkfs [options] [-t type] [fs-options] device [size]

 參數 :

-t, --type type 文件系統類型

fs-options 傳遞指定的文件系統選項給真實的文件系統創建程序

-V, --verbose 顯示執行過程

-V, --version 顯示版本信息(僅當-V是唯一選項時,否則會以--verbose執行)

-h, --help 顯示幫助信息

mkfs.xfs /dev/sdc1 (等同於 mkfs -t xfs /dev/sdc1)

技術分享圖片

如果有文件系統存在,mkfs命令會提醒需要加“-f“強制執行

技術分享圖片

  1. 剛格式化好的分區在【mount】裏是看不到的,因為是沒有掛載在任何掛載點上

命令【blkid】可以查看到還沒有掛載的分區

技術分享圖片

  1. 磁盤最大化使用

在格式化是有個預留空間的信息

技術分享圖片

上圖說明有5%的空間是預留給root用戶,現修改為1%給root用戶

技術分享圖片

  1. Inode表是在格式化分區時創建的

技術分享圖片

可以計算出inode和塊的比例,上圖比例是1:4,1個inode對應4個(塊/4K)= 16K,現在改成占用8K.

最低1個inode對於1個塊。

技術分享圖片

4.7/4.8 磁盤掛載

不管有沒有分區,都是可以格式化的,只有格式化了才能掛載文件系統。Linux系統要訪問磁盤必須要掛載到1個掛載點下

掛載點實際上就是1個目錄。

命令【mount】掛載文件系統到指定的掛載點(目錄)

單一文件系統不應該被重復掛載在不同的掛載點(目錄)中;

單一目錄不應該 重復掛載多個文件系統;

要作為掛載點的目錄,理論上應該都是空目錄才是。

格式:mount 文件系統 掛載目錄

選項:

-a :依照配置文件 /etc/fstab 的數據將所有未掛載的磁盤都掛載上來

-l :單純的輸入 mount 會顯示目前掛載的信息。加上 -l 可增列 Label 名稱!

-t :與 mkfs 的選項非常類似的,可以加上文件系統種類來指定欲掛載的類型。

常見的 Linux 支持類型有:ext2, ext3, vfat, reiserfs, iso9660(光盤格式),

nfs, cifs, smbfs(此三種為網絡文件系統類型)

-n :在默認的情況下,系統會將實際掛載的情況實時寫入 /etc/mtab 中,以利其他程序

的運行。但在某些情況下(例如單人維護模式)為了避免問題,會刻意不寫入。

此時就得要使用這個 -n 的選項了。

-L :系統除了利用裝置文件名 (例如 /dev/hdc6) 之外,還可以利用文件系統的標頭名稱

(Label)來進行掛載。最好為你的文件系統取一個獨一無二的名稱吧!

-o :後面可以接一些掛載時額外加上的參數!比方說賬號、密碼、讀寫權限等:

ro, rw: 掛載文件系統成為只讀(ro) 或可擦寫(rw)

async, sync: 此文件系統是否使用同步寫入 (sync) 或異步 (async) 的

內存機制,請參考文件系統運行方式。默認為 async。

auto, noauto: 允許此 partition 被以 mount -a 自動掛載(auto)

dev, nodev: 是否允許此 partition 上,可創建裝置文件? dev 為可允許

suid, nosuid: 是否允許此 partition 含有 suid/sgid 的文件格式?

exec, noexec: 是否允許此 partition 上擁有可運行 binary 文件?

user, nouser: 是否允許此 partition 讓任何使用者運行 mount ?一般來說,

mount 僅有 root 可以進行,但下達 user 參數,則可讓

一般 user 也能夠對此 partition 進行 mount 。

defaults: 默認值為:rw, suid, dev, exec, auto, nouser, and async

remount: 重新掛載,這在系統出錯,或重新升級參數時,很有用!

  1. 掛載磁盤

技術分享圖片

  1. 卸載磁盤

命令【umount】

選項:

-a:卸除/etc/mtab中記錄的所有文件系統;

-f :強制卸除!可用在類似網絡文件系統 (NFS) 無法讀取到的情況下;

-n :卸除時不要將信息存入/etc/mtab文件中;

-l :惰性卸載。從文件系統層次結構中分離文件系統,並在文件系統不再忙的時候立即清除對文件系統的所有引用

1)退出掛載點目錄到家目錄下卸載

技術分享圖片

2)惰性刪除

技術分享圖片

技術分享圖片

  1. “/etc/fstab“配置文件

當Linux系統下劃分了新的分區後,需要將這些分區設置為開機自動掛載,否則,Linux是無法使用新建的分區的。 /etc/fstab 文件負責配置Linux開機時自動掛載的分區

磁盤Linux分區都必須掛載到目錄樹中的某個具體的目錄上才能進行讀寫操作,而fstab正是負責這一配置。顯然,根目錄是所有Linux的文件和目錄所在的地方,需要掛載上一個磁盤分區。Linux分區交換也需要獨立使用一個分區,因此,安裝一個Linux至少需要兩個分區。(事實上,只使用一個分區安裝Linux也是可能的,而且,如果電腦的物理內存足夠大,交換分區並不是必須的)

格式 :“設備文件 掛載目錄 格式類型 權限選項 轉儲 磁盤檢查"

設備文件:一般為設備的路徑+設備名稱, 也可以寫唯一識別碼(UUID)

掛載目錄:指定要掛載到的目錄,需在掛載前創建好

格式類型 指定文件系統的格式:比如Ext-3s、 Ext4、 XFS、 SWAP、 iS09660 (此為光盤設備) 等

權限選項:設置為defaults,則默認權限為:rw,suid, dev, exec, auto, nouser, async

auto: 系統自動掛載,fstab默認就是這個選項

defaults: rw, suid, dev, exec, auto, nouser, and async.

noauto 開機不自動掛載

nouser 只有超級用戶可以掛載

ro 按只讀權限掛載

rw 按可讀可寫權限掛載

user 任何用戶都可以掛載

請註意光驅和軟驅只有在裝有介質時才可以進行掛載,因此它是noauto

轉儲頻率: 0:不做備份 1:每天轉儲 2:每隔一天轉儲

磁盤檢查:當其值為0時,永遠不檢查;而 / 根目錄分區永遠都為1。其它分區從2開始,數字越小越先檢查,如果兩個分區的數字相同,則同時檢查。

舉例:

寫入/etc/fstab

技術分享圖片

重啟查看,已掛載

技術分享圖片

4.9 手動增加swap空間

命令【mkswap】在設置或文件上創建linux交換區(swap)

mkswap [參數] 設備名 [塊數]

設備名,這裏的設備通常是一個磁盤分區,如:/dev/sda6,或者是一個文件/swapfile

-c 建立交換空間前,先檢查是否有壞道,如果有壞道,將壞道總數目顯示出來。

-f 強行運行mkswap命令

-p <頁大小> 指定所使用的頁大小

-L <標簽> 指定一個標簽,此後swapon可以使用這個標簽

-U <uuid> 指定要使用的UUID。默認是生成一個UUID

-v0 建立舊式交換區

-v1 建立新式交換

技術分享圖片

原來的swap空間

技術分享圖片

增加後空間

技術分享圖片

技術分享圖片

卸載swap空間

技術分享圖片


2017.12.29 3周5次課