文章首发于Linux学习总结(十二)—— CentOS用户管理,请尊重原创保留原文链接。

创建用户

useradd -g webadmin -d /home/zhangsan zhangsan
passwd zhangsan

上面的命令创建了用户zhangsan,并将其归属于webadmin用户组,默认目录为/home/zhangsan,之后用passwd命令为zhangsan设置密码。

更多useradd命令的参数如下表所示:

参数 描述
-u 指定用户的UID(超级用户UID=0,普通用户UID 500-60000,伪用户UID 1-499)
-g 指定用户缺省所属的用户组的GID
-G 指定用户组所属多个组(用英文逗号隔开)
-d 指定宿主目录
-s 指定命令解释器Shell
-c 指定描述信息
-e 指定用户失效时间

修改用户

usermod -l lisi -md /home/lisi zhangsan 

上面的命令将zhangsan用户登录名改为lisi,并将其默认目录改为/home/lisi。可以看到在运行命令后,zhangsan目录变成了lisi。

usermod命令可用参数列表如下:

参数 描述
-l 修改登录名
-u 指定用户的UID(超级用户UID=0,普通用户UID 500-60000,伪用户UID 1-499)
-g 指定用户缺省所属的用户组的GID
-G 指定用户组所属多个组(用英文逗号隔开)
-d 指定宿主目录
-m 将家目录内容移至新位置 (仅于 -d 一起使用)
-s 指定命令解释器Shell
-c 指定描述信息
-e 指定用户失效时间
-L 锁定用户帐号
-U 解锁用户帐号

文章首发于Linux学习总结(十二)—— CentOS用户管理,请尊重原创保留原文链接。

删除用户

userdel -r lisi

上面的命令删除了lisi账户,并删除其用户目录。在/etc/passwd文件中也可以看到lisi用户的记录不见了。

修改密码

passwd lisi

上面的命令可以为用户lisi设置新的密码。

更多可用参数列表如下:

参数 描述
-d 删除密码,仅有系统管理者才能使用
-f 强制执行
-k 设置只有在密码过期失效后,方能更新
-l 锁住密码
-u 解开已上锁的账号
-s 列出密码的相关信息,仅有系统管理者才能使用

密码有效期

chage命令用于修改账号和密码的相关设定。

chage -E 2017/06/30 lisi

上面的命令设置lisi用户在2017年6月30日过期,修改过后可以在/etc/passwd文件中看到对应标志位修改。

更多关于chage命令的参数可参考下表:

参数 描述
-l 查看用户密码设置(如:密码失效时间、最后一次修改密码时间等)
-m 密码修改最小天数
-M 密码修改最大天数
-d 密码最后修改的日期
-I 密码过期后,锁定账户的天数
-E 设置密码的过期日期,如果为0,代码密码立即过期;如果为-1,代表密码永不过期
-W 设置密码过期前,开始警告的天数

禁用账户

禁用账户使用的是usermod命令,配合-L参数锁住账户。

usermod -L lisi

上面的命令将lisi账户锁定禁用,用passwd命令也可以实现同样的效果:

passwd -l lisi

我们用ssh zhangsan@192.168.1.1登陆服务器的时候,会发现服务器拒绝了登陆,那就说明账户成功被禁用。

恢复账户

禁用账户使用的是usermod命令,配合-U参数锁住账户。

usermod -U lisi

上面的命令将lisi账户解锁,用passwd命令也可以实现同样的效果:

passwd -u lisi

查看所有用户信息

在Linux系统中,所有用户的账户信息保存在/etc/passwd文件中。

上图红色框中的内容就是我们上面创建的用户zhangsan对应的一条记录。文件中每一条记录对应一个用户,每条记录都遵守着固定的格式。

用户名:密码位:UID:GID:描述信息:宿主目录:使用的shell命令

我们创建的zhangsan用户,其用户名就是zhangsan,UID为1002,GID为888,没有描述信息,宿主目录为/home/zhangsan,使用的shell命令为/bin/bash。

查看所有用户的密码信息

在Linux系统中,所有用户的账户信息保存在/etc/shadow文件中。

上图红框部分的就是zhangsan的密码信息。文件中每一条记录对应一个用户的密码信息,每条记录都遵守着固定的格式。

用户名:加密密码:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:帐号闲置时间:失效时间:标志

我们创建的zhangsan用户,其用户名就是zhangsan,最后一次修改时间为17295天(1970年到今天的日期),最小时间间隔为0,最大时间间隔为99999天,警告时间为7天,账号闲置时间、失效时间、标识都为空。

关于各项标志位的意义,可以参考下表:

标志位 含义
最后一次修改时间 是指最后一次修改密码的天数与1970年1月1日相隔的天数
最小时间间隔 指两次修改密码之间的最小天数(当为0时表示不限制)。
最大时间间隔 是指密码多少天之后失效,但是可以在重新密码使账户可以重新启用。而失效时间是指多久之后账户就直接无效(当不限制无效时间时,直接设置一个很大的值即可。)
警告时间 当密码失效前n天就进行提示警告(当为0时表示不警告)
帐号闲置时间 指用户没有登录活动但账号仍能保持有效的最大天数(不设置则留空)
失效时间 指多久之后账户就直接无效。一般应用于短期外来人员的帐号。
标志 一般不使用

文章首发于Linux学习总结(十二)—— CentOS用户管理,请尊重原创保留原文链接。

