fstab文件及磁盤配額管理

一、fstab文件

  • fstab文件為存放文件系統(tǒng)的靜態(tài)信息文件,同時也是系統(tǒng)啟動時必須要 讀取的一種配置文件,存放于/etc目錄下。

  • 當系統(tǒng)啟動時,讀取這個配置文件中的信息,然后將指定的文件系統(tǒng)掛載到指定的目錄下,此文件錯誤可能會導致系統(tǒng)開啟失敗。

  • etc/fstab 文件包含了<file system> <dir> <type> <options> <dump> <pass>等幾個字段,字段直接通過空格或 Tab 分隔。

    <file systems>: 要掛載的分區(qū)或存儲設備
    <dir> :掛載點
    <type> :要掛載設備或是分區(qū)的文件系統(tǒng)類型,支持文件系統(tǒng)類型有:ext2, ext3, ext4, reiserfs, xfs, jfs, smbfs, iso9660, vfat, ntfs, swap 及 auto。 設置成auto類型,mount 命令會自動匹配文件系統(tǒng)類型
    <options>:掛載時經常使用的參數,但有些mount 參數是特定文件系統(tǒng)才有的。一些比較常用的參數有:
          auto:在啟動時或鍵入了 mount -a 命令時自動掛載
          noauto:關閉自動掛載
          exec:允許執(zhí)行此文件系統(tǒng)上的二進制文件
          noexec:不允許執(zhí)行文件系統(tǒng)上的二進制文件
          ro:以只讀模式掛載文件系統(tǒng)
          rw: 以讀寫模式掛載文件系統(tǒng)
          user: 允許任意用戶掛載此文件系統(tǒng),若無顯示定義,隱含啟用noexec, nosuid, nodev 參數
          users:允許所有 users 組中的用戶掛載文件系統(tǒng)
          nouser: 只能被 root 掛載
          owner:允許設備所有者掛載
          sync : I/O 同步進行
          async:I/O 異步進行
          dev:解析文件系統(tǒng)上的塊特殊設備
          nodev:不解析文件系統(tǒng)上的塊特殊設備
          suid:允許 suid 操作和設定 sgid 位。這一參數通常用于一些特殊任務,使一般用戶運行程序時臨時提升權限
          nosuid:禁止 suid 操作和設定 sgid 位
          atime/noatime :更新/不更新訪問時間,包含目錄和文件
          diratime/nodiratime :目錄的訪問時間戳
          relatime:實時更新 inode access 記錄。只有在記錄中的訪問時間早于當前訪問才會被更新。(與 noatime 相似,但不會打斷如 mutt 或其它程序探測文件在上次訪問后是否被修改的進程),可以提升性能(參見 atime 參數)
          flush :vfat 的選項,更頻繁的刷新數據,復制對話框或進度條在全部數據都寫入后才消失
          loop:使用loop設備 
          defaults:使用文件系統(tǒng)的默認掛載參數,例如 ext4 的默認參數為:rw, suid, dev, exec, auto, nouser, async
    <dump> :dump 工具通過它決定何時作備份,dump 會檢查其內容,并用數字來決定是否對這個文件系統(tǒng)進行備份。 允許的數字是 0 和 1 。0 表示忽略, 1 則進行備份
    <pass> fsck 讀取 <pass> 的數值來決定需要檢查的文件系統(tǒng)的檢查順序。允許的數字是0, 1, 和2。 根目錄應當獲得最高的優(yōu)先權 1, 其它所有需要被檢查的設備設置為 2. 0 表示設備不會被 fsck 所檢查
    
  • 文件系統(tǒng)標識

