Linux

如何在 Linux 中更改使用者的預設組?

  • July 27, 2017

作為 Linux 管理的新手,我對以下命令有點困惑:

useradd
usermod
groupadd
groupmod

我剛剛讀完 Linux/Unix 管理員手冊中的使用者管理書,但有些東西還是有點模糊。

基本上useradd看起來很簡單:

useradd -c "David Hilbert" -d /home/math/hilbert -g faculty -G famous -m -s /bin/sh hilbert

我可以用 username 添加“David Hilbert” hilbert,設置他的預設目錄、shell 和組。我認為這-g是他的主要/預設組,-G也是他的其他組。

所以這些是我的下一個問題:

  1. 如果這些組不存在faculty,此命令是否仍然有效?famous它會創造它們嗎?
  2. 如果不是,我應該使用什麼命令來創建新組?
  3. 如果我刪除了使用者hilbert並且這些組中沒有其他使用者,他們還會存在嗎?我應該刪除它們嗎?
  4. 執行上述useradd命令後,如何將 David 從famous組中刪除,並將他的主要組重新分配給hilbert尚不存在的組?

usermod命令將允許您更改使用者的主要組、輔助組或許多其他屬性。-g開關控制主要組。

對於您的其他問題…

  1. 如果您指定一個組,在階段groupname期間不存在useradd,您將收到錯誤 - useradd: unknown group groupname
  2. groupadd命令創建新組。
  3. 如果您刪除其中包含的所有使用者,該組將保留。您不一定要刪除空組。
  4. 通過創建hilbertgroupadd hilbert。然後使用 . 移動 David 的主要組usermod -g hilbert hilbert。(請注意,第一個hilbert是組名,第二個hilbert是使用者名。這在您將使用者移動到具有不同名稱的組的情況下很重要)

不過,您在這裡可能會使事情複雜化。在許多 Linux 發行版中,simpleuseradd hilbert將創建與主使用者hilbert同名的使用者和組。-G我會添加使用開關一起指定的補充組。

引用自:https://unix.stackexchange.com/questions/26675