亚游wwwag8com
你好,游客 登录 注册
背景:
阅读新闻

Linux useradd命令添加新用户图文详解

[日期:2019-05-18] 来源:Linux社区  作者:Linux [字体: ]

亚游wwwag8com,  27英寸的BenQ EW2775ZH主打亲子共读、日常办公,一样拥有BI智能调光、智能过滤蓝光和不闪屏三重爱眼技术。内建环境光感应器,搭配内部算法,无论居家光源如何改变,都能提供舒适的亮度与色温,并确保连续画面切换时也有清晰细节。其它方面,EW2775ZH采用AMVA+超广视角液晶面板,具有分辨率、4ms极速响应,以及高达3000:1的对比度。

“画报”是一种大众化的宣传手段,以其图文并茂、形象直观、通俗易懂的特点,深受各族干部群众喜爱。目前,自治区党委宣传部已印发通知,要求各地各单位把《新疆画报》专刊作为鲜活教材,配合正在开展的“两学一做”学习教育、“访民情 惠民生 聚民心”驻村工作、“民族团结一家亲”冬季大宣传活动等,在抓好党员干部学习教育的同时,广泛开展面向基层群众的面对面宣讲、入户宣传,以及面向流动人口的宣传教育等活动,在全区范围积极营造学习宣传贯彻党的十八届六中全会精神,认真贯彻落实自治区第九次党代会精神的浓厚氛围。 报告:亚马逊投资对提振就业率作用有限  香港《南华早报》14日报道说,有在华盛顿的分析人士认为,美国已经作出决定,本周稍后或者下周,美国就会进行巡航,而有关行动很可能引发中国的抗议。有美国官员向媒体表示,在美澳外长防长“2+2”会议上,有讨论巡航人工岛12海里以内的问题。该名官员称:“我们在南海的部分区域的确是与澳洲一起行动的。我们正在寻求方法,扩大我们一起行动的机会。”这名官员声称:“挑战12海里以内是我们正在考虑的多个行动选项之一。我们正等包括白宫在内的多个部门作出决定。”

在Linux 系统中,可以使用 useradd 命令新建用户,此命令的基本格式如下:

[root@localhost ~]#useradd [选项] 用户名

该命令常用的选项及各自的含义,如表 1 所示。

表 1 useradd命令常用选项

选项含义
-u UID 手工指定用户的 UID,注意 UID 的范围(不要小于 500)。
-d 主目录 手工指定用户的主目录。主目录必须写绝对路径,而且如果需要手工指定主目录,则一定要注意权限;
-c 用户说明 手工指定/etc/passwd文件中各用户信息中第 5 个字段的描述性内容,可随意配置;
-g 组名 手工指定用户的初始组。一般以和用户名相同的组作为用户的初始组,在创建用户时会默认建立初始组。一旦手动指定,则系统将不会在创建此默认的初始组目录。
-G 组名 指定用户的附加组。我们把用户加入其他组,一般都使用附加组;
-s shell 手工指定用户的登录 Shell,默认是 /bin/bash;
-e 曰期 指定用户的失效曰期,格式为 "YYYY-MM-DD"。也就是 /etc/shadow 文件的第八个字段;
-o 允许创建的用户的 UID 相同。例如,执行 "useradd -u 0 -o usertest" 命令建立用户 usertest,它的 UID 和 root 用户的 UID 相同,都是 0;
-m 建立用户时强制建立用户的家目录。在建立系统用户时;
-r 创建系统用户,也就是 UID 在 1~499 之间,供系统程序使用的用户。由于系统用户主要用于运行系统所需服务的权限配置,因此系统用户的创建默认不会创建主目录。

其实,系统已经帮我们规定了非常多的默认值,在没有特殊要求下,无需使用任何选项即可成功创建用户。例如:

linuxidc@linuxidc:~/linuxidc.com$ sudo useradd linuxmi

Linux useradd命令添加新用户图文详解

linuxidc@linuxidc:~/linuxidc.com$ sudo useradd -m linuxidc.com