在 /etc/fstab配置文件中可以使用三種不同的方法表示文件系統(tǒng):掛載文件路徑和名稱、UUID 或者 label。使用 UUID 或是 label 的好處在于它們與磁盤順序無關。如果一些意外情況導致了磁盤順序的改變,就可能導致/目錄掛載磁盤找不到路徑,所以建議使用 UUID 或是 label 來表示。

  • fstab文件的幾種掛載格式

    將/boot目錄掛載到/mnt/boot中        
       /boot /mnt/boot none bind 0 0 (none為沒有文件系統(tǒng))      
    將/app/partfile掛載到/mnt/part文件中
       /app/partfile /mnt/part ext4 loop 0 0     
    掛載win共享文件(192.168.198.1為win的IP,share為共享目錄) 
      //192.168.198.1/share        /mnt/share       cifs  defaults 0 0
    掛載swap分區(qū) 
       /dev/sdb3  swap  swap  defaults 0 0 
    掛載磁盤分區(qū) 
      /dev/sda2  /  ext4   defaults 0 0 
    掛載nfs共享目錄
      192.168.198.1:/share   /mnt/share    nfs  defaults 0 0
    掛載samba目錄
      //172.16.30.130/common /tmp cifs multiuser, username=danran,password=danran,sec=ntlmssp 0 0
    

二、磁盤配額使用

隨著系統(tǒng)普通用戶的增加很可能導致/home目錄的空間使用率緊缺,作為系統(tǒng)管理員,有必要將/home目錄的空間使用對普通用戶做出一些限制,以免導致/home目錄空間不足而其他用戶不能正常使用,這就用到了我們今天所要說的磁盤及文件系統(tǒng)配額的管理。

磁盤及文件系統(tǒng)配額是根據塊或者節(jié)點數為界限對用戶及組進行限制使用,但是磁盤配額的使用必須在一個獨立分區(qū)上進行,故首先應將/home遷移到獨立分區(qū)上。

使用到的相關命令有如下幾個:

系統(tǒng)掛載選項
      usrquota:對指定用戶限制
      grpquota:對組進行限制
配額數據庫初始化:
     quotackeck   -cug /home 初始化/home目錄的用戶和組的配額數據庫
