1 / 44

課程參與度之評估方式

課程參與度之評估方式. 上課時必須專心聽講,跟上進度,參與討論 扣 分項目 玩線上遊戲一次扣 1 分 玩手機一次扣 1 分 睡覺一次扣 1 分 聊天一次扣 1 分 無法回答老師提出的問題一次扣 1 分 加分項目 主動回答老師的問題一次加 2 分 找出老師程式中的錯誤一次加 1 分 修正老師程式中的錯誤一次加 4 分. 作業系統實務 Linux CH07 使用者帳號管理. 鄧姚文. 大綱. 了解 Linux 的帳號與群組 新增使用者帳號與群組 刪除帳號與群組 驗證帳號建立是否正確 認識檔案與目錄的權限. 使用者帳號管理.

Download Presentation

課程參與度之評估方式

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 課程參與度之評估方式 • 上課時必須專心聽講,跟上進度,參與討論 • 扣分項目 • 玩線上遊戲一次扣1分 • 玩手機一次扣1分 • 睡覺一次扣1分 • 聊天一次扣1分 • 無法回答老師提出的問題一次扣1分 • 加分項目 • 主動回答老師的問題一次加2分 • 找出老師程式中的錯誤一次加1分 • 修正老師程式中的錯誤一次加4分

  2. 作業系統實務 LinuxCH07使用者帳號管理 鄧姚文

  3. 大綱 了解Linux的帳號與群組 新增使用者帳號與群組 刪除帳號與群組 驗證帳號建立是否正確 認識檔案與目錄的權限

  4. 使用者帳號管理 多人使用環境是Linux的主要特色 為多個使用者建立多個帳號(User) 群組的設計,可讓系統管理者為有相同特性的使用者訂定更彈性的管理模式

  5. 帳號與群組相關指令 • 變換帳號群組 • 變換帳號:su • 變換群組:newgrp • 群組 • 建立群組:groupadd • 群組密碼:gpasswd • 修改群組:groupmod • 刪除群組:groupdel • 檔案: • /etc/group • /etc/gshadow • 帳號 • 建立帳號:useradd • 帳號密碼:passwd • 修改帳號:usermod • 刪除帳號:userdel • 檔案: • /etc/passwd • /etc/shadow • 帳號資訊: • id • finger

  6. 群組 • 一個群組皆對應一個編號,稱為GID(Group ID) • 每個群組的GID皆不相同 • 群組可以設定密碼 • 以 newgrp變換群組時須驗證密碼

  7. 練習 • 建立群組 engineer • 將 user1 加入 engineer 群組 • groupmod -A user1 engineer • 以 id 檢查 user1 的帳號資訊 • 以 user1 的身份建立一個檔案 file1 • 令 user1 變換群組為 engineer,然後建立檔案 file2 • 觀察 file1 和 file2 的差異 • 將 engineer 群組的密碼設定成 zaq1@WSX • 重複前三步驟 • 觀察 /etc/group 和 /etc/gshadow

  8. 使用者帳號 • 每一個使用者帳號有一個唯一的號碼 • UID(User ID) • 家目錄 Home Directory • 屬於使用者帳號的私秘空間 • 殼層 Shell • 使用者熟悉的指令介面 • 最原始最通用:Bourne Shell • C語言是母語?C Shell • 系統中可用的殼層: /etc/shells

  9. 7-2 新增使用者帳號 • useradd指令背後 • 為這帳號建立同名的群組 • 系統也為每一個群組指定另一套不重覆的群組編號,稱為Group ID • 帳號資料以純文字方式儲存在/etc/passwd • tom:x:502:503::/home/tom:/bin/bash • 系統會為每個帳號指派一個不重覆的編號,稱為User ID • 新增帳號後,皆會自動在/home目錄中建立一個目錄 • 系統的/etc/skel/目錄下的所有檔案都會被複製一份至帳號的家目錄中 • 預設值: /etc/default/useradd

  10. 新增使用者帳號 • useradd指令規格 • useradd [選項] 帳號名稱

  11. 查詢使用者相關資訊 • 利用id指令,在id指令後加上帳號名稱 • [root@fc ~]# id mike • uid=501(mike) gid=501(mike) groups=501(mike)

  12. 刪除使用者帳號 • 利用指令userdel(User Delete) • 將帳號資訊從系統設定檔中移除(但不移除帳號所屬群組) • userdel指令空白後,加上帳號名稱 • [root@mylinux ~]# userdel mike • [root@mylinux ~]# id mike • id: mike:此用戶不存在 • 在刪除帳號時,一併刪除該帳號的家目錄所有檔案 • userdel -r mike

  13. 變更使用者帳號 usermod指令是用來修改使用者帳號

  14. 變更使用者帳號 • 變更帳號資訊 • chfn • 修改 finger 內顯示的資訊 • chsh • 更換殼層

  15. 新增使用者帳號 • 查詢使用者的群組 • groups指令可用來查詢使用者的群組資訊 • 想知道使用者tom所屬的群組有那些 • [root@fc ~]# groups tom • tom : rd manager • (列出tom的群組為rd,另一群組為manager)

  16. 暫停使用 • 讓帳號暫停使用,使其無法登入 : • 鎖住帳號:passwd -l 或 usermod-L • 修改/etc/passwd中帳號的密碼欄位 • 利用chsh改變該帳號的shell • 鎖住群組 • 指令: gpasswd -l

  17. 練習 • 建立新帳號 user2 預設群組為 engineer • 將 user2 加入下列群組: • cdrom、adm • 以 id 檢查結果 • 如何刪除群組 engineer?

  18. 認識檔案與目錄的權限 • 每個檔案與目錄都擁有各自的權限設定 • 權限的代表的意義 • 使用ls -l指令來觀察輸出結果 • [root@fc ~]# ls -l myfile • -rwxrwxr-- 1 root root 0 2009-02-19 21:09 myfile

  19. 認識檔案與目錄的權限 • 權限字母有r、w、x與-(減號) • r:可讀,可使用如cat編輯器讀取檔案內容,但無法修改。 • w:可寫入,也代表可以修改、新增資料或刪除檔案。 • x:此檔案可被執行 • 減號-:減號代表不允許該權限

  20. 認識檔案與目錄的權限 • 變更檔案權限chmod • 使用chmod指令來達成 • chmod 權限表示法 檔案(對象) • 用三組八進位的方式表示 • 語意描述法

  21. 7-3 認識檔案與目錄的權限 • 權限表示法 • 八進位的方式,r代表4、w代表2、x代表1

  22. 認識檔案與目錄的權限 • 解讀權限 • 644代表rw-r--r--,擁有者可讀寫、群組可讀、其他人可讀 • 755代表rwxr-xr-x,擁有者可讀寫可執行、群組可讀可執行、其他人可讀可執行。 • 660代表rw-rw----,擁有者可讀寫、群組可讀寫、其他人無權限 • 754代表rwxr-xr--,擁有者可讀寫可執行、群組可讀可執行、其他人可讀。

  23. 認識檔案與目錄的權限 • 語意描述法 • 使用幾個字母、加減號與等號組成很方便使用的語意描述法,字母u、g、o、a • u代表user也就是該檔案的擁有者(權限第一組) • g 代表group,該檔案的群組(權限第二組) • o代表other,除了擁有者與群組人員外的其他人(權限第三組) • a代表all,代表所有人,也可說是上述ugo的集合

  24. 認識檔案與目錄的權限 語意描述法

  25. 認識檔案與目錄的權限 • 改變權限 • 語法: chmod 755 檔案 • 為擁有者(u)加上可執行權限(x) • chmod u+x 檔案 • 一次為擁有者(u)與群組(g)加上可讀(r)與可執行(x)權限 • chmod ug+rx 檔案 • 為所有人加上r權限 • chmod a+r 檔案

  26. 認識檔案與目錄的權限 • 目錄的權限 • r: • 代表可以列出該目錄的檔案清單,可以利用ls指令列出該目錄的內容。 • w: • 代表至該目錄中的檔案與目錄都可以異動,如寫入檔案、建立、刪除、與更名檔案與目錄。 • x: • 代表可進入該目錄中,也就是使用cd指令進入該目錄。

  27. 檔案權限 Permission 除去其他帳號(other)全部的權限:$ chmod 770 a.out或$ chmod o-r,o-w,o-x a.out 除去同群組(group)寫與執行的權限:$ chmod 740 a.out或$ chmod g-w,g-x a.out

  28. 檔案權限 Permission • Change mode變更模式:chmod • -v:verbose 列出詳細訊息 • -R:recursive, 遞迴,連同子目錄與子目錄內的檔案與子目錄 • u: the owner 擁有者(user) • g: users in the group 群組(group) • o: users not in group 其他(others) • a: all users 全部 • r: read 讀 • w: write 寫 • x: execute (or access for directories) 執行 • s: set user or group ID on execution,sticky 黏 • t: save program text on swap device,temporary 暫存 chmod [ugoa...][[+-=][rwxst...]...] files

  29. 認識檔案與目錄的權限 • 變更檔案擁有者chown • 使用chown(change owner)將檔案的擁有權變更為其他使用者 • 指令用法: • chown 使用者帳號 檔案或目錄 • 亦可以一併更變擁有群組 • chown 使用者帳號.群組 檔案或目錄 • chown 使用者帳號:群組 檔案或目錄

  30. 變更檔案與目錄擁有者一chown • Change Owner 變更使用者:chown • -R:recursive, 遞迴 • -v:verbose, explain what is being done • Change Group 變更群組:chgrp • -R:recursive, operate on files and directories recursively • -v:verbose, explain what is being done

  31. 認識檔案與目錄的權限 • 變更檔案所屬群組chgrp • 使用chgrp(change group)將檔案的擁有權變更為其他使用者 • 指令用法: • chgrp 群組名稱 檔案或目錄 • 利用chown即可變更檔案的所屬群組,不用多背一個chgrp指令

  32. 檢視 ls -l 的輸出 符號連結 Symbolic Link 擁有者 群組 目錄 chmod +t 或 chmod 1777的結果,任何人都可以在目錄內建立檔案,只有檔案擁有者可以刪除 第三組 rwx 是其他帳號(others)的權限 開暫存檔專用的目錄 第二組 rwx 是同群組帳號(group)的權限 第一組 rwx 是檔案擁有者的權限

  33. SetUID, SetGID, Sticky bit • 當一個檔案具有 SUID 的時候,同時 other 的群組具有可執行的權限,那麼當 others 群組執行該程式的時候將擁有該檔案的 owner 的權限 • 例如: /usr/bin/passwd • 具有 sticky bit 屬性的目錄,其中的檔案或目錄只有檔案擁有者及 root 才有權力刪除 • 例如: /tmp

  34. 保留群組設定 chmod 2770 讓同群組的帳號都有完整的權限 在目錄內建立檔案或目錄時,擁有者是建立者本身,但繼承頂層目錄的群組 確保同一群組的使用者可以互相存取對方的檔案與目錄

  35. 指定檔案的預設權限遮罩一umask • 新建檔案的預設權限是 0666 • 新建目錄的預設權限是 0777 • 若 umask 是 0002 • 新建檔案權限 0666 – 0002 = 0664-rw-rw-r-- • 新建目錄權限 0777 – 0002 = 0775drwxrwxr-x

  36. 練習 建立兩個帳號 student 和 student2 透過練習體會群組權限之設定與使用方式 以下列指令轉換身份成為管理員$ su -(輸入 root 密碼) 以下列指令建立帳號 student(請注意,此時不僅建立 student 帳號,也建立 student 群組,建議觀察 /etc/group 和 /etc/passwd)# adduser student

  37. 練習 以下列指令建立帳號 student2,並且令 student2 加入 student 群組# adduser -G student student2 以下列指令建立目錄# mkdir /home/work 以下列指令變更目錄擁有者# chown student /home/work# chgrp student /home/work

  38. 練習(續) 以下列指令變更目錄權限# chmod 770 /home/work 以下列指令轉換身分成為 student# su - student 以 student 的身分執行下列指令$ cd /home/work$ dd if=/dev/zero of=test1 count=1024$ls -al

  39. 練習(續) 以下列指令轉換身份成為管理員$ su - 以下列指令轉換身分成為 student2# su - student2 以 student2 的身分執行下列指令$ cd /home/work$ dd if=/dev/zero of=test2 count=1024$ ls -al 紀錄畫面顯示 ls -al 的內容

  40. 練習(續) • 以 student2 的身分執行下列指令刪除檔案 test1$ rm test1 • 問題一:刪除成功否? • 為什麼 student2 可以刪除 student 的檔案?

  41. 練習(續) • 以下列指令轉換身份成為管理員$ su - • 以下列指令變更目錄權限# chmod 2770 /home/work# chmod +t /home/work • 以下列指令轉換身分成為 student# su - student • 以 student 的身分執行下列指令$ cd /home/work$ dd if=/dev/zero of=test1 count=1024$ ls -al

  42. 練習(續) 以下列指令轉換身份成為管理員$ su - 以下列指令轉換身分成為 student2# su - student2 以 student2 的身分執行下列指令$ cd /home/work$ dd if=/dev/zero of=test3 count=1024$ ls -al 紀錄畫面顯示 ls -al 的內容

  43. 練習(續) 以 student2 的身分執行下列指令刪除檔案 test1$ rm test1 問題二:刪除成功否? 為什麼? 問題三:student2 兩次以 dd 產生的檔案(test2 和test3),群組是否相同? 為什麼?

  44. 本章結束 Q&A討論時間

More Related