跳至主要內容
CJCJ Kuo

全站文章搜尋

輸入關鍵字即刻在靜態索引中快速搜尋
↑↓ 導航 · Enter 選取前往獨立搜尋頁 →
Linux 中的主要群組與附加群組:有什麼差異?usermod 又該如何使用?
資訊技術••約 3 分鐘•796 字

Linux 中的主要群組與附加群組:有什麼差異?usermod 又該如何使用?

本文目錄共 5 節

在 Linux 系統中,群組是一種管理使用者權限及資源訪問的方式,每個使用者都可以屬於一個主要群組和多個附加群組,而這兩種群組的用途各不相同。

本文將介紹主要群組與附加群組之間的差異,以及它們在系統管理中的應用。

主要群組

主要群組是每個使用者在 Linux 系統中的預設群組,當使用者創建文件或執行操作時,這些操作的屬性將歸屬於該主要群組。例如,當使用者創建一個新文件時,該文件的群組屬性會設為這個主要群組。

每個使用者只能有一個主要群組。在創建新使用者帳號時,系統通常會自動建立一個與該使用者同名的群組作為其主要群組。例如,使用者 alice 的主要群組也可能叫做 alice,這樣該使用者創建的文件就會屬於 alice 群組。

附加群組

與主要群組不同,附加群組是用來為使用者賦予額外訪問權限的。每個使用者可以屬於多個附加群組,這些群組讓使用者能夠訪問其他群組所擁有的資源或文件。

例如,alice 除了擁有主要群組 alice 外,還可能被加入 developers 和 designers 這些附加群組,讓她能夠訪問這些群組擁有的特定專案或資源。附加群組的設置使得權限管理更加靈活,尤其是在多使用者協作的環境中。

如何使用 usermod 命令修改群組

在 Linux 中,可以使用 usermod 命令來修改使用者的群組屬性,其中 -g 和 -G 是兩個常見的參數:

  • **-g** (小寫 g):用來指定使用者的主要群組。
    例如:usermod -g groupname username這條命令會將 username 的主要群組改為 groupname。

  • **-G** (大寫 G):用來指定使用者的附加群組。
    例如:usermod -G group1,group2 username 這條命令會將 username 加入 group1 和 group2 群組。需要注意的是,這樣做會覆蓋使用者目前的所有附加群組。
    因此,如果想要保留現有的附加群組並新增新的群組,可以使用 -aG 選項:usermod -aG groupname username 這樣可以保留原有的附加群組,並添加新的群組。

如何查看使用者的群組

要查看某使用者所屬的群組,可以使用以下命令:

groups username

這會列出該使用者的主要群組和所有附加群組,方便系統管理員快速了解使用者的權限狀況。

總結

在 Linux 中,主要群組與附加群組各自扮演著不同的角色:

  • 主要群組是每個使用者的預設群組,與使用者創建的文件和資源所有權相關。
  • 附加群組則提供了更靈活的方式,讓使用者能夠訪問多個群組擁有的資源,便於協作和資源共享。

透過合理地設定主要群組和附加群組,可以更有效地管理系統資源的訪問控制,並提高多使用者環境中的安全性和協作性。

查看此系列所有文章 →
CJ Kuo (郭仕杰)

CJ Kuo (郭仕杰)

創辦人兼主筆

熱愛軟體架構、DevOps、系統調優與新技術探索的工程實踐者,也會寫寫投資和生活。

獨立技術專刊推播

訂閱技術電子報

有新文章發布時寄送到您的信箱,不發送垃圾信。