Linux编程 15 文件权限(用户管理 useradd,userdel,usermod,passwd,chpasswd,chsh, chfn,chage)
一. 概述
在上一篇中讲到了与用户账户有关的二个文件passwd和shadow,以及useradd工具的介绍。这篇接着讲useradd+参数,删除用户,修改用户的演示。
1. 删除用户userdel
使用userdel可以删除用户,但只会删除etc/passwd文件中的用户信息,而不会删除系统中属于该账户的任何文件。如果加上-r 参数,userdel会删除用户HOME目录以及邮件目录。使用-r参数时要检查用户HOME目录下是否存放了其他用户和其他程序使用的重要文件。
先查看下test用户的文件信息如下:

再使用userdel -r命令来删除, 没有了该用户和home目录。如下图所示:

2. 新增用户useradd
上篇讲了useradd+m参数创建home目录的演示,下面新增test用户,并使用-d参数指定home文件启动文件目录为home/test1。,/etc/passwd文件中test用户也有了。如下图所示:

在上篇中讲到useradd命令默认情况是不会创建HOME目录,但这里没有使用-m 参数也创建了HOME目录,下面试试使用useradd不加任何参数,创建test2用户,还是会创建home目录,如下图所示。

3. 修改用户
对于修改用户,linux提供了一些不同的工具来修改已有用户账户的信息。列表如下:
|
工具名 |
描述 |
|
usermod |
修改用户账户的字段,还可以指定主要组以及附加组的所属关系 |
|
passwd |
修改已有用户的密码 |
|
chpasswd |
从文件中读取登录名密码对,并更新密码 |
|
chage |
修改密码过期日期 |
|
chfn |
修改用户账户的备注信息 |
|
chsh |
修改用户账户的默认登录shell |
3.1 usermod工具
usermod 命令是用户账户修改工具中最强大的一个,它用来修改etc/passwd文件中的大部份字段。下面是该工具常用参数的说明:
|
-l |
修改用户账户的登录名 |
|
-L |
锁定账户,使用户无法登录 |
|
-p |
修改账户的密码 |
|
-U |
解除锁定。使用户能够登录 |
|
-e |
修改过期日期 |
|
-c |
修改备注字段 |
例如:使用usermod给已有test用户修改备注信息“remark”,在passwd文件中可以看到已添加的备注信息,如下图所示:

3.2 passwd工具
要改变用户密码最简便方法就是用passwd命令,下面给test用户设置强密码: a12D!@#$。 太过简单的密码会提示"过于简单化",密码不足8位会提示:密码不匹配,如下图所示:

修改密码成功后,再查看shadow文件,test用户密码已加密,如下图所示:

要注意的是使用passwd命令,只能修改自己的密码,只有root用户才有权限修改所有用户密码。设置了密码后,使用Xshell 远程工具就能连接上了,如下图所示:

test用户目录提示符,默认在 /home/test1目录下, 使用cd 退回二级到了虚拟目录根目录下,如下所示:
3.3 其它工具
(1) chpasswd :如果要大量用户修改密码,该工具命令可以事半功倍。
(2) chsh : 该命令用来快速修改默认的用户登录shell。例如 chsh -s /bin/csh test 。
(3) chfn:该命令会向你询问要将哪些适合的内容加入备注字段,下面给test用户加内容备注,如下图所示:

(4) chage: 该命令用来管理用户账户的有效期,你需要对每个值设置多个参数,列表如下:
|
参数 |
描述 |
|
-d |
设置上次修改密码到现在的天数 |
|
-E |
设置密码过期的日期 |
|
-I |
设置密码过期到锁定账户的天数 |
|
-m |
设置修改密码之间最小要多少天 |
|
-w |
设置密码过期前多久开始出现提醒信息 |
下面为test用户设置-E和-W参数,如下图所示:

通过chage -l test 可以更加清楚易懂对test用户的设置:

Linux编程 15 文件权限(用户管理 useradd,userdel,usermod,passwd,chpasswd,chsh, chfn,chage)的更多相关文章
- Linux编程 14 文件权限(用户列表passwd,用户控制shadow,useradd模板与useradd命令参数介绍)
一. 概述 linux安全系统的核心是用户账户. 创建用户时会分配用户ID(UID). UID是唯一的,但在登录系统时不是用UID,而是用登录名.在讲文件权限之之前,先了解下linux是怎样处理用户账 ...
- Linux编程 16 文件权限(组管理 groupadd, groupmod,文件权限介绍)
一.用户组 前面章节知道用户账户在控制单个用户安全性方面很好,但涉及到共享资源或把用户类型分组时,组概念就出来了. 组权限允许多个用户对系统中的对象(比如文件,目录,设备等)共享一组共用的权限. 在c ...
- Linux编程 17 文件权限(权限设置chmod,改变文件属主属组关系chown,chgrp)
一. 概述 如果创建了一个目录或文件,有时会需要改变它的安全性设置,在linux系统上有一些工具可以完成这任务,包括使用chmod命令改变已有默认权限,分别能对属主,属组,其它用户的权限的控制分别以读 ...
- CentOS 用户管理useradd、usermod等
1.创建新用户useradd,默认的用户家目录会被存放在/home 目录中,默认的 Shell 解释器为/bin/bash,而且默认会创建一个与该用户同名的基本用户组. 主要参数: -d 指定用户的家 ...
- Centos-用户管理-useradd userdel usermod groupadd groupdel id
linux是多用户.多任务操作系统 linux角色分类 超级用户 root # 管理员.特定服务主进程 0 普通用户 $ 普通管理员.服务运行需要的用户 500~65535 虚拟用户 不能登录 ...
- linux-15基础命令之-用户与用户组(useradd,userdel,usermod,passwd,groupadd)
1.useradd 命令用于创建新的用户,格式为:useradd[选项] 用户名 useradd参数 参数 作用 -d 指定用户的家目录(默认/home/username) -D 展示默认值 -e 帐 ...
- 【目录】linux 编程
随笔分类 - linux 编程 Linux编程 24 shell编程(结构化 if [ condition ] 数值比较,字符串比较) 摘要: 一.概述 接着上篇讲的结构化命令,最后讲到了test命令 ...
- 【Linux命令】用户身份(useradd,groupadd,usermod,passwd,userdel)
目录 用户身份 useradd userdel usermod groupadd groupdel passwd chage 用户身份 在linux系统中和windows一样有用户之分.root用户为 ...
- Linux运维六:用户管理及用户权限设置
Linux 系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统.用户的账号一方面可以帮助系统管理员对使用系统的用户进行 ...
随机推荐
- Moving or disabling the package cache for Visual Studio 2017
Moving or disabling the package cache for Visual Studio 2017 | Setup & Install by Heath Stewart ...
- Linux中硬链接和软链接的区别
看了这篇文章之后,豁然开朗.直接放链接,感谢作者的分享. https://www.ibm.com/developerworks/cn/linux/l-cn-hardandsymb-links/#ico ...
- matplotlib中color可用的颜色
http://stackoverflow.com/questions/22408237/named-colors-in-matplotlib 参考网址给出了matplotlib中color可用的颜色: ...
- clouderamanager安装
下载地址 http://archive.cloudera.com/cm5/cm/5/ 安装 先安装manager,再安装cdh 待续
- bp代码
#电池老化率测定的神经网络模型 import tensorflow as tf import numpy as np import matplotlib.pyplot as plt import pa ...
- vue脚手架的使用
npm install -g @vue/cli --全局环境安装vue/cli vue create <project-name> 在创建项目时你会被提示选取一个 preset.你可 ...
- JavaScript中Object.keys用法
Object.keys()方法会返回一个由一个给定对象的自身可枚举属性组成的数组. var data={a:1,b:2,c:9,d:4,e:5}; console.log(data);//{a: 1, ...
- CentOS 7.6下解决登录MySQL时,ERROR 1045 (28000): Access denied for user root@localhost (using password: YES
https://blog.csdn.net/sinat_35406909/article/details/79763782
- 关于SQL2008R2连接服务器出错问题
在安装SQL2008R2后,在公司里用VS2013测试可以连接,可是回到寝室却出了问题,当打开SSMS连接服务器的时候会提示: “在与SQL Server建立连接时出现与网络相关的或特定于实例的错误. ...
- Servlet的创建二以及生命周期
之前说Servlet可以通过实现Servlet接口来创建,但是我们看到了,需要重写该接口中的所有方法. 创建方式二:Servlet的创建还可以继承抽象类GenericServlet并重写其中的抽象方法 ...