quotaon -p /home  查看/home目錄的配額數據庫是否開啟 
quotaon /home  開啟/home的配額數據庫   
edquota danran 編輯danran用戶的配額管理
edquota -p user1 user2 根據user1的配額生成user2的配額  
quota uaername   查看uaername的配額空間 
  • 有一個空間大小為20G的分區(qū)sdb1,首先將跟目錄下面的/home遷移到/sdb1分區(qū)上,然后方可使用磁盤配額對/home目錄進行管理

  • 將/home遷移到/dev/sdb1分區(qū)上

    mkdir /mnt/home
    mount /dev/sdb1 /mnt/home   將sdb1分區(qū)掛載到/mnt/home目錄下
    cp -av /home/* /mnt/home    拷貝原目錄下的所有數據到/dev/sdb1掛載點目錄/mnt/home上
    

如果直接掛載可能會把原來/home下的文件覆蓋,導致原有文件成為垃圾文件從而占用空間,若直接刪除/home下的文件,可能導致正在登陸的普通用戶不能正常使用,故切換到單用戶模式下刪除/home文件,因為單用戶模式下沒有其他用戶登錄不需擔心在刪除過程中對普通用戶造成影響。

  init 1 切換進單用戶模式  
  du -sh /home /mnt/home   比較兩個home目錄是不是一致
  blkid /dev/sdb1    可顯示/dev/sdb1分區(qū)的UUID號
  vim /etc/fatab    將/dev/sdb1設備掛載到/home寫入fatab文件啟動掛載
      UUID=b054a2ea-bdd4-4ae9-911a-a85bb102879d   /home  ext4   defaults 0 0 
  mount -a    將/dev/sdb1掛載到了/home目錄,即完成了家目錄遷移到/dev/sdb1分區(qū)下,而/dev/sdb1掛載點/mnt/home中的數據也同步到/home下    
   ls /home  查看/home下是否有數據,即/dev/sdb1是否掛載成功   
   umount /mnt/home   過度掛載點目錄此時已經可以卸載
  • 將家目錄回遷到/目錄下 (此過程最好也在單用戶下進行)

    init 1
    mkdir /mnt/home
    mount /dev/sdb1 /mnt/home 
    umount /home
    cp -av /mnt/home/* /home
    vim /etc/fstab 
        將UUID=b054a2ea-bdd4-4ae9-911a-a85bb102879d   /home  ext4   defaults 0 0 刪除   
    reboot
    
  • 控制用戶danran和danran組使用/home空間的大小,/home必須為一個獨立的分區(qū)才能使用,/home掛載在/devsdb1分區(qū)上

    blkid /dev/sdb1 顯示/dev/sdb1分區(qū)的UUID號
     vim /etc/fstab        將/dev/sdb1掛載到/home下,usrquota啟用用戶配額功能,grpquota為啟用組配額功能 
          UUID=b054a2ea-bdd4-4ae9-911a-a85bb102879d  /home ext4  usrquota,grpquota 0 0
      mount -o remount /home  重新掛載/home
    


mount 查看/home是否已經啟用usrquota和grpquota配額特性
quotacheck -cug /home 初始化配額數據庫,u為初始化用戶數據庫,g為初始化組數據庫
setenforce 0 若數據庫初始化失敗則執(zhí)行這條命令,關閉SELinux功能
ls /home 檢查配額數據庫是否初始化成功 若有aquota.group和aquota.user兩個二進制文件生成表示數據庫初始化成功

  quotaon -p /home 查看磁盤配額數據庫是否啟用     
  quotaon /home   開啟磁盤配額數據庫   
  quotaon -p /home  

① 交互式編輯用戶磁盤配額:

  edquota danran   編輯配置空間使用額度(以K為單位),soft為提醒狀態(tài),hard為強制報錯狀態(tài) inodes為節(jié)點數,后兩個soft和hard是控制文件格式,前兩個控制空間大小

限制danran用戶使用/home空間大小為80M,當使用超過50M時提醒用戶,當文件數超過100個時提醒用戶,但不強制報錯退出


  su - danran  切換到danran用戶
  dd if=/dev/zero of=110M bs=2M count=55    創(chuàng)建110M的f1文件   

文件的所有者為danrna用戶,超出了danran用戶使用/home空間的限制,所以報錯退出,修改文件的所有者和所屬組,則danran用戶使用的空間恢復,由此得出結論為文件的配額限制是根據文件所有者和所屬組判斷的。

  quota danrna 查看danran用戶的磁盤配額 
  repquota /home  顯示/home分區(qū)上的配額使用情況

Block grace time:7days 表示有效期7天,7天之后soft將變?yōu)閔ard使用

交互式編輯組空間配額

  edquota -g danran   對danran組設置空間配額   
  usermod -G danran dan   將dan用戶添加進danran組中
  id dan
su - dan  切換到dan用戶    
dd if=/dev/zero of=f1 bs=2M count=50 發(fā)現沒有報錯空間限制
ll f1  列出f1文件的詳細信息,發(fā)現文件的所有者和所屬組都是dan用戶,而dan用戶和組沒有限制使用額度    
id  發(fā)現danran僅是dan用戶的附加組,而不是所屬組    
newgrp danran   臨時將dan用戶的所屬組更換為danran
id dan   dan用戶的所屬組臨時更換為了danran
dd if=/dev/zero of=f2 bs=1M count=120   這次發(fā)現報錯,超出了block limit 
ll f2    可以發(fā)現f2文件的所屬組為danran
由此發(fā)現,設置組的空間使用額度時表示的是所屬組而不是附加組

②非交互式設置空間配額

 setquota danran 150000 200000 0 100 /home    非交互式配置danran用戶的使用/home的最大空間為200M,達到150M時提醒用戶,當文件數目達到100個時報錯退出,并且退出前不提醒用戶
 quota danran   顯示danran用戶的空間配額
setquota -g danran 100000 150000 0 0 /home   
edquota/quota  -g danran   顯示danran組的空間配額  
  • 配置dan用戶的磁盤配額跟danran用戶一致

    edquota -p danran dan 
    quota/edquota dan
    
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,362評論 6 544
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現死者居然都...
    沈念sama閱讀 99,577評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事?!?“怎么了?”我有些...
    開封第一講書人閱讀 178,486評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,852評論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,600評論 6 412
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,944評論 1 328
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,944評論 3 447
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,108評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體,經...
    沈念sama閱讀 49,652評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,385評論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,616評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,111評論 5 364
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 44,798評論 3 350
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,205評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,537評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,334評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,570評論 2 379

推薦閱讀更多精彩內容