中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Linux的磁盤配額
不管磁盤空間有多么大,磁盤空間不夠使用似乎是一個永遠的事實。而且Linux系統(tǒng)在默認情況下,并不限制每個用戶使用磁盤空間的大小,如果某個用戶疏忽或惡意將磁盤占滿,將導(dǎo)致系統(tǒng)無法進行寫操作甚至崩潰。因此Linux提供了限制用戶磁盤空間的手段,以便促使每個用戶合理有效地使用分配給他的空間。

設(shè)置用戶和組配額的分配量對磁盤配額的限制一般是從一個用戶占用磁盤大小和所有文件的數(shù)量兩個方面來進行的。設(shè)置磁盤配額時,“某用戶在系統(tǒng)中共計只能使用50MB磁盤空間”,這樣的限制要求是無法實現(xiàn)的;只能設(shè)置“某用戶在/home分區(qū)能使用30MB,在/backup分區(qū)能使用20MB”。磁盤配額的設(shè)置單位是分區(qū),針對分區(qū)啟用配額限制功能后才可以對用戶設(shè)置,而不理會用戶文件放在該文件系統(tǒng)中的哪個目錄中,其他系統(tǒng),如Unix、Windows,原理與Linux相同。在具體操作之前,我們先了解一下磁盤配額的兩個基本概念:軟限制和硬限制。

◆軟限制:一個用戶在一定時間范圍內(nèi)(默認為一周,可以使用命令“edquota-t”重新設(shè)置,時間單位可以為天、小時、分鐘、秒)超過其限制的額度,在不超出硬限制的范圍內(nèi)可以繼續(xù)使用空間,系統(tǒng)會發(fā)出警告(警告信息設(shè)置文件為“/etc/warnquota.conf”),但如果用戶達到時間期限仍未釋放空間到限制的額度下,系統(tǒng)將不再允許該用戶使用更多的空間。
◆硬限制:一個用戶可擁有的磁盤空間或文件的絕對數(shù)量,絕對不允許超過這個限制。

明白了上面的基本概念,我們就可以配置磁盤配額了。設(shè)置磁盤配額的步驟:
(1)啟動分區(qū)配額功能;
(2)生成配額信息文件;
(3)設(shè)置用戶和組配額;
(4)啟動磁盤配額服務(wù)。


1. 啟動分區(qū)配額功能
   用管理員身份登錄系統(tǒng),編輯系統(tǒng)配置文件/etc/fstab中相應(yīng)分區(qū)(以/home分區(qū)為例)的設(shè)置選項,若開啟用戶配額添加選項“usrquota”,用戶組配額添加選項“grpquota”,中間以逗號隔開。
LABEL=/home /home  ext3 defaults,usrquota 2
   用戶組配額用以限定一組用戶共計可以使用的空間數(shù),一般應(yīng)用較少,本例只啟動用戶配額。
   分區(qū)配額功能生效需要重新啟動系統(tǒng),或者簡單一點,重新掛載此分區(qū),讓其新加參數(shù)生效:
# mount -o remount /home

2. 生成配額信息文件
   檢測分區(qū)中當(dāng)前用戶空間使用情況,并生成保存配額信息的數(shù)據(jù)庫文件:
# quotacheck -F vfsv0 -uv /home (生成符合系統(tǒng)要求的 aquota.usr)
# quotacheck -g /home (生成符合系統(tǒng)要求的aquota.group)
    選項“-Fvfsv0”指定磁盤配額功能實現(xiàn)的軟件版本,當(dāng)前流行的Linux版本基本都為Quota 2.0 ,可以使用命令“manquotacheck”查看到此信息,不必像絕大多數(shù)的文章和書籍資料中手工“touch”創(chuàng)建。
   選項“-u”指定生成用戶配額信息文件“aquota.user”(Quota1.0為quota.user),如果設(shè)置了用戶組配額則添加選項“-g”生成配額信息文件“aquota.group”,選項“-v”表示執(zhí)行時顯示詳細信息。執(zhí)行結(jié)果中自動報告了分區(qū)/home的空間使用情況,并自動生成了配額信息文件“aquota.user”,其權(quán)限為600。
   若較老的Linux系統(tǒng)(Quota 1.0)要升級到Quota 2.0,可以使用命令“convertquota”將老格式文件“quota.user”和“quota.group”轉(zhuǎn)換為新格式“aquota.user”和“aquota.group”。

3. 設(shè)置用戶和組配額
   使用edquota命令為每個用戶設(shè)置磁盤配額,如下例為用戶Sam設(shè)置配額:
# edquota Sam
   系統(tǒng)會調(diào)用Vim/Vi生成一臨時文件,編輯方法與vi完全相同,以ZZ或:wq命令退出。在此文件中可對用戶Sam配額信息進行編輯,默認文件內(nèi)容如下:
Disk quotas for user Sam (uid 500):
Filesystem    blocks      soft      hard    inodes    soft    hard
/dev/hda3                                        0

   其中“Filesystem”字段表明使用磁盤配額的分區(qū)對應(yīng)的設(shè)備名稱,“blocks”和“inodes”分別表明了用戶當(dāng)前已經(jīng)使用的磁盤空間(以KB為單位)和建立的文件數(shù)(此限制一般較少應(yīng)用),“soft”和“hard”即為前文提及的軟限制和硬限制(大多數(shù)應(yīng)用不設(shè)置軟限制)。
   編輯此文件,把軟、硬限制設(shè)置到合適的數(shù)值,保存退出,可以看到“aquota.user”文件的大小改變,說明用戶的配額已經(jīng)儲存。設(shè)置組配額可以使用命令“edquota-g 組名”。
   設(shè)置大量用戶的磁盤配額,若分配給用戶的配額相同,可以使用命令edquota的“-p”選項在用戶之間復(fù)制配額設(shè)置,可用下面的命令給這些用戶賦予與protuser相同的限額:
# edquota [-u] -p protuser user1 user2user3
# edquota -g -p protgroup group1 group2 group3

   例如將用戶Sam的配額信息復(fù)制給Helen和Jack:
# edquota -p Sam Helen Jack
   這樣可將配額模板用戶設(shè)置復(fù)制給任意多用戶,或可利用此命令編寫shell腳本批量復(fù)制。此外,也可以使用命令“setquota”來設(shè)置磁盤配額,如:
# setquota Mary 0 20480 0 0/home
   這樣可以限定用戶Mary可以在/home分區(qū)使用空間20MB ,具體用法在此不在贅述。

   在第三步中設(shè)置用戶Sam配額為10MB ,如下:
Disk quotas for user Sam (uid 500):
Filesystem    blocks      soft      hard    inodes    soft    hard
/dev/hda3                     10240                0

    切換到用戶Sam,做磁盤爆滿測試:
# dd if=/dev/zero of=quotatest bs=1024kcount=10240000
hda3: write failed, user block limitreached.
dd: writing `quotatest': Disk quota exceeded
1+0 records in
0+0 records out
1036288 bytes (1.0 MB) copied, 0.0174559 seconds, 59.4MB/s

   用戶Sam達到限定的磁盤空間,出現(xiàn)了上面的提示信息,他將不能再創(chuàng)建文件,有效的控制了用戶磁盤空間的使用。
 
4. 啟動磁盤配額服務(wù)
   使用命令quotaon用來激活配額系統(tǒng)并允許配額檢查:
# quotaon /home
   若關(guān)閉配額服務(wù)則使用命令“quotaoff”。
   分區(qū)的磁盤配額功能設(shè)置后,每次開機會自動加載并啟動服務(wù),務(wù)須另行在啟動腳本中設(shè)置。

5. 其他功能設(shè)置設(shè)定soft quota和hard quota之間的時間
# edquota -t
出現(xiàn)一個 vi 窗口:
Grace period before enforcing soft limits forusers:
Time units may be: days, hours, minutes, or seconds
Filesystem Block grace period Inode grace period
/dev/hda7 7days 7days


修改成自己所需要的,并保存退出就設(shè)置這個時間啦。在這之后可能需要重新啟動,以使磁盤限額生效。

6. 檢查磁盤空間限制的一致性
   系統(tǒng)會自動每次重新啟動時,在檢查硬盤后進行( /etc/rc.sysinit),無須親自進行。假若分區(qū)已經(jīng)以“讀寫”方式掛上時要小心,例如:
# quotacheck /home
quotacheck: Quota for users is enabled onmountpoint /home so quotacheck might damage the file.
Please turn quotas off or use -f to forcechecking.

    這時,由于某種需要,或者在某種情況,“不得不”運行這個命令 :
# quotacheck -mf [-u] /dev/hda7
# quotacheck -mf -g /dev/hda7

    參數(shù) -m[M]意思是:強迫在“讀、寫”模式下檢查硬盤的 quota(有一定的“正在寫”的數(shù)據(jù)丟失可能,應(yīng)確保沒有進程在寫這個分區(qū)。建議在單用戶模式下進行。

例如:(在平時檢查)
# quotacheck /var/spool/ -f
quotacheck: Cannot remount filesystem mountedon /var/spool read-only so counted values might not be right.
Please stop all programs writing to filesystem or use -m flag toforce checking.


# quotacheck /var/spool/ -m

quotacheck: Quota for users is enabled onmountpoint /var/spool so quotacheck might damage the file.
Please turn quotas off or use -f to force checking.


7. 取消磁盤空間和i節(jié)點數(shù)目的限制
# quotaoff /home (取消磁盤空間限制。)
# quotaon /home (現(xiàn)在啟動磁盤空間限制。)
# quotaon /home (如果已經(jīng)啟動磁盤空間限制,會出現(xiàn)以下錯誤:)

quotaon: using /home/aquota.group on/dev/hda7: Device or resource busy
quotaon: using /home/aquota.user on /dev/hda7: Device or resourcebusy

8. 查看磁盤配額
 用戶查看自己當(dāng)前的配額信息,可使用命令“quota”:
# quota
Disk quotas for user Sam (uid 500):
Filesystem blocks  quota  limit  grace  files  quota  limit   grace
/dev/hda3   1022      1024                      

   其中“quota”字段為軟限制,“l(fā)imit”字段為硬限制,“grace”字段為軟限制達到后寬限期(前文“edquota-t”設(shè)定的時間)。
   若管理員查看各個用戶的磁盤配額使用情況,可以使用命令“repquota”:
# repquota /home
*** Report for user quotas on device/dev/hda3
Block grace time: 7days; Inode grace time: 7days
Blocklimits               File limits
User       used       soft       hard grace       used       soft       hard  grace
-----------------------------------------------------------------
root --       10545                                   
sam --               1024             1024                       
helen --                   10240                   0
…………

   從結(jié)果中可以方便的查看到用戶的配額使用情況。如果想獲得其他更多信息還可以執(zhí)行命令“quotastats”,詳見幫助。

inode與block使用說明
   磁盤配額限制空間使用的方法有兩種,即分別對inode和block進行限制。磁盤配額可以限定用戶在分區(qū)中使用的空間大?。╞locks),也可以限定用戶可以在分區(qū)中最多創(chuàng)建的文件數(shù)(inodes),需要注意的是,只要用戶所創(chuàng)建的文件超過他可以使用的inode數(shù)額,即使這些文件是空的,他再次創(chuàng)建文件的行為也將被限制。
   此處說明一下inode的概念。在Linux中創(chuàng)建一個文件,系統(tǒng)就為該文件分配一個惟一的inode,文件的inode用于訪問文件的屬性。也就是說,Linux系統(tǒng)中每個文件都要對應(yīng)一個inode,通俗點說Linux內(nèi)核不認識字母,所以用戶要有UID、用戶組要有GID、進程要有PID……,文件要有inode,一旦inode丟失文件將無法被訪問。
使用命令“l(fā)s -i”可以查看到文件的inode號。
# ls -i
163523 inittab  163524services  163525 a b
   Linux系統(tǒng)中的硬鏈接文件與原文件大小一樣,且可同步更新,因為硬鏈接是一個指向文件的指針,它與原文件的inode相同。
   如果系統(tǒng)中有名稱特殊的文件,如“ab”,使用“rm”命令無法對其操作(因“rm”會判斷為要刪除兩個文件“a”和“b”),此時可以利用inode的原理,假設(shè)“ab”的inode為163535,查看詳細信息執(zhí)行:
# find . -inum 163535 -exec ls -l {}\;
-rw-r--r-- 1 root root 0 Nov 27 15:21 ./ab
   刪除此文件執(zhí)行:
# find . -inum 163535 -exec rm {}\;
   選項“-inum”即為查找文件的inode ,選項“-exec”為find命令的連接符。
   另外,在部署磁盤配額前,要考慮哪些分區(qū)需要設(shè)置。一般而言,保存用戶宿主目錄的分區(qū)(一般為/home)一定要設(shè)置磁盤配額,公共存儲用戶數(shù)據(jù)的分區(qū)要設(shè)置磁盤配額(如公司的網(wǎng)絡(luò)備份應(yīng)用服務(wù)器)。
 
磁盤爆滿測試
   一個沒有設(shè)置磁盤配額的Linux系統(tǒng)中,使用某一普通用戶登錄,執(zhí)行命令:
# dd if=/dev/zero of=quotatest bs=1024kcount=10240000
   命令將生成一個固定大小的文件。其中“if”表示輸入,偽設(shè)備/dev/zero不斷生成字符串“0”,初始化文件;“of”表示輸出,此例為在用戶當(dāng)前目錄下生成文件“quotatest”;“bs”為“blocksize”指定數(shù)據(jù)塊大小,單位設(shè)定為“1024k”即1MB;“count”為總計生成的文件(“quotatest”)大小,若“bs”為1MB,則“10240000”為10000GB。
   大多數(shù)服務(wù)器磁盤空間沒有這么大,上面的命令沒執(zhí)行完空間就耗光了。筆者用一臺一般配置的筆記本電腦測試,寫入速度約為60MB/s,一分鐘就可以寫3GB,如果您的服務(wù)器是100GB的,半個小時后磁盤空間就會達到100%,此時用戶無法創(chuàng)建文件、管理員無法添加用戶、系統(tǒng)無法寫入日志……甚至系統(tǒng)重啟后將無法正常啟動,因為磁盤空間爆滿,啟動過程中臨時文件無法生成。
   如果您真的做了上述的測試,系統(tǒng)無法正常啟動,可以使用Linux安裝光盤引導(dǎo),在安裝界面輸入“l(fā)inuxrescue”進入修復(fù)模式后刪掉文件“quotatest”,即可恢復(fù)。
   由此可見,若不設(shè)置磁盤配額,即使不是黑客,任一普通用戶都可以隨時摧毀我們的系統(tǒng)。
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
磁盤配額管理
第八章 Linux磁盤管理
Linux:quota磁盤配額設(shè)置
磁盤限額的設(shè)定
linux之磁盤配額(quota)
磁盤
更多類似文章 >>
生活服務(wù)
熱點新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服