自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

在Linux中把用戶添加到組的四個方法

系統(tǒng) Linux
對于 Linux 系統(tǒng)中的每一個用戶和組,它都有惟一的數(shù)字標(biāo)識號。它被稱為 用戶 ID(UID)和組 ID(GID)。組的主要目的是為組的成員定義一組特權(quán)。它們都可以執(zhí)行特定的操作,但不能執(zhí)行其他操作。

[[263311]]

 Linux 組是用于管理 Linux 中用戶帳戶的組織單位。對于 Linux 系統(tǒng)中的每一個用戶和組,它都有惟一的數(shù)字標(biāo)識號。它被稱為 用戶 ID(UID)和組 ID(GID)。組的主要目的是為組的成員定義一組特權(quán)。它們都可以執(zhí)行特定的操作,但不能執(zhí)行其他操作。

Linux 中有兩種類型的默認組。每個用戶應(yīng)該只有一個 主要組primary group 和任意數(shù)量的 次要組secondary group。

  • 主要組: 創(chuàng)建用戶帳戶時,已將主要組添加到用戶。它通常是用戶的名稱。在執(zhí)行諸如創(chuàng)建新文件(或目錄)、修改文件或執(zhí)行命令等任何操作時,主要組將應(yīng)用于用戶。用戶的主要組信息存儲在 /etc/passwd 文件中。
  • 次要組: 它被稱為次要組。它允許用戶組在同一組成員文件中執(zhí)行特定操作。例如,如果你希望允許少數(shù)用戶運行 Apache(httpd)服務(wù)命令,那么它將非常適合。

你可能對以下與用戶管理相關(guān)的文章感興趣。

可以使用以下四種方法實現(xiàn)。

  • usermod:修改系統(tǒng)帳戶文件,以反映在命令行中指定的更改。
  • gpasswd:用于管理 /etc/group/etc/gshadow。每個組都可以有管理員、成員和密碼。
  • Shell 腳本:可以讓管理員自動執(zhí)行所需的任務(wù)。
  • 手動方式:我們可以通過編輯 /etc/group 文件手動將用戶添加到任何組中。

我假設(shè)你已經(jīng)擁有此操作所需的組和用戶。在本例中,我們將使用以下用戶和組:user1、user2user3,另外的組是 mygroupmygroup1。

在進行更改之前,我希望檢查一下用戶和組信息。詳見下文。

我可以看到下面的用戶與他們自己的組關(guān)聯(lián),而不是與其他組關(guān)聯(lián)。

  1. # id user1
  2. uid=1008(user1) gid=1008(user1) groups=1008(user1)
  3.  
  4. # id user2
  5. uid=1009(user2) gid=1009(user2) groups=1009(user2)
  6.  
  7. # id user3
  8. uid=1010(user3) gid=1010(user3) groups=1010(user3)

我可以看到這個組中沒有關(guān)聯(lián)的用戶。

  1. # getent group mygroup
  2. mygroup:x:1012:
  3.  
  4. # getent group mygroup1
  5. mygroup1:x:1013:

方法 1:使用 usermod 命令

usermod 命令修改系統(tǒng)帳戶文件,以反映命令行上指定的更改。

如何使用 usermod 命令將現(xiàn)有的用戶添加到次要組或附加組?

要將現(xiàn)有用戶添加到輔助組,請使用帶有 -g 選項和組名稱的 usermod 命令。

語法:

  1. # usermod [-G] [GroupName] [UserName]

如果系統(tǒng)中不存在給定的用戶或組,你將收到一條錯誤消息。如果沒有得到任何錯誤,那么用戶已經(jīng)被添加到相應(yīng)的組中。

  1. # usermod -a -G mygroup user1

讓我使用 id 命令查看輸出。是的,添加成功。

  1. # id user1
  2. uid=1008(user1) gid=1008(user1) groups=1008(user1),1012(mygroup)

如何使用 usermod 命令將現(xiàn)有的用戶添加到多個次要組或附加組?

要將現(xiàn)有用戶添加到多個次要組中,請使用帶有 -G 選項的 usermod 命令和帶有逗號分隔的組名稱。

語法:

  1. # usermod [-G] [GroupName1,GroupName2] [UserName]

在本例中,我們將把 user2 添加到 mygroupmygroup1 中。

  1. # usermod -a -G mygroup,mygroup1 user2

讓我使用 id 命令查看輸出。是的,user2 已成功添加到 myGroupmyGroup1 中。

  1. # id user2
  2. uid=1009(user2) gid=1009(user2) groups=1009(user2),1012(mygroup),1013(mygroup1)

如何改變用戶的主要組?

要更改用戶的主要組,請使用帶有 -g 選項和組名稱的 usermod 命令。

語法:

  1. # usermod [-g] [GroupName] [UserName]

我們必須使用 -g 改變用戶的主要組。

  1. # usermod -g mygroup user3

讓我們看看輸出。是的,已成功更改?,F(xiàn)在,顯示user3 主要組是 mygroup 而不是 user3

  1. # id user3
  2. uid=1010(user3) gid=1012(mygroup) groups=1012(mygroup)

方法 2:使用 gpasswd 命令

gpasswd 命令用于管理 /etc/group/etc/gshadow。每個組都可以有管理員、成員和密碼。

如何使用 gpasswd 命令將現(xiàn)有用戶添加到次要組或者附加組?

要將現(xiàn)有用戶添加到次要組,請使用帶有 -M 選項和組名稱的 gpasswd 命令。

語法:

  1. # gpasswd [-M] [UserName] [GroupName]

在本例中,我們將把 user1 添加到 mygroup 中。

  1. # gpasswd -M user1 mygroup

讓我使用 id 命令查看輸出。是的,user1 已成功添加到 mygroup 中。

  1. # id user1
  2. uid=1008(user1) gid=1008(user1) groups=1008(user1),1012(mygroup)

如何使用 gpasswd 命令添加多個用戶到次要組或附加組中?

要將多個用戶添加到輔助組中,請使用帶有 -M 選項和組名稱的 gpasswd 命令。

語法:

  1. # gpasswd [-M] [UserName1,UserName2] [GroupName]

在本例中,我們將把 user2user3 添加到 mygroup1 中。

  1. # gpasswd -M user2,user3 mygroup1

讓我使用 getent 命令查看輸出。是的,user2user3 已成功添加到 myGroup1 中。

  1. # getent group mygroup1
  2. mygroup1:x:1013:user2,user3

如何使用 gpasswd 命令從組中刪除一個用戶?

要從組中刪除用戶,請使用帶有 -d 選項的 gpasswd 命令以及用戶和組的名稱。

語法:

  1. # gpasswd [-d] [UserName] [GroupName]

在本例中,我們將從 mygroup 中刪除 user1 。

  1. # gpasswd -d user1 mygroup
  2. Removing user user1 from group mygroup

方法 3:使用 Shell 腳本

基于上面的例子,我知道 usermod 命令沒有能力將多個用戶添加到組中,可以通過 gpasswd 命令完成。但是,它將覆蓋當(dāng)前與組關(guān)聯(lián)的現(xiàn)有用戶。

例如,user1 已經(jīng)與 mygroup 關(guān)聯(lián)。如果要使用 gpasswd 命令將 user2user3 添加到 mygroup 中,它將不會按預(yù)期生效,而是對組進行修改。

如果要將多個用戶添加到多個組中,解決方案是什么?

兩個命令中都沒有默認選項來實現(xiàn)這一點。

因此,我們需要編寫一個小的 shell 腳本來實現(xiàn)這一點。

如何使用 gpasswd 命令將多個用戶添加到次要組或附加組?

如果要使用 gpasswd 命令將多個用戶添加到次要組或附加組,請創(chuàng)建以下 shell 腳本。

創(chuàng)建用戶列表。每個用戶應(yīng)該在單獨的行中。

  1. $ cat user-lists.txt
  2. user1
  3. user2
  4. user3

使用以下 shell 腳本將多個用戶添加到單個次要組。

  1. vi group-update.sh
  2.  
  3. #!/bin/bash
  4. for user in `cat user-lists.txt`
  5. do
  6. usermod -a -G mygroup $user
  7. done

設(shè)置 group-update.sh 文件的可執(zhí)行權(quán)限。

  1. # chmod + group-update.sh

最后運行腳本來實現(xiàn)它。

  1. # sh group-update.sh

讓我看看使用 getent 命令的輸出。 是的,user1、user2user3 已成功添加到 mygroup 中。

  1. # getent group mygroup
  2. mygroup:x:1012:user1,user2,user3

如何使用 gpasswd 命令將多個用戶添加到多個次要組或附加組?

如果要使用 gpasswd 命令將多個用戶添加到多個次要組或附加組中,請創(chuàng)建以下 shell 腳本。

創(chuàng)建用戶列表。每個用戶應(yīng)該在單獨的行中。

  1. $ cat user-lists.txt
  2. user1
  3. user2
  4. user3

創(chuàng)建組列表。每組應(yīng)在單獨的行中。

  1. $ cat group-lists.txt
  2. mygroup
  3. mygroup1

使用以下 shell 腳本將多個用戶添加到多個次要組。

  1. #!/bin/sh
  2. for user in `more user-lists.txt`
  3. do
  4. for group in `more group-lists.txt`
  5. do
  6. usermod -a -G $group $user
  7. done

設(shè)置 group-update-1.sh 文件的可執(zhí)行權(quán)限。

  1. # chmod +x group-update-1.sh

最后運行腳本來實現(xiàn)它。

  1. # sh group-update-1.sh

讓我看看使用 getent 命令的輸出。 是的,user1user2user3 已成功添加到 mygroup 中。

  1. # getent group mygroup
  2. mygroup:x:1012:user1,user2,user3

此外,user1、user2user3 已成功添加到 mygroup1 中。

  1. # getent group mygroup1
  2. mygroup1:x:1013:user1,user2,user3

方法 4:在 Linux 中將用戶添加到組中的手動方法

我們可以通過編輯 /etc/group 文件手動將用戶添加到任何組中。

打開 /etc/group 文件并搜索要更新用戶的組名。最后將用戶更新到相應(yīng)的組中。

  1. # vi /etc/group
責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2023-11-14 22:16:36

2023-07-02 08:48:45

2011-11-15 14:52:39

Mac OSWindows域

2021-05-26 14:39:27

FedoraLinux企業(yè)域

2024-06-04 14:27:42

2010-08-31 15:14:55

DB2域賬戶

2020-02-11 12:54:34

Linux日志文件消息

2021-09-22 10:30:54

UbuntuLinux命令

2022-01-12 15:50:24

JavaScript開發(fā)循環(huán)

2009-06-10 08:34:17

Linux編程開發(fā)

2022-03-20 07:07:23

MySQL數(shù)據(jù)庫命令行工具

2018-08-10 09:22:20

Windows 10Windows照片

2020-11-20 10:30:48

云計算SaaS技術(shù)

2010-02-03 09:47:34

Linux smb服務(wù)

2021-08-14 09:48:02

ReentrantLock多線編程

2020-08-13 10:29:55

項目管理項目經(jīng)理CIO

2022-05-04 12:44:57

Python編程語言

2023-05-24 10:04:36

微軟ChatGPT人工智能

2021-10-29 11:05:34

JavaScript代碼字符串

2023-01-13 23:39:51

Linux掛載驅(qū)動器
點贊
收藏

51CTO技術(shù)棧公眾號