linux新增用户和删除用户
新增用户
新增用户命令:useradd
参数:
|
参数 |
说明 |
|
-u |
指定UID,也就是自定义UID |
|
-g |
知道GID,也就是初始化用户组,/etc/passwd文件中的第四个字段。 |
|
-G |
后面接用户组的名字,也就是指定其他用户组。给用户指定要加入的非初始化用户组。 |
|
-M |
强制!不要创建用户主文件夹。(系统有默认值) |
|
-m |
强制!要创建用户主文件夹。(一般默认账号) |
|
-c |
用户的说明,/etc/passwd的第五个字段。 |
|
-d |
指定用户的主文件夹,一定要写绝对路径 |
|
-r |
创建一个系统账号,这个账号UID限制在1~499。 |
|
-s |
后跟一个shell脚本,没有这系统默认/bin/bash。这个还是很关键的,在作特殊账号时会使用。 |
|
-e |
后跟日期,格式为“YYYY-MM-DD”,/etc/shadow的第八个字段。 |
|
-f |
指定密码是否失效,/etc/shadow的第七个字段。0为马上失效-1为永远不失效。 |
使用useradd命令:

已创建一个为tiger的用户。使用grep命令查询相关的文件。
Tiger的UID为502.
主文件夹为/home/tiger
初始化用户组为tiger组。
且密码是无效。
说下useradd命令的默认设置,存放在useradd文件中/etc/default/useradd