Linux useradd命令添加新用户图文详解

此行命令就表示创建 linuxmi 普通用户。

不要小看这条简单的命令,它会完成以下几项操作:

1. 在 /etc/passwd 文件中创建一行与 linuxmi 用户相关的数据:

linuxidc@linuxidc:~/linuxidc.com$ grep "linuxmi" /etc/passwd
linuxmi:x:1001:1001::/home/linuxmi:/bin/sh

可以看到,用户的 UID 是从 1001 开始计算的。同时默认指定了用户的家目录为 /home/linuxmi/,用户的登录 Shell 为 /bin/sh。

2. 在 /etc/shadow 文件中新增了一行与 linuxmi 用户密码相关的数据:

linuxidc@linuxidc:~/linuxidc.com$ sudo grep "linuxmi" /etc/shadow
linuxmi:!:18034:0:99999:7:::

Linux useradd命令添加新用户图文详解

当然,这个用户还没有设置密码,所以密码字段是 "!!",代表这个用户没有合理密码,不能正常登录。同时会按照默认值设定时间字段,例如密码有效期有 99999 天,距离密码过期 7 天系统会提示用户“密码即将过期”等。

3. 在 /etc/group 文件中创建一行与用户名一模一样的群组:

linuxidc@linuxidc:~/linuxidc.com$ grep "linuxmi" /etc/group
linuxmi:x:1001:

Linux useradd命令添加新用户图文详解

该群组会作为新建用户的初始组。

4. 在 /etc/gshadow 文件中新增一行与新增群组相关的密码信息:

linuxidc@linuxidc:~/linuxidc.com$ sudo grep "linuxmi" /etc/gshadow
linuxmi:!::

Linux useradd命令添加新用户图文详解

当然,我们没有设定组密码,所以这里没有密码,也没有组管理员。

5. 默认创建用户的主目录和邮箱:

drwxr-xr-x 2 linuxidc.com linuxidc.com 4096 5月  18 05:03 /home/linuxidc.com/
linuxidc@linuxidc:~/linuxidc.com$ ll /var/spod/mail/linuxidc.com

注意文件的权限,要让 linuxidc.com 用户拥有相应的权限。

6. 将 /etc/skel 目录中的配置文件复制到新用户的主目录中(至于为什么,学完本节内容就会明白)。

可以看到,useradd 命令创建用户的过程,其实就是修改了与用户相关的几个文件或目录,对这些文件的详细介绍见 亚游wwwag8com/wwwd35clinuxidcd35ccom/Linux/2019-05/158718.htm

那useradd 命令的这些默认值保存哪里,能否手工修改呢?

答案是肯定的。useradd 命令在添加用户时参考的默认值文件主要有两个,分别是 /etc/default/useradd 和 /etc/login.defs。

/etc/default/useradd 文件

首先,使用 Vim 命令查看 /etc/default/useradd 文件中包含哪些内容:

linuxidc@linuxidc:~/linuxidc.com$ cat /etc/default/useradd
# Default values for useradd(8)
#
# The SHELL variable specifies the default login shell on your
# system.
# Similar to DHSELL in adduser. However, we use "sh" here because
# useradd is a low level utility and should be as general
# as possible
SHELL=/bin/sh
#
# The default group for users
# 100=users on Debian systems
# Same as USERS_GID in adduser
# This argument is used when the -n flag is specified.
# The default behavior (when -n and -g are not specified) is to create a
# primary user group with the same name as the user being added to the
# system.
# GROUP=100
#
# The default home directory. Same as DHOME for adduser
# HOME=/home
#
# The number of days after a password expires until the account
# is permanently disabled
# INACTIVE=-1
#
# The default expire date
# EXPIRE=
#
# The SKEL variable specifies the directory containing "skeletal" user
# files; in other words, files such as a sample .profile that will be
# copied to the new user's home directory when it is created.
# SKEL=/etc/skel
#
# Defines whether the mail spool should be created while
# creating the account
# CREATE_MAIL_SPOOL=yes

Linux useradd命令添加新用户图文详解

另外,也可以直接通过命令进行查看:

linuxidc@linuxidc:~/linuxidc.com$ useradd -D
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/sh
SKEL=/etc/skel
CREATE_MAIL_SPOOL=no

Linux useradd命令添加新用户图文详解

-D 选项指的就是查看新建用户的默认值。

表 2 对此文件中的各项做了详细的解释。

表 2 /etc/default/useradd 文件内容

参数含义
GR0UP=100 这个选项用于建立用户的默认组,也就是说,在添加每个用户时,用户的初始组就是 GID 为 100 的这个用户组。但 亚游wwwag8comCentOS 并不是这样的,而是在添加用户时会自动建立和用户名相同的组作为此用户的初始组。也就是说这个选项并不会生效。

Linux 中默认用户组有两种机制:一种是私有用户组机制,系统会创建一个和用户名相同的用户组作为用户的初始组;另一种是公共用户组机制,系统用 GID 是 100 的用户组作为所有新建用户的初始组。目前我们采用的是私有用户组机制。
HOME=/home 指的是用户主目录的默认位置,所有新建用户的主目录默认都在 /home/下,刚刚新建的 linuxidc.com 用户的主目录就为 /home/linuxidc.com/。
INACTIVE=-1 指的是密码过期后的宽限天数,也就是 /etc/shadow 文件的第七个字段。这里默认值是 -1,代表所有新建立的用户密码永远不会失效。
EXPIRE= 表示密码失效时间,也就是 /etc/shadow 文件的第八个字段。默认值是空,代表所有新建用户没有失效时间,永久有效。
SHELL=/bin/bash 表示所有新建立的用户默认 Shell 都是 /bin/bash。
SKEL=/etc/skel 在创建一个新用户后,你会发现,该用户主目录并不是空目录,而是有 .bash_profile、.bashrc 等文件,这些文件都是从 /etc/skel 目录中自动复制过来的。因此,更改 /etc/skel 目录下的内容就可以改变新建用户默认主目录中的配置文件信息。
CREATE_MAIL_SPOOL=yes 指的是在root下给新建用户建立邮箱,默认是创建。也就是说,对于所有的新建用户,系统都会新建一个邮箱,放在 /var/spool/mail/ 目录下,和用户名相同。

注意,此文件中各选项值的修改方式有 2 种,一种是通过 Vim 文本编辑器手动修改,另一种就是使用文章开头介绍的 useradd 命令,不过所用的命令格式发生了改变:

useradd -D [选项] 参数

用此命令修改 /etc/default/useradd 文件,可使用的选项如表 3 所示。

useradd -D 命令可用选项

选项+参数含义
-b HOME 设置所创建的主目录所在的默认目录,只需用目录名替换 HOME 即可,例如 useradd -D -b /gargae。
-e EXPIRE 设置密码失效时间,EXPIRE 参数应使用 YYYY-MM-DD 格式,例如 useradd -D -e 2010-05-18。
-f INACTIVE 设置密码过期的宽限天数,例如 useradd -D -f 7。
-g GROUP 设置新用户所在的初始组,例如 useradd -D -g bear。
-s SHELL 设置新用户的默认 shell,SHELL 必须是完整路径,例如 useradd -D -s /usr/bin/csh。

例如,要修改新用户的默认 Shell 为 /bin/csh,可以使用如下方式:

root@linuxidc:/home/linuxidc/linuxidc.com# useradd -D -s /bin/csh
root@linuxidc:/home/linuxidc/linuxidc.com# useradd -D
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/csh
SKEL=/etc/skel
CREATE_MAIL_SPOOL=no

Linux useradd命令添加新用户图文详解

通过 /etc/default/useradd 文件,大家仅能修改有关新用户的部分默认??,有一些内容并没有在这个文件中,例如修改用户默认的 UID、GID,以及对用户密码的默认设置,对这些默认值的修改就需要在 /etc/login.defs 文件中进行。