Linux学习总结(十二)—— CentOS用户管理:创建用户、修改用户、修改密码、密码有效期、禁用账户、解锁账户、删除用户、查看所有用户信息的更多相关文章

  1. Linux学习之十八-sudo分权管理

    sudo分权管理 1.为什么需要sudo? 当我的主机是多人共管的环境时,如果大家都使用 su 来切换成为 root 的身份,那么就得每个人知道 root 的密码,这样密码太多人知道可能会流出去,很不 ...

  2. Linux学习之十二、命令别名与历史命令

    命令别名配置: alias, unalias 那么需要下达『 ls -al | more 』这个命令,我是觉得很烦啦! 要输入好几个单字!那可不可以使用 lm 来简化呢?当然可以,你可以在命令行下面下 ...

  3. Linux学习(十二)mkpasswd、su、sudo、限制root远程登录

    一.mkpasswd mkpasswd用来生成随机密码字符串.可以指定长度和特殊字符的长度: [root@ruanwenwu01 ~]# mkpasswd O7.alw5Wq [root@ruanwe ...

  4. Linux学习之十二-Linux文件属性

    Linux文件属性 在Linux中,对于每个文件都有相应属性,以Linux中root用户家目录下新建文件a.txt为例,在a.txt中输入几个字符 使用命令ls -ild a.txt查看文件的权限等 ...

  5. Linux学习篇(二)-软件包管理器、Yum 软件仓库

    红帽软件包管理器 在红帽软件包管理器(rpm)公布之前,Linux 系统软件的安装只能采取"源码包"的方式安装,需要自行编译源码并解决许多依赖关系,所以软件的安装.升级.卸载的难度 ...

  6. linux基础-第十六单元 yum管理RPM包

    第十六单元 yum管理RPM包 yum的功能 本地yum配置 光盘挂载和镜像挂载 本地yum配置 网络yum配置 网络yum配置 Yum命令的使用 使用yum安装软件 使用yum删除软件 安装组件 删 ...

  7. Linux学习之十四、管线命令

    Linux学习之十四.管线命令 地址:http://vbird.dic.ksu.edu.tw/linux_basic/0320bash_6.php

  8. deepin linux 学习笔记(二)——文本编辑器

    目录 deepin linux 学习笔记(二)--文本编辑器 前言 nano 小巧的命令行编辑器 通用 编辑 定位 排版 配置 vim 思路独特的超级编辑器 命令模式 插入模式 底线模式(末行模式) ...

  9. python3.4学习笔记(十二) python正则表达式的使用,使用pyspider匹配输出带.html结尾的URL

    python3.4学习笔记(十二) python正则表达式的使用,使用pyspider匹配输出带.html结尾的URL实战例子:使用pyspider匹配输出带.html结尾的URL:@config(a ...

  10. Go语言学习笔记十二: 范围(Range)

    Go语言学习笔记十二: 范围(Range) rang这个关键字主要用来遍历数组,切片,通道或Map.在数组和切片中返回索引值,在Map中返回key. 这个特别像python的方式.不过写法上比较怪异使 ...

随机推荐

  1. 常见的排序算法总结(JavaScript)

    引言 排序算法是数据结构和算法之中的基本功,无论是在笔试还是面试,还是实际运用中都有着很基础的地位.这不正直七月,每年校招的备战期,所以想把常见的排序算法记录下来.在本篇文章中的排序算法使用 Java ...

  2. 京东JOS API 接入使用笔记

    商户开设了京东店.淘宝店,最近打算使用京东物流,需要使用京东仓库(京东店的订单使用京仓发货,淘宝等其他店使用京东云仓)发货,所以得从自家的ERP与京东沧海(ECLP)API对接,实现收发存. 首先得在 ...

  3. crm维护踩坑记(一)

    目录 antd es6 Object.entries() Object.keys() Object.getOwnPropertyNames() 很神奇的用法!!! eslint 傻逼 其他 参考 an ...

  4. MongoDB数据库聚合

    前面的话 聚合操作主要用于对数据的批量处理,将记录按条件分组以后,然后再进行一系列操作,例如,求最大值.最小值.平均值,求和等操作.聚合操作还能够对记录进行复杂的操作,主要用于数理统计和数据挖掘.在 ...

  5. Dubbo Data length too large: 11557050, max payload: 8388608 传输数据超限

    com.alibaba.dubbo.remoting.transport.AbstractCodec.checkPayload() ERROR Data length too large: 11557 ...

  6. hdu_1711: Number Sequence【KMP算法】

    题目链接 此次插播点笔记 hdu中点击蓝色的"Compilation Error"可以查看自己是为什么CE的 hdu中提交的话,语言选择G++可以使用<bits/stdc++ ...

  7. C#设计模式(1)-单例模式

    单例(Singleton)模式介绍 单例模式:也可以叫单件模式,官方定义:保证一个类仅有一个实例,并提供一个访问它的全局访问点. 单例模式的特点: 单例类只能有一个实例. 单例类必须自己创建自己的唯一 ...

  8. POJ3660 Cow Contest floyd传递闭包

    Description N (1 ≤ N ≤ 100) cows, conveniently numbered 1..N, are participating in a programming con ...

  9. 超超超简单的bfs——POJ-1915

    Knight Moves Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 26102   Accepted: 12305 De ...

  10. c++ STL 容器——序列

    STL中11个容器类型分别是deque,list,queue,priority_queue,stack,vector,map,multimap,set,multiset,bieset(在比特级处理数据 ...