溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Linux下怎么新增用戶、指定用戶組、家目錄、獲取sudo權(quán)限

發(fā)布時(shí)間:2023-05-04 10:43:53 來源:億速云 閱讀:123 作者:zzz 欄目:開發(fā)技術(shù)

這篇“Linux下怎么新增用戶、指定用戶組、家目錄、獲取sudo權(quán)限”文章的知識(shí)點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Linux下怎么新增用戶、指定用戶組、家目錄、獲取sudo權(quán)限”文章吧。

Linux新增用戶、指定用戶組、家目錄、獲取sudo權(quán)限

//系統(tǒng)環(huán)境
# cat /etc/redhat-release 
CentOS Linux release 7.5.1804 (Core)
# uname -r
3.10.0-862.el7.x86_64
//SELinux 設(shè)置
# setenforce 0
# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
//校準(zhǔn)時(shí)間的定時(shí)任務(wù)
# crontab -l
01 */3 * * * /usr/sbin/ntpdate time1.aliyun.com && clock -w
//useradd命令的man信息
useradd - 創(chuàng)建一個(gè)新用戶或更新默認(rèn)新用戶信息


useradd [選項(xiàng)] 登錄

useradd -D

useradd -D [選項(xiàng)]


如果使用時(shí)不帶 -D 選項(xiàng),useradd 命令使用命令行上指定的值和系統(tǒng)的默認(rèn)值創(chuàng)建一個(gè)新用戶。根據(jù)命令行選項(xiàng),useradd
命令也會(huì)更新系統(tǒng)文件和創(chuàng)建新用戶的主目錄并復(fù)制初始文件。

默認(rèn)上,也會(huì)為用戶創(chuàng)建組 (察看 -g, -N, -U,和 USERGROUPS_ENAB)。


useradd 可以使用的選項(xiàng)有:

-b, --base-dirBASE_DIR
    The default base directory for the system if -dHOME_DIR is not specified.  BASE_DIR is concatenated with
    the account name to define the home directory. The BASE_DIR must exist otherwise the home directory cannot
    be created.

    如果選項(xiàng)沒有指定,useradd 將使用 /etc/default/useradd 中的 HOME 變量,或者默認(rèn)的 /home。

-c, --commentCOMMENT
    任何字符串。通常是關(guān)于登錄的簡(jiǎn)短描述,當(dāng)前用于用戶全名。

-d, --home-dir HOME_DIR
    The new user will be created using HOME_DIR as the value for the user's login directory. The default is to
    append the LOGIN name to BASE_DIR and use that as the login directory name.

-D, --defaults
    看下邊,“更改默認(rèn)值”子節(jié)。

-e, --expiredateEXPIRE_DATE
    用戶賬戶將被禁用的日期。日期以 YYYY-MM-DD 格式指定。

    如果沒有指定,useradd 將使用 /etc/default/useradd 中 EXPIRE
    變量指定的默認(rèn)過期日期,或者一個(gè)空字符串(不過期)。

-f, --inactiveINACTIVE
    密碼過期后,賬戶被徹底禁用之前的天數(shù)。0 表示立即禁用,-1 表示禁用這個(gè)功能。

    如果未指定,useradd 將使用 /etc/default/useradd 中的 INACTIVE 指定的默認(rèn)禁用周期,或者默認(rèn)為 -1。

-g, --gidGROUP
    用戶初始登陸組的組名或號(hào)碼。組名必須已經(jīng)存在。組號(hào)碼必須指代已經(jīng)存在的組。

    如果沒有指定, useradd 的行為將依賴于 /etc/login.defs 文件中的 USERGROUPS_ENAB 參數(shù)。如果此參數(shù)設(shè)置為了
    yes (或者在命令行上指定了 -U/--user-group),將會(huì)為用戶創(chuàng)建一個(gè)組,組名和登錄名相同。如果選項(xiàng)設(shè)置為了 no
    (或者在命令行上指定了 -N/--no-user-group),useradd 會(huì)把新用戶的主組設(shè)置為 /etc/default/useradd 中 GROUP
    變量指定的值,再或者默認(rèn)是 100。

-G, --groupsGROUP1[,GROUP2,...[,GROUPN]]]
    用戶還屬于的附加組列表。每個(gè)組都用逗號(hào)隔開,沒有中間的空格。這里的組受到了 -g
    選項(xiàng)給定的組同樣的限制。默認(rèn)上,用戶只屬于初始組。

-h, --help
    現(xiàn)實(shí)幫助信息并退出。

-k, --skelSKEL_DIR
    骨架目錄,包含使用 useradd 創(chuàng)建用戶時(shí),要復(fù)制到用戶主目錄中的文件和目錄。

    這個(gè)選項(xiàng)只有在指定 -m (或 --create-home) 選項(xiàng)時(shí)才有效。

    如果此項(xiàng)沒有設(shè)置,骨架目錄使用 /etc/default/useradd 中的 SKEL 的變量或默認(rèn)為 /etc/skel。

    如果可以,也復(fù)制 ACL 和擴(kuò)展屬性。

-K, --keyKEY=VALUE
    默認(rèn)覆蓋 /etc/login.defs (UID_MIN, UID_MAX, UMASK, PASS_MAX_DAYS 及其它)。 例如:-K PASS_MAX_DAYS=-1
    可以用于創(chuàng)建一個(gè)密碼不會(huì)過期的系統(tǒng)賬戶,即使系統(tǒng)賬戶沒有密碼??梢灾付ǘ鄠€(gè) -K 選項(xiàng),如:-K UID_MIN=100-K
    UID_MAX=499

-l, --no-log-init
    不要將用戶添加到最近登錄和登錄失敗數(shù)據(jù)庫。

    默認(rèn)上,最近登錄和登錄失敗中用戶的條目會(huì)被重置,以避免重新使用先前刪除的用戶的條目。

-m, --create-home
    如果不存在,則創(chuàng)建用戶主目錄。骨架目錄中的文件和目錄(可以使用 -k 選項(xiàng)指定),將會(huì)復(fù)制到主目錄。

    默認(rèn)上,如果沒有指定此選項(xiàng)并且 CREATE_HOME 沒有啟用,不會(huì)創(chuàng)建主目錄。

    The directory where the user's home directory is created must exist and have proper SELinux context and
    permissions. Otherwise the user's home directory cannot be created or accessed.

-M, --no-create-home
    Do not create the user's home directory, even if the system wide setting from /etc/login.defs
    (CREATE_HOME) is set to yes.

-N, --no-user-group
    不要?jiǎng)?chuàng)建同名組,而是將用戶添加到 -g 選項(xiàng)指定的組,或根據(jù) /etc/default/useradd 中的 GROUP 變量。

    如果沒有指定 -g, -N 和 -U 選項(xiàng),默認(rèn)行為由 /etc/login.defs 中的 USERGROUPS_ENAB 變量指定。

-o, --non-unique
    允許使用重復(fù)的 UID 創(chuàng)建用戶賬戶。

    此選項(xiàng)只有和 -u 選項(xiàng)組合使用才有效。

-p, --passwordPASSWORD
    加密了的密碼,就像 crypt(3) 的返回值。默認(rèn)為禁用密碼。

    注

    您應(yīng)該確保密碼符合系統(tǒng)的密碼政策。

-r, --system
    創(chuàng)建一個(gè)系統(tǒng)賬戶。

    System users will be created with no aging information in /etc/shadow, and their numeric identifiers are
    chosen in the SYS_UID_MIN-SYS_UID_MAX range, defined in /etc/login.defs, instead of UID_MIN-UID_MAX (and
    their GID counterparts for the creation of groups).

    注意:useradd 不會(huì)為這種用戶創(chuàng)建主目錄,無論 /etc/login.defs (CREATE_HOME)
    中是的默認(rèn)設(shè)置是怎樣。如果想為要?jiǎng)?chuàng)建的系統(tǒng)賬戶創(chuàng)建主目錄,需要指定 -m 選項(xiàng)。

-R, --rootCHROOT_DIR
    Apply changes in the CHROOT_DIR directory and use the configuration files from the CHROOT_DIR directory.

-s, --shellSHELL
    用戶的登錄 shell 名。默認(rèn)為留空,讓系統(tǒng)根據(jù) /etc/default/useradd 中的 SHELL 變量選擇默認(rèn)的登錄
    shell,默認(rèn)為空字符串。

-u, --uidUID
    用戶 ID 的數(shù)字值。此值必須為唯一的,除非使用了 -o 選項(xiàng)。此值必須非負(fù),默認(rèn)使用大于等于
    UID_MIN,且大于任何其他用戶 ID 最小值。

    請(qǐng)參考 -r 選項(xiàng)和 UID_MAX 的描述。

-U, --user-group
    創(chuàng)建一個(gè)和用戶同名的組,并將用戶添加到組中。

    如果沒有指定 -g, -N 和 -U 選項(xiàng),默認(rèn)行為由 /etc/login.defs 中的 USERGROUPS_ENAB 變量指定。

-Z, --selinux-userSEUSER
    用戶登陸的 SELinux 用戶。默認(rèn)為留空,這會(huì)造成系統(tǒng)選擇默認(rèn)的 SELinux 用戶。


只帶 -D 選項(xiàng)使用時(shí),useradd 將顯示當(dāng)前的默認(rèn)值。-D 和其它選項(xiàng)配合使用時(shí),useradd
將為指定的選項(xiàng)更新默認(rèn)值。有效的“更改默認(rèn)值”選項(xiàng)有:

-b, --base-dirBASE_DIR
    新用戶主目錄的路徑前綴。如果創(chuàng)建新賬戶時(shí),沒有使用 -d 選項(xiàng),用戶的名稱將會(huì)綴在 BASE_DIR
    的后邊形成新用戶的主目錄名。

    這個(gè)選擇在 /etc/default/useradd 中設(shè)置 HOME 選項(xiàng)。

-e, --expiredateEXPIRE_DATE
    禁用此用戶賬戶的日期。

    此選項(xiàng)在 /etc/default/useradd 中設(shè)置 EXPIRE 變量。

-f, --inactiveINACTIVE
    密碼過期到賬戶被禁用之前的天數(shù)。

    這個(gè)選項(xiàng)在 /etc/default/useradd 中設(shè)置 INACTIVE 變量。

-g, --gidGROUP
    新用戶初始組的組名或 ID (使用了 -N/--no-user-group 或者 /etc/login.defs 中的變量 USERGROUPS_ENAB 設(shè)置為 no
    時(shí))。給出的組必須存在,并且數(shù)字組 ID 必須有一個(gè)已經(jīng)存在的項(xiàng)。

    這個(gè)選項(xiàng)在 /etc/default/useradd 中設(shè)置 GROUP 變量。

-s, --shellSHELL
    新用戶的登錄 shell 名。

    這個(gè)選項(xiàng)在 /etc/default/useradd 設(shè)置 SHELL 變量。


系統(tǒng)管理員負(fù)責(zé)將默認(rèn)的用戶文件放在 /etc/skel/ 目錄中(或者命令行上、/etc/default/useradd中指定的任何其它目錄)。

CAVEATS
您可能不能想 NIS 組或 LDAP 組添加用戶。這只能在相應(yīng)服務(wù)器上進(jìn)行。

相似地,如果用戶名已經(jīng)存在于外部用戶數(shù)據(jù)庫中,比如 NIS 或 LDAP,useradd 將拒絕創(chuàng)建用戶賬戶的請(qǐng)求。

用戶名不能超過 32 個(gè)字符長(zhǎng)。


在 /etc/login.defs 中有如下配置變量,可以用來更改此工具的行為:

CREATE_HOME (boolean)
    指示是否應(yīng)該為新用戶默認(rèn)創(chuàng)建主目錄。

    此設(shè)置并不應(yīng)用到系統(tǒng)用戶,并且可以使用命令行覆蓋。

GID_MAX (number), GID_MIN (number)
    useradd,groupadd 或 newusers 創(chuàng)建的常規(guī)組的組 ID 的范圍。

    GID_MIN 和 GID_MAX 的默認(rèn)值分別是 1000 和 60000。

MAIL_DIR (string)
    郵箱目錄。修改或刪除用戶賬戶時(shí)需要處理郵箱,如果沒有指定,將使用編譯時(shí)指定的默認(rèn)值。

MAIL_FILE (string)
    定義用戶郵箱文件的位置(相對(duì)于主目錄)。

MAIL_DIR and MAIL_FILE 變量由 useradd,usermod 和 userdel 用于創(chuàng)建、移動(dòng)或刪除用戶郵箱。

如果 MAIL_CHECK_ENAB 設(shè)置為 yes,它們也被用于定義 MAIL 環(huán)境變量。

MAX_MEMBERS_PER_GROUP (number)
    每個(gè)組條目的最大成員數(shù)。達(dá)到最大值時(shí),在 /etc/group 開始一個(gè)新條目(行)(使用同樣的名稱,同樣的密碼,同樣的
    GID)。

    默認(rèn)值是 0,意味著組中的成員數(shù)沒有限制。

    此功能(分割組)允許限制組文件中的行長(zhǎng)度。這對(duì)于確保 NIS 組的行比長(zhǎng)于 1024 字符。

    如果要強(qiáng)制這個(gè)限制,可以使用 25。

    注意:分割組可能不受所有工具的支持(甚至在 Shadow 工具集中)。您不應(yīng)該使用這個(gè)變量,除非真的需要。

PASS_MAX_DAYS (number)
    一個(gè)密碼可以使用的最大天數(shù)。如果密碼比這舊,將會(huì)強(qiáng)迫更改密碼。如果不指定,就假定為 -1,這會(huì)禁用這個(gè)限制。

PASS_MIN_DAYS (number)
    兩次更改密碼時(shí)間的最小間隔。將會(huì)拒絕任何早于此的更改密碼的嘗試。如果不指定,假定為 -1,將會(huì)禁用這個(gè)限制。

PASS_WARN_AGE (number)
    密碼過期之前給出警告的天數(shù)。0 表示只有只在過期的當(dāng)天警告,負(fù)值表示不警告。如果沒有指定,不會(huì)給警告。

SYS_GID_MAX (number), SYS_GID_MIN (number)
    useradd、groupadd 或 newusers 創(chuàng)建的系統(tǒng)組的組 ID 的范圍。

    SYS_GID_MIN 和 SYS_GID_MAX 的默認(rèn)值分別是 101 和 GID_MIN-1。

SYS_UID_MAX (number), SYS_UID_MIN (number)
    useradd 或 newusers 創(chuàng)建的系統(tǒng)用戶的用戶 ID 的范圍。

    SYS_UID_MIN 和 SYS_UID_MAX 的默認(rèn)值分別是 101 和 UID_MIN-1。

UID_MAX (number), UID_MIN (number)
    useradd 或 newusers 創(chuàng)建的普通用戶的用戶 ID 的范圍。

    UID_MIN 和 UID_MAX 的默認(rèn)值分別是 1000 和 60000。

UMASK (number)
    文件模式創(chuàng)建掩碼初始化為此值。如果沒有指定,掩碼初始化為 022。

    useradd 和 newusers 使用此掩碼設(shè)置它們創(chuàng)建的用戶主目錄的模式。

    也被 login 用于指定用戶的初始 umask。注意,此掩碼可以被用戶的 GECOS 行覆蓋(當(dāng)設(shè)置了 QUOTAS_ENAB
    時(shí)),也可以被帶 K 指示符的 limits(5) 定義的限制值覆蓋。

USERGROUPS_ENAB (boolean)
    如果 uid 和 gid 相同,用戶名和主用戶名也相同,使非 root 組的組掩碼位和屬主位相同 (如:022 -> 002, 077 ->
    007)。

    如果設(shè)置為 yes,如果組中沒有成員了,userdel 將移除此用戶組,useradd 創(chuàng)建用戶時(shí),也會(huì)創(chuàng)建一個(gè)同名的默認(rèn)組。


/etc/passwd
    用戶賬戶信息。

/etc/shadow
    安全用戶賬戶信息。

/etc/group
    組賬戶信息。

/etc/gshadow
    安全組賬戶信息。

/etc/default/useradd
    賬戶創(chuàng)建的默認(rèn)值。

/etc/skel/
    包含默認(rèn)文件的目錄。

/etc/login.defs
    Shadow 密碼套件配置。


useradd 可以返回如下值:

0
    成功

1
    無法更新密碼文件

2
    無效的命令語法

3
    給了選項(xiàng)一個(gè)無效的參數(shù)

4
    UID 已經(jīng)使用 (且沒有 -o)

6
    指定的組不存在

9
    用戶名已被使用

10
    無法更新組文件

12
    無法創(chuàng)建主目錄

14
    can't update SELinux user mapping
//新增用戶testuser賦予root權(quán)限 
//方法一: 修改 /etc/sudoers 文件,找到下面一行,把前面的注釋(#)去掉
## Allows people in group wheel to run all commands
%wheel    ALL=(ALL)    ALL
//然后修改用戶,使其從屬于root組(wheel),命令如下:
#usermod -g root testuser
//修改完畢,現(xiàn)在可以用testuser帳號(hào)登錄,然后用命令 su - ,即可獲得root權(quán)限進(jìn)行操作。

//方法二(推薦使用): 修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示:
## Allow root to run any commands anywhere
root    ALL=(ALL)     ALL
testuser   ALL=(ALL)     ALL
//修改完畢,現(xiàn)在可以用testuser帳號(hào)登錄,然后用命令 su - ,即可獲得root權(quán)限進(jìn)行操作。

//方法三: 修改 /etc/passwd 文件,找到如下行,把UID修改為 0 ,如下所示:
testuser:x:500:500:testuser:/home/user/testuser:/bin/bash
//修改后如下
testuser:x:0:500:testuser:/home/user/testuser:/bin/bash
//保存,用testuser賬戶登錄后,直接獲取的就是root帳號(hào)的權(quán)限。
//創(chuàng)建admin用戶并獲取sudo權(quán)限
//創(chuàng)建用戶屬組
# groupadd operation
//查看驗(yàn)證
# tail -n 5 /etc/group
//創(chuàng)建用戶admin 指定組 operation 指定附加組 root 指定家目錄
# useradd -g operation -G root -d /home/user/admin admin
//修改admin目錄權(quán)限
# chmod -R 766 /home/user/admin
//修改admin用戶密碼
# passwd admin
//修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,強(qiáng)制保存退出,如下所示:
## Allow root to run any commands anywhere
root    ALL=(ALL)     ALL
admin	ALL=(ALL)	ALL

//admin用戶如需修改沒有權(quán)限的文件需要在命令前添加sudo,如
$ sudo touch text.txt

Linux用戶的家目錄——經(jīng)典干貨

使用過Linux的伙伴兒們都知道Linux為每個(gè)用戶都提供對(duì)應(yīng)的家目錄,路徑為 /home/用戶名(管理員不同,他的家目錄是/root),并且家目錄下附送文件(文件夾)若干。

張伙伴兒?jiǎn)枺喝绾尾榭醇夷夸洠?/p>

登錄后進(jìn)入終端,直接輸入pwd命令“顯示當(dāng)前路徑”,顯示的路徑就是用戶的家目錄。

Linux下怎么新增用戶、指定用戶組、家目錄、獲取sudo權(quán)限

王伙伴兒?jiǎn)枺喝绾尾榭醇夷夸浵掠心男┪募ㄎ募A)?

當(dāng)然是Linux下最常用的命令ls啦。

Linux下怎么新增用戶、指定用戶組、家目錄、獲取sudo權(quán)限

Desktop Document … …都是藍(lán)色的,都是文件夾。

李伙伴兒?jiǎn)枺杭夷夸浵轮挥羞@些默認(rèn)建立的文件夾嗎?

當(dāng)然不是,輸入ls -al,a是全部的意思,l是列表的意思,將全部文件(文件夾)按列表的方式顯示。

Linux下怎么新增用戶、指定用戶組、家目錄、獲取sudo權(quán)限

白色的是文件標(biāo)記字符為- 藍(lán)色的是文件夾標(biāo)記字符為d (此外l 鏈接文件,b存儲(chǔ)接口設(shè)備,c穿行端口設(shè)備)

趙伙伴兒?jiǎn)枺何募杏悬c(diǎn)啥意思?

以點(diǎn)“.”開頭的文件(文件夾)為隱藏文件(文件夾),這為什么就是只輸入ls時(shí)他們沒有顯示出來。

劉伙伴兒?jiǎn)枺阂粋€(gè)點(diǎn) 兩個(gè)點(diǎn) 是啥意思?

一個(gè)點(diǎn)“.”表示當(dāng)前目錄,兩個(gè)點(diǎn)“…”表示上一級(jí)目錄(此外“~”表示家目錄)

伙伴兒們,重要的4個(gè)文件.bash_history .bash_logout .bashrc .profile

.bash_history:保存本次開機(jī)前執(zhí)行過的全部命令,(本次開機(jī)執(zhí)行的命令當(dāng)前不會(huì)被記錄)

Linux下怎么新增用戶、指定用戶組、家目錄、獲取sudo權(quán)限

.profile:bash啟動(dòng)時(shí)執(zhí)行此文件,其實(shí)啟動(dòng)文檔有3個(gè).bash_profile,.bash_login,.profile,優(yōu)先執(zhí)行 ~/.bash_profile,找不到時(shí),再執(zhí)行 ~/.bash_login ,還找不到,才執(zhí)行 ~/.profile,此文件定義命令的路徑 (PATH) 與環(huán)境變量,可以添加自定義命令,做啟動(dòng)時(shí)的工作。

Linux下怎么新增用戶、指定用戶組、家目錄、獲取sudo權(quán)限

.bashrc:每次執(zhí)行命令時(shí),都執(zhí)行此文件,因此可將命令別名、路徑添加自定義命令到此文檔。

Linux下怎么新增用戶、指定用戶組、家目錄、獲取sudo權(quán)限

.bash_logout:注銷bash時(shí),執(zhí)行此文件,可以添加自定義命令做退出時(shí)的工作。

Linux下怎么新增用戶、指定用戶組、家目錄、獲取sudo權(quán)限

以上就是關(guān)于“Linux下怎么新增用戶、指定用戶組、家目錄、獲取sudo權(quán)限”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對(duì)大家有幫助,若想了解更多相關(guān)的知識(shí)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI