2013年5月26日 星期日

Linux檔案系統的操作練習Lab設計

題目:
1.假使今天家目錄所座落的儲存空間不夠用了,如何將家目錄「/home/」底下所有的資料,搬移到別的儲存空間,並且不影響其它程序對家目錄底下資料的使用。

2.針對前一題,我們將新的儲存空間設置使用者配額設定(usrquota),限制使用者(例如:geego)在該儲存空間的block_limit_soft=20M、block_limit_hard=25M、Grace_Time=1minutes。

操作流程:
1.先檢視家目錄「/home/」階層下的檔案佔據多少空間,以判定我們至少要準備多少空間來置放這些內容。





2.準備一個儲存空間來存放管理這些檔案。
先選擇一個儲存空間(/dev/sdb1),建置(格式化)成ext3的檔案系統,並掛載於目錄「/mnt/backup」




3.將目錄「/home/」的資料全部搬到/mnt/backup底下(要保留檔案的身份和權限),並建置「/mnt/backup/home/」的soft-link檔案「/home(/home /mnt/backup/home/),讓系統使用原路徑「/home」能取用/mnt/backup/home/下的資料



4.設定系統啟動會自動掛載 (編輯檔案「/etc/fstab」)

5.設定usrquotablock_limit_soft=20Mblock_limit_hard=25MGrace Time=1minutes。將此quota的功能設定為系統啟動會自動掛載使用。

a.先將已掛載的loop_device (loop0)先卸載下來,再重新掛載並加上usrquotagrpquota的功能選項。

b.建置更新usrquota的資料庫 (指令:quotacheck)


c.開啟quota對檔案系統的監控 (指令:quotaon)

d.編輯使用者(southwind)的quota設定:
# edquota -u southwind
 

e.編輯quota的「grace time」(緩衝時間)
# edquota -t


f.看quota的詳細資訊(報表,report)
# repquota /mnt/backup/


g.編輯檔案「/etc/fstab」讓系統啟動自動掛載並打開quota的功能選項


完成^_^

2012年7月21日 星期六

在Linux上一個UID只能給一個帳號名稱使用嗎??(未完成)

如題,站在系統管理的角度上,原則上我們是希望一個使用都帳號只會對應一個UID。換言之,在新增一個使用者帳號時,會分配一個未用過的號碼作為新帳號的UID,而不會用一個已用過的號碼(也就是已經有其它帳號在使用的號碼),作為新帳號的UID。

不過如果去觀察指令「useradd」的man_page,可以發現一個選項「-o」,透過這個選項可以將已分配的UID重複分配給新增的帳號使用。這就會變成,一個UID會對應到2個以上的帳號名稱。

不過此時又會衍生另一個問題,假設現在有2個帳號「test1」和「test2」,這2個帳號對應同一個UID「600」,如果我們以UID=600在系統上操作時,我們到底是用哪一個帳號身份呢?是test1還是test2??

當我們在Login時,輸入的名稱假設叫作「typein_name」,透過typein_name對照「/etc/passwd」的資料,取得UID、GID、shell和家目錄位置(所以登入完成後所在的家目錄要看typein_name),接著,登入的shell讀取啟動檔來設定變數USER,變數USER的設定是透過執行命令行「id -un」,該命令行會以現在的UID號碼來查詢檔案「/etc/passwd」以取得帳號名稱,所以此時同樣的UID如有不同的帳號名稱,則先找到的那一筆紀錄,會先被使用。

這也就是為什麼登入時,明明在login的判面是輸入「A帳號」,登入完成後,家目錄是在「A帳號的家目錄」可是提示字元的使用者帳號名稱卻是顯示「B帳號」(因為B帳號的紀錄在檔案/etc/passwd中,排得位置比A帳號上面)。

有空的話我再把lab驗測式的圖檔放上來