GROUP=100新增的用户默认的用户组为GID为100的user用户组内。
刚才创建tiger用户是发现用户组为GID为502的tiger用户组内。这是为什么,因为用户组创建机制有2种:
私有用户组机制:系统在创建账号是会给用户一个相同名字的用户组作为初始化用组。这样新创建的账号就是独立的用户独立的用户组。相对于权限上更安全。
公共用户组机制:创建用户时系统默认用户的初始化用户组为100的user组内,这样每个新建的用户都存在与user组内。这样不安全,同一个组内的用户就相互共享了数据。
HOME=/home:用户创建主文件的基目录。
INACTIVE=-1:密码的过期设置。/etc/shadow文件里第七字段。创建用户后多久密码过期,-1时永远有效。0立即失效,其他非负数字,就是多少天后失效,例如10,就是10后失效。
EXPIRE= 账号失效日期。/etc/shadow文件里的第八个字段。一般不设置。
SHELL=/bin/bash:默认使用的shell程序文件名。
SKEL=/etc/skel:用户主文件夹参考基准目录。也就是在创建主文件夹是的模板。用户创建时将/etc/skel里的文件内容作为用户主文件夹的模板,给复制到用户的主文件夹中。当我们要在每个新建用户里添加一个文件夹或文件时,就可以添加到skel文件夹里作为模板。
CREATE_MAIL_SPOOL=yes:创建用户的mailbox。创建用户的邮件箱。邮件箱的地址:/var/spool/mail/tiger
UID/GID与密码参数的参考文件:/etc/login.defs
使用cat命令查看文件内容如下:
每个值的描述已经相当清楚。如果英文看不懂就去百度吧。
#
# Please note that the parameters in this configuration file control the
# behavior of the tools from the shadow-utils component. None of these
# tools uses the PAM mechanism, and the utilities that use PAM (such as the
# passwd command) should therefore be configured elsewhere. Refer to
# /etc/pam.d/system-auth for more information.
#
# *REQUIRED*
# Directory where mailboxes reside, _or_ name of file, relative to the
# home directory. If you _do_ define both, MAIL_DIR takes precedence.
# QMAIL_DIR is for Qmail
#
#QMAIL_DIR Maildir
MAIL_DIR /var/spool/mail
#MAIL_FILE .mail
# Password aging controls:
#
# PASS_MAX_DAYS Maximum number of days a password may be used.
# PASS_MIN_DAYS Minimum number of days allowed between password changes.
# PASS_MIN_LEN Minimum acceptable password length.
# PASS_WARN_AGE Number of days warning given before a password expires.
#
PASS_MAX_DAYS 99999
PASS_MIN_DAYS 0
PASS_MIN_LEN 5
PASS_WARN_AGE 7
#
# Min/max values for automatic uid selection in useradd
#
UID_MIN 500
UID_MAX 60000
#
# Min/max values for automatic gid selection in groupadd
#
GID_MIN 500
GID_MAX 60000
#
# If defined, this command is run when removing a user.
# It should remove any at/cron/print jobs etc. owned by
# the user to be removed (passed as the first argument).
#
#USERDEL_CMD /usr/sbin/userdel_local
#
# If useradd should create home directories for users by default
# On RH systems, we do. This option is overridden with the -m flag on
# useradd command line.
#
CREATE_HOME yes
# The permission mask is initialized to this value. If not specified,
# the permission mask will be initialized to 022.
UMASK 077
# This enables userdel to remove user groups if no members exist.
#
USERGROUPS_ENAB yes
# Use SHA512 to encrypt password.
ENCRYPT_METHOD SHA512
Useradd命令参考的/etc/default/userdd;/etc/skel/*;/etc/login.defs
创建好用户后那密码怎么办啊!
使用passwd命令:
参数:
|
参数 |
说明 |
|
--stdin |
通过一个管道命令的数据,作为密码:例子:echo “abcd1112” | passwd --stdin tiger |
|
-l |
Lock的意思。将/etc/shadow文件里的第二个字段前加! |
|
-u |
Unlock的意思。 |
|
-S |
列出密码相关的参数。显示/etc/shadow里的相关信息。 |
|
-n |
多久不可修改密码,/etc/shadow里的第四个字段。 |
|
-x |
多久必须修改密码,/etc/shadow 里的第五个字段。 |
|
-w |
密码过期前几天警告,/etc/shadow里的第六给字段。 |
|
-i |
密码失效日期,/etc/shadow里的第七个字段。 |
我们来使用下passwd:
查看密码参数的命令chage:
参数
|
参数 |
说明 |
|
-l |
列出账号的详细密码参数 |
|
-d |
最近一次更改密码日期,格式“YYYY-MM-DD”,/etc/shadow的第三字段。 |
|
-E |
账号失效日期,格式YYYY-MM-DD” /etc/shadow的第八字段。 |
|
-I |
密码失效日期,/etc/shadow的第七字段。 |
|
-m |
密码最短保留天数,/etc/shadow的第四字段。 |
|
-M |
密码多久修改,/etc/shadow的第五字段。 |
|
-W |
密码失效前警告日期,/etc/shadow的第六字段。 |
使用下chage命令:
[root@localhost etc]# chage -l tiger
Last password change : Jun 17, 2017
Password expires : never
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
如果在创建用户时,设置了错误的操作怎么办?
使用usermod命令来解决:
参数:
|
参数 |
说明 |
|
-c |
账号说明,/etc/passwd的第五字段 |
|
-d |
账号的主文件夹变更,/etc/passwd的第六字段 |
|
-e |
账号失效日期,/etc/shadow的第八字段 |
|
-f |
密码过期的宽限天数,/etc/shadow的第七字段 |
|
-g |
初始化用户组,/etc/passwd的第四字段,GID |
|
-G |
修改用户的支持用户组,/etc/group的第四个字段 |
|
-a |
与-G合用,添加次要用户组的支持,但不是设置。 |
|
-l |
修改账号的名称,/ect/passwd的第一字段 |
|
-s |
修改shell脚本,后跟实际的脚本路径。/etc/passwd的第七字段 |
|
-u |
修改UID,/etc/passwd的第三字段 |
|
-L |
将用户密码锁定,修改/etc/shadow的第二个字段。前加入! |
|
-U |
将密码列的内容去掉 |
使用下usermod:
[root@localhost etc]# usermod -c "OK" tiger
[root@localhost etc]# grep tiger /etc/passwd
tiger:x:502:502:OK:/home/tiger:/bin/bash
第五列变成了OK。
删除用户,最简单了。
使用userdel命令:
参数:-r 用户的主文件夹一起删除。
-r一般不要用,因为有时候用户都是被禁用的,可能还需要将用户重新恢复使用。
而且userdel也不建议使用,因为如果想让用户失效,直接使用失效密码的方式就可以。
使用下userdel:
[root@localhost etc]# userdel tiger
[root@localhost etc]# grep tiger /etc/passwd
[root@localhost etc]#
删除用户后,就已经在/etc/passwd文件中找不到tiger的信息。
linux新增用户和删除用户的更多相关文章
- useradd adduser linux创建用户、设置密码、修改用户、删除用户
创建用户.设置密码.修改用户.删除用户: useradd testuser 创建用户testuser passwd testuser 给已创建的用户testuser设置密码 说明:新创建的用户会在/h ...
- Linux中加入用户、删除用户时新手可能遇到的问题
Linux中加入用户.删除用户时新手可能遇到的问题 1.创建新用户后切换到新用户:No directory, logging in with HOME=/ 加入用户 #sudo us ...
- Linux下创建和删除用户
在Linux下创建用户和删除用户,必须在root用户下,如果你当前不是用根用户登录,你可以打开终端,输入"su root"命令,再输入根口令,就可以进入root用户模式下,如下所示 ...
- Linux创建用户、设置密码、修改用户、删除用户命令
与大家分享下Linux系统中创建用户.设置密码.修改用户.删除用户的命令,希望对你有所帮助. useradd testuser 创建用户testuserpasswd testuser 给已创建的用 ...
- linux创建用户、设置密码、修改用户、删除用户
创建用户.设置密码.修改用户.删除用户:useradd testuser 创建用户testuserpasswd testuser 给已创建的用户testuser设置密码说明:新创建的用户会在/home ...
- Linux中添加用户与删除用户
注意:添加用户和删除用户需要root来执行. 添加用户 用useradd命令,例如: # useradd -d/home/tom -s/bin/bash -u1000 tom 这样就添加了新用户to ...
- MySQL添加用户、删除用户与授权
MySql中添加用户,新建数据库,用户授权,删除用户,修改密码(注意每行后边都跟个;表示一个命令语句结束): 1.新建用户 1.1 登录MYSQL: @>mysql -u root -p @&g ...
- MySql安装与MySQL添加用户、删除用户与授权
1.安装MySql 目前MySQL有两种形式的文件,一个是msi格式,一个是zip格式的.msi格式的直接点击setup.exe就好,按照步骤进行.但是很多人下了zip格式的解压发现没有s ...
- MySql添加用户,新建数据库,用户授权,删除用户,修改密码
转自:http://www.cnblogs.com/fly1988happy/archive/2011/12/15/2288554.html MySql中添加用户,新建数据库,用户授权,删除用户,修改 ...
- MySql5.7创建数据库与添加用户、删除用户及授权
MySql安装启动成功后(不会的可以查看上篇MySql5.7安装及配置),首先我们需要创建数据库,然后创建一个用户去操作这个数据库: 一.创建数据库 在MySql命令行中输入: create data ...
随机推荐
- hdu 1811 Rank of Tetris(拓扑,并查集)
题意:略 分析:排序先按rating,若相同,则按rp.考虑到每个人的rp均不同,所以rating相同的人必然可以排序.那么只需要考虑rating不同的集合了. 大小关系可以用有向边表示,而大小关系 ...
- 基于JT/T 1078协议设计和开发部标视频服务器
交通部与2016年10月份推出了JT/T 1078-2016标准,全称是<道路运输车辆卫星定位系统视频通信协议>.该标准将改变以往两客一危车辆的视频监控设备通信协议都是设备厂商私有协议的局 ...
- Cocos2D-X2.2.3学习笔记5(UI系统)
前言: 1.字体 2.标签 3.菜单 4.进度条 5.计时器 Cocos2d-x中得UI控件没有几个.在游戏制作的过程中也不须要什么UI.即使有些复杂的UI,那都得我们自己来封装的.比方.关卡选择. ...
- dedecms增加自定义表单管理员
打开\dede\inc\grouplist.txt 添加 >>自定义表单 >f_List>列出表单 >f_New>新建表单 >f_Edit>编辑表单 & ...
- 用代码构造PreferenceScreen
在PreferenceFregment中构造界面,简单省事的方法就是使用findPreference然后在xml里把UI写好.在代码中动态的添加UI内容也是需要的.核心代码是: PreferenceS ...
- Jmeter查看QPS和响应时间随着时间的变化曲线
以下两个插件提供测试结果,扩展图表显示 --- Response Times Over Time --- Transactions per Second 1.打开 https://jmeter-plu ...
- 前端开发中js变量定义及命名的规范建议
关于变量定义及命名 现在谈谈关于变量及方法等的命名,没有硬性规定,但为了规范,遵循一些约定还是很有必要的. 变量定义:好的做法是把将要使用的变量名用一个var关键字一并定义在代码开头,变量名间用逗号隔 ...
- HTML 与 SGML关系
HTML :超文本标记语言,“超文本”就是指页面内可以包含图片.链接,甚至音乐.程序等非文字元素 SGML:标准通用标记语言 HTML 是SGML下的一个应用
- 【python】-- try except (异常捕获)、断言
try except (异常捕获) 当程序出错了,但是我们又不想让用户看到这个错误,而且我在写程序的时候已经预料到了它可以出现这样的错误,出现这样的错误代表着什么,我们可以提前捕获这些个错误 1.异常 ...
- Bootstrap学习-导航条-分页导航
1.导航条基础 导航条(navbar)和上一节介绍的导航(nav),就相差一个字,多了一个“条”字.其实在Bootstrap框架中他们还是明显的区别.在导航条(navbar)中有一个背景色.而且导航条 ...