有关 /etc/login.defs 文件,可阅读《Linux新建用户配置文件 /etc/login.defs 详解》一文,见 亚游wwwag8com/wwwd35clinuxidcd35ccom/Linux/2019-05/158732.htm

其实,useradd 命令创建用户的过程是这样的,系统首先读取 /etc/login.defs 和 /etc/default/useradd,根据这两个配置文件中定义的规则添加用户,也就是向 /etc/passwd、/etc/group、/etc/shadow、/etc/gshadow 文件中添加用户数据,接着系统会自动在 /etc/default/useradd 文件设定的目录下建立用户主目录,最后复制 /etc/skel 目录中的所有文件到此主目录中,由此,一个新的用户就创建完成了。

当然,如果你能彻底掌握 useradd 命令创建用户的整个过程,完全可以手动创建用户。

更多Linux命令相关信息见Linux命令大全 专题页面 /wwwd35clinuxidcd35ccom/topicnews.aspx?tid=16

Linux公社的RSS地址/wwwd35clinuxidcd35ccom/rssFeed.aspx

本文永久更新链接地址/wwwd35clinuxidcd35ccom/Linux/2019-05/158731.htm

linux
相关资讯       useradd  useradd命令 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款
央视:上港下半场过于保守 傅欢状态能力踢不上可惜 马拉松比赛中 我们到底应该采取什么配速策略? 外媒:中兴通讯可能失去安卓操作系统使用许可 5位教育厅长详解政府工作报告里的教育“红利” 亚汇中国:日银按兵不动日元暴跌 等候今晚FED决议 花点时间CEO朱月怡:供应链很重 但轻巧的事已不存在 家里着火男子哭着不肯逃:20万私房钱还藏在天花板 滴滴回应“司机提给500摸下女乘客”:司机被永久封号 新京报评殡葬改革:流传千年未必是陋习 心存敬畏 突发|韩羽球名将郑在成突发心脏病去世 年仅35岁 石佛邓肯还有个外号叫梅林?纹身和游戏的故事 安瓦尔获释在即称不着急当总理 将发表公开演说
梅西百货遭摩根士丹利降级 中国供应商受到关注 拒领慰安妇赔偿金 韩国拟用本国预算置换日方出资 印尼120名恐怖分子向受害者道歉 被指已痛改前非 [新浪彩票]29日竞彩盘口剖析:松本山雅退盘难胜 印度首都空气污染水平在排灯节期间超标41倍 牛汇:美储官员暗示贸易战或拖缓加息 美元还能淡定吗 阿联数据创新高实属无奈?没帮手他只能自己扛 苹果CEO库克:智能手机市场虽有波动但依旧健康 申花发上海德比海报:梦想承载荣耀!共续申城荣光 长安SUV发动机功率被指不足 车主:涉嫌消费欺诈 陈希除中央书记处书记和中组部长外 再有兼职 甘肃检察机关依法对唐兴和涉嫌受贿案提起公诉
中央巡视原食药监总局:机构变了问题不放整改不软 印度援建不丹首都至印边境道路完工 耗资2.83亿元 百度成立智能生活事业群组 加码智能硬件布局 巧合?广岛联赛杯入场观众7777人 球队却在77分钟丢… 村干部肇事致人死亡逃逸 还“热心”配合交警走访 环球时报:中美舆论都不应使劲夸大己方的胜利 高德刘振飞:在网约车市场起撮合作用 赚钱不是目的 【欧股收盘】欧元区经常帐表现靓丽 攀升至多年新高 拜仁巨头:英超1将确定回归 夏窗没考虑再买人 美股创20个月最大跌幅 对A股影响较小 奇牛国际:美国1月就业数据表现强劲 美指跌势暂缓 虚拟货币交易平台网站迎新一轮监管:发现1家关闭1家 \"张衡一号\"飞向太空:人类能否交出\"地震预测\"… 亚游wwwag8com