成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何掌握Linux用戶組

系統(tǒng) Linux
在 Linux 系統(tǒng)中用戶組起著重要作用。用戶組提供了一種簡單方法供一組用戶互相共享文件。用戶組也允許系統(tǒng)管理員更加有效地管理用戶權(quán)限,因?yàn)楣芾韱T可以將權(quán)限分配給用戶組而不是逐一分配給單個用戶。

[[271937]]

在 Linux 系統(tǒng)中管理用戶組并不費(fèi)力,但相關(guān)命令可能比你所知的更為靈活。

在 Linux 系統(tǒng)中用戶組起著重要作用。用戶組提供了一種簡單方法供一組用戶互相共享文件。用戶組也允許系統(tǒng)管理員更加有效地管理用戶權(quán)限,因?yàn)楣芾韱T可以將權(quán)限分配給用戶組而不是逐一分配給單個用戶。

盡管通常只要在系統(tǒng)中添加用戶賬戶就會創(chuàng)建用戶組,關(guān)于用戶組如何工作以及如何運(yùn)用用戶組還有很多需要了解的。

一個用戶一個用戶組?

Linux 系統(tǒng)中多數(shù)用戶賬戶被設(shè)為用戶名與用戶組名相同。用戶 jdoe 會被賦予一個名為 jdoe 的用戶組,且成為該新建用戶組的唯一成員。如本例所示,該用戶的登錄名,用戶 id 和用戶組 id 在新建賬戶時會被添加到 /etc/passwd/etc/group 文件中:

  1. $ sudo useradd jdoe
  2. $ grep jdoe /etc/passwd
  3. jdoe:x:1066:1066:Jane Doe:/home/jdoe:/bin/sh
  4. $ grep jdoe /etc/group
  5. jdoe:x:1066:

這些文件中的配置使系統(tǒng)得以在文本(jdoe)和數(shù)字(1066)這兩種用戶 id 形式之間互相轉(zhuǎn)換—— jdoe 就是 1006,且 1006 就是 jdoe

分配給每個用戶的 UID(用戶 id)和 GID(用戶組 id)通常是一樣的,并且順序遞增。若上例中 Jane Doe 是最近添加的用戶,分配給下一個新用戶的用戶 id 和用戶組 id 很可能都是 1067。

GID = UID?

UID 和 GID 可能不一致。例如,如果你用 groupadd 命令添加一個用戶組而不指定用戶組 id,系統(tǒng)會分配下一個可用的用戶組 id(在本例中為 1067)。下一個添加到系統(tǒng)中的用戶其 UID 會是 1067 而 GID 則為 1068。

你可以避免這個問題,方法是添加用戶組的時候指定一個較小的用戶組 id 而不是接受默認(rèn)值。在下面的命令中我們添加一個用戶組并提供一個 GID,這個 GID 小于用于用戶賬戶的 GID 取值范圍。

  1. $ sudo groupadd -g 500 devops

創(chuàng)建賬戶時你可以指定一個共享用戶組,如果這樣對你更合適的話。例如你可能想把新來的開發(fā)人員加入同一個 DevOps 用戶組而不是一人一個用戶組。

  1. $ sudo useradd -g staff bennyg
  2. $ grep bennyg /etc/passwd
  3. bennyg:x:1064:50::/home/bennyg:/bin/sh

主要用戶組和次要用戶組

用戶組實(shí)際上有兩種:主要用戶組primary group次要用戶組secondary group

主要用戶組是保存在 /etc/passwd 文件中的用戶組,該用戶組在賬戶創(chuàng)建時配置。當(dāng)用戶創(chuàng)建一個文件時,用戶的主要用戶組與此文件關(guān)聯(lián)。

  1. $ whoami
  2. jdoe
  3. $ grep jdoe /etc/passwd
  4. jdoe:x:1066:1066:John Doe:/home/jdoe:/bin/bash
  5. ^
  6. |
  7. +-------- 主要用戶組
  8. $ touch newfile
  9. $ ls -l newfile
  10. -rw-rw-r-- 1 jdoe jdoe 0 Jul 16 15:22 newfile
  11. ^
  12. |
  13. +-------- 主要用戶組

用戶一旦擁有賬戶之后被加入的那些用戶組是次要用戶組。次要用戶組成員關(guān)系在 /etc/group 文件中顯示。

  1. $ grep devops /etc/group
  2. devops:x:500:shs,jadep
  3. ^
  4. |
  5. +-------- shs jadep 的次要用戶組

/etc/group 文件給用戶組分配組名稱(例如 500 = devops)并記錄次要用戶組成員。

首選的準(zhǔn)則

每個用戶是他自己的主要用戶組成員,并可以成為任意多個次要用戶組成員,這樣的一種準(zhǔn)則允許用戶更加容易地將個人文件和需要與同事分享的文件分開。當(dāng)用戶創(chuàng)建一個文件時,用戶所屬的不同用戶組的成員不一定有訪問權(quán)限。用戶必須用 chgrp 命令將文件和次要用戶組關(guān)聯(lián)起來。

哪里也不如自己的家目錄

添加新賬戶時一個重要的細(xì)節(jié)是 useradd 命令并不一定為新用戶添加一個家目錄/home家目錄。若你只有某些時候想為用戶添加家目錄,你可以在 useradd 命令中加入 -m 選項(xiàng)(可以把它想象成“安家”選項(xiàng))。

  1. $ sudo useradd -m -g devops -c "John Doe" jdoe2

此命令中的選項(xiàng)如下:

  • -m 創(chuàng)建家目錄并在其中生成初始文件
  • -g 指定用戶歸屬的用戶組
  • -c 添加賬戶描述信息(通常是用戶的姓名)

若你希望總是創(chuàng)建家目錄,你可以編輯 /etc/login.defs 文件來更改默認(rèn)工作方式。更改或添加 CREATE_HOME 變量并將其設(shè)置為 yes

  1. $ grep CREATE_HOME /etc/login.defs
  2. CREATE_HOME yes

另一種方法是用自己的賬戶設(shè)置別名從而讓 useradd 一直帶有 -m 選項(xiàng)。

  1. $ alias useradd=’useradd -m

確保將該別名添加到你的 ~/.bashrc 文件或類似的啟動文件中以使其永久生效。

深入了解 /etc/login.defs

下面這個命令可列出 /etc/login.defs 文件中的全部設(shè)置。下面的 grep 命令會隱藏所有注釋和空行。

  1. $ cat /etc/login.defs | grep -v "^#" | grep -v "^$"
  2. MAIL_DIR /var/mail
  3. FAILLOG_ENAB yes
  4. LOG_UNKFAIL_ENAB no
  5. LOG_OK_LOGINS no
  6. SYSLOG_SU_ENAB yes
  7. SYSLOG_SG_ENAB yes
  8. FTMP_FILE /var/log/btmp
  9. SU_NAME su
  10. HUSHLOGIN_FILE .hushlogin
  11. ENV_SUPATH PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
  12. ENV_PATH PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
  13. TTYGROUP tty
  14. TTYPERM 0600
  15. ERASECHAR 0177
  16. KILLCHAR 025
  17. UMASK 022
  18. PASS_MAX_DAYS 99999
  19. PASS_MIN_DAYS 0
  20. PASS_WARN_AGE 7
  21. UID_MIN 1000
  22. UID_MAX 60000
  23. GID_MIN 1000
  24. GID_MAX 60000
  25. LOGIN_RETRIES 5
  26. LOGIN_TIMEOUT 60
  27. CHFN_RESTRICT rwh
  28. DEFAULT_HOME yes
  29. CREATE_HOME yes <===
  30. USERGROUPS_ENAB yes
  31. ENCRYPT_METHOD SHA512

注意此文件中的各種設(shè)置會決定用戶 id 的取值范圍以及密碼使用期限和其他設(shè)置(如 umask)。

如何顯示用戶所屬的用戶組

出于各種原因用戶可能是多個用戶組的成員。用戶組成員身份給與用戶對用戶組擁有的文件和目錄的訪問權(quán)限,有時候這種工作方式是至關(guān)重要的。要生成某個用戶所屬用戶組的清單,用 groups 命令即可。

  1. $ groups jdoe
  2. jdoe : jdoe adm admin cdrom sudo dip plugdev lpadmin staff sambashare

你可以鍵入不帶任何參數(shù)的 groups 命令來列出你自己的用戶組。

如何添加用戶至用戶組

如果你想添加一個已有用戶至別的用戶組,你可以仿照下面的命令操作:

  1. $ sudo usermod -a -G devops jdoe

你也可以指定逗號分隔的用戶組列表來添加一個用戶至多個用戶組:

  1. $ sudo usermod -a -G devops,mgrs jdoe

參數(shù) -a 意思是“添加”,-G 指定用戶組列表。

你可以編輯 /etc/group 文件將用戶名從用戶組成員名單中刪除,從而將用戶從用戶組中移除。usermod 命令或許也有個選項(xiàng)用于從用戶組中刪除某個成員。

  1. fish:x:16:nemo,dory,shark
  2. |
  3. V
  4. fish:x:16:nemo,dory

提要

添加和管理用戶組并非特別困難,但長遠(yuǎn)來看配置賬戶時的一致性可使這項(xiàng)工作更容易些。

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2014-08-14 14:18:05

Linux用戶

2017-12-06 09:11:48

Linux用戶組管理用戶

2010-03-09 13:23:51

Linux用戶組管理方

2009-06-22 14:18:39

IT

2010-11-02 14:29:11

DB2用戶組

2020-03-23 17:58:29

LinuxSSH

2011-03-04 11:51:00

FileZilla用戶組

2018-01-02 10:06:49

Linux修改用戶名修改家目錄

2018-09-30 15:05:01

Linux用戶組命令

2012-05-22 13:32:42

Linux用戶

2011-03-03 09:42:13

PureFTPd

2010-02-24 13:46:54

Fedora FTP

2010-01-13 16:32:23

2013-06-03 16:34:25

中國系統(tǒng)與軟件度量用戶

2011-08-02 18:25:04

Web遠(yuǎn)程管理服務(wù)器

2010-02-07 13:45:29

Ubuntu orac

2018-07-20 14:20:24

Linux用戶組管理員

2011-09-14 14:24:43

自由軟件日

2011-05-25 10:37:03

Oracle數(shù)據(jù)庫安全

2011-01-05 09:59:17

點(diǎn)贊
收藏

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

主站蜘蛛池模板: 亚州精品天堂中文字幕 | av手机免费在线观看 | 欧美一级免费看 | 日本一区二区三区在线观看 | 新超碰97| 精品欧美一区二区在线观看欧美熟 | 国产精品视频入口 | 日本欧美国产在线 | 欲色av | 人人射人人插 | 国产精品久久久久久久7777 | 成人av免费播放 | 国产成人精品一区二区三区网站观看 | 超碰3| 综合二区 | 夜夜骚| 日本涩涩网 | av激情影院 | 黄色一级免费观看 | 久久精品—区二区三区 | 成人精品在线观看 | 拍戏被cao翻了h承欢 | 国产一区中文字幕 | 成人av电影免费在线观看 | 久久精品国产一区二区电影 | 日韩精品中文字幕一区二区三区 | 久久男人 | 一区二区三区四区毛片 | 亚洲成人国产综合 | 中文字幕爱爱视频 | 久久精品成人热国产成 | 欧美日韩精品久久久免费观看 | 国产激情免费视频 | 日韩欧美在线视频 | 99精品久久| 中文字幕一区在线观看视频 | 成年人在线观看 | 一区亚洲 | 国产黄色网址在线观看 | 亚洲最大的成人网 | 免费激情av|