centos 简单用户管理
一、配置文件
- /etc/passwd:存放用户信息,以“:”分割成7个部分

1、账号名称,用来对应UID;
2、早期密码存放位置,后来密码改存/etc/shadow中,以“x”代替;
3、UID,使用者表示,系统主要通过UID识别账户
4、GID,用户组的ID
5、用户信息说明
6、家目录
7、登陆的shell
- /etc/shadow:存放用户密码等信息,同样以“:”分割,分为9段

1、账号名称,与/etc/passwd相对应;
2、密码,经过加密;
3、最近更改密码的日期,以1970-1-1开始计数;
4、不允许更改密码的天数,从密码变更起始开始计数,如果数值为n,表示密码变更后,n天内不允许在修改密码,0表示随时可以修改密码;
5、密码需要更改的天数,从密码变更起始开始计数,如果数值为m,表示密码变更后,在m天内需要更改密码,99999表示永远不要修改密码;
6、密码更改期限前的警告天数,与5相比,如果数值为x,表示在5字段密码需要更改的前x天,发出警告,提示需要修改密码;
7、密码过期后的宽限时间,与5字段相比,如果数值为y,表示在5字段,密码需要更改后,在y天内密码有效,y天后密码失效,登陆时会强制用户更改密码;
8、账号失效日期,如果数值为z,表示在z天以后,账号不能登陆;
9、保留字段
- /etc/group,存放用户组信息,同样以“:”分割,4个字段

1、组名
2、组密码
3、GID
4、组成员
- /etc/gshadow 组密码等信息位置
- /etc/skel
[root@web01 ~]# ll -a /etc/skel/ 总用量 drwxr-xr-x. root root 5月 : . drwxr-xr-x. root root 5月 : .. -rw-r--r-- root root 3月 .bash_logout -rw-r--r-- root root 3月 .bash_profile -rw-r--r-- root root 3月 .bashrc drwxr-xr-x. root root 11月 .gnome2
二、命令管理
- 添加用户
[root@web01 ~]# useradd -u test1 #指定uid [root@web01 ~]# id test1 uid=(test1) gid=(test1) 组=(test1) [root@web01 ~]# useradd -g root test2 #指定主组 [root@web01 ~]# id test2 uid=(test2) gid=(root) 组=(root) [root@web01 ~]# useradd -G root test3 #添加新用户到附加组 [root@web01 ~]# id test3 uid=(test3) gid=(test3) 组=(test3),(root) [root@web01 ~]# useradd -s /sbin/nologin test4 #指定登陆shell [root@web01 ~]# tail - /etc/passwd test4:x::::/home/test4:/sbin/nologin-M 不为用户创建家目录-d 为用户指定家目录
- 设置密码
[root@web01 ~]# passwd test1 更改用户 test1 的密码 。 新的 密码: 无效的密码: 它基于字典单词 重新输入新的 密码: passwd: 所有的身份验证令牌已经成功更新。 [root@web01 ~]# echo "password"|passwd test2 --stdin #非交互设置密码,可用于批量添加用户 更改用户 test2 的密码 。 passwd: 所有的身份验证令牌已经成功更新。[root@web01 ~]# passwd -d test2 #清除密码清除用户的密码 test2。passwd: 操作成功
- 修改用户信息
[root@web01 ~]# id test2 uid=(test2) gid=(root) 组=(root) [root@web01 ~]# usermod -u test2 [root@web01 ~]# id test2 uid=(test2) gid=(root) 组=(root) [root@web01 ~]# usermod -g test3 test2 [root@web01 ~]# id test2 uid=(test2) gid=(test3) 组=(test3) [root@web01 ~]# usermod -G root test2 [root@web01 ~]# id test2 uid=(test2) gid=(test3) 组=(test3),(root) [root@web01 ~]# grep test2 /etc/passwd test2:x::::/home/test2:/bin/bash [root@web01 ~]# usermod -s /sbin/nologin test2 [root@web01 ~]# grep test2 /etc/passwd test2:x::::/home/test2:/sbin/nologin ##########与useradd用法几乎相同############
- 删除用户
[root@web01 ~]# userdel test1 #默认不删除家目录 [root@web01 ~]# ll -d /home/test1/ drwx------ 5月 : /home/test1/ [root@web01 ~]# userdel -r test4 #删除家目录 [root@web01 ~]# ll -d /home/test4 ls: 无法访问/home/test4: 没有那个文件或目录
- 查看用户信息
[root@web01 ~]# id uid=(root) gid=(root) 组=(root) [root@web01 ~]# id test1 id: test1:无此用户 [root@web01 ~]# id test2 uid=(test2) gid=(root) 组=(root)
- 组管理
[root@web01 ~]# groupadd test1 [root@web01 ~]# tail - /etc/group suffergtf:x:: test1:x:: [root@web01 ~]# groupdel test1 [root@web01 ~]# tail - /etc/group test3:x:: suffergtf:x::
三、sudo管理
配置文件/etc/sudoers,可以使用vim编辑工具直接编辑该文件,但是没有语法检查,所以推荐使用visudo管理
格式如下
root ALL=(ALL) ALL
root:表示需要提权的用户
ALL:运行的主机
(ALL):表示以谁的身份来运行命令
ALL:表示给予字段1中的用户使用字段3的用户权限运行这个命令
例:
test ALL=(root) /usr/sbin/useradd [root@web01 test2]# su - test [test@web01 ~]$ /usr/sbin/useradd test100 -bash: /usr/sbin/useradd: 权限不够 [test@web01 ~]$ sudo /usr/sbin/useradd test100 [sudo] password for test: [test@web01 ~]$ id test100 uid=(test100) gid=(test100) 组=(test100)
sudo别名功能(别名只能用大写)
User_Alias USER = test200,test300,test400 #定义用户别名Host_Alias HOST = web01,web02 #定义主机别名Cmnd_Alias CMD = /usr/sbin/useradd,/usr/sbin/userdel #定义命令别名 USER ALL=(root) CMD###########别名需要使用大写字母表示,并且定义的别名如果没有使用,会报错#############[root@web01 test2]# su - test200[test200@web01 ~]$ /usr/sbin/useradd test11-bash: /usr/sbin/useradd: 权限不够[test200@web01 ~]$ sudo /usr/sbin/useradd test11[sudo] password for test200: [test200@web01 ~]$ /usr/sbin/userdel test11-bash: /usr/sbin/userdel: 权限不够[test200@web01 ~]$ sudo /usr/sbin/userdel test11###########需要输入密码比较麻烦,可以定义不用输入执行sudo的用户的密码##########USER ALL=(root) NOPASSWD:CMD[root@web01 test2]# su - test200[test200@web01 ~]$ sudo /usr/sbin/useradd test22[test200@web01 ~]$ id test22uid=1011(test22) gid=1011(test22) 组=1011(test22)
centos 简单用户管理的更多相关文章
- 基于vue.js的简单用户管理
功能描述:添加.修改.搜索过滤 效果图: <!DOCTYPE html> <html lang="en"> <head> <title&g ...
- EasyUI+MVC+EF简单用户管理Demo(问题及解决)
写在前面 iframe-src EntityFramework版本 connectionStrings View.Action.页面跳转 EasyUI中DataGrid绑定 新增.修改和删除数据 效果 ...
- centos的用户管理相关命令所在的包
用户管理命令是指:useradd userdel groupadd groupdel 这些 这些命令出自一个叫 shadow-utils 的包. 对于配置文件 /etc/shadow ,则来自一个叫 ...
- spring boot一个简单用户管理DEMO
概述 该Demo旨在部署一个简单spring boot工程,包含数据编辑和查看功能 POM配置 <?xml version="1.0" encoding="UTF- ...
- ceph简单用户管理
列出所有用户 ceph auth list 获取指定用户 ceph auth get client.admin 新增用户并输出密钥环 ceph auth get-or-create client.ge ...
- Nodejs+Express+Mysql实现简单用户管理增删改查
源码地址 https://github.com/king-y/NodeJs/tree/master/user 目录结构 mysql.js var mysql = require('mysql'); v ...
- [转]Spring3 MVC + jQuery easyUI 做的ajax版本用户管理
原文地址:http://www.iteye.com/topic/1081739 上周写了篇基于spring3.0.5 mvc 简单用户管理实例 ( http://www.iteye.com/topic ...
- Linux学习总结(十二)—— CentOS用户管理:创建用户、修改用户、修改密码、密码有效期、禁用账户、解锁账户、删除用户、查看所有用户信息
文章首发于Linux学习总结(十二)-- CentOS用户管理,请尊重原创保留原文链接. 创建用户 useradd -g webadmin -d /home/zhangsan zhangsan pas ...
- Laravel框架简单的用户管理[CURD]操作
一个基于laravel和bootstrap的简单的用户管理,适合刚入门的我们,在做的过程中可以加深自己对laravel基础理解,里面存在一些问题,还未修改,比如css和js的引入,表单提交地址等不规范 ...
随机推荐
- poj 1149 PIGS【最大流】
建图:s向所有猪圈的第一个顾客连流量为这个猪圈里住的数量,然后对于之后每个来这个猪圈的顾客,由他前一个顾客向他连边权为无穷的边,然后每个顾客向t连流量为这个顾客购买上限的边.然后跑最大流 #inclu ...
- 【练习总结】题目:筛法遍历素数(Java)
初学Java,学到流程控制的循环,有个练习题是暴力遍历素数. 因为看过av32186751,知道有个筛法,就想试试. 又受到线性筛法(一)--素数筛法(一) - nerd呱呱 - 博客园中,的这段启发 ...
- Java标准输入流system.in报错: java.util.NoSuchElementException解决方法
我的程序大概是这样的: main()主函数里面,调用两个自定义的方法,这里我们称之为方法a和方法b: 主函数main()里有一个:Scanner scanner = new Scanner(Syste ...
- 给Ambari集群里安装可视化分析利器工具Hue步骤(图文详解)
扩展博客 以下,是我在手动的CDH版本平台下,安装Hue. CDH版本大数据集群下搭建Hue(hadoop-2.6.0-cdh5.5.4.gz + hue-3.9.0-cdh5.5.4.tar.gz) ...
- DP Codeforces Round #260 (Div. 1) A. Boredom
题目传送门 /* 题意:选择a[k]然后a[k]-1和a[k]+1的全部删除,得到点数a[k],问最大点数 DP:状态转移方程:dp[i] = max (dp[i-1], dp[i-2] + (ll) ...
- python优缺点分析及python种类
Python的缺点: 相较于其它类型的语言可能运行速度上会略差.C语言的运行性能速度上最好,因为C最接近计算机底层. Python的优点: 大数据处理,有专门的功能模块,比较方便. Linux自带Py ...
- SpringCloud开发学习总结(四)—— 客户端负载均衡Ribbon
通过上一章<SpringCloud开发学习总结(三)—— 服务治理Eureka>,我们已经搭建起微服务架构中的核心组件——服务注册中心(包括单点模式和高可用模式).同时还注册了一个服务,命 ...
- android开发学习 ------- volley网络请求的实例
在 http://www.sojson.com/httpRequest/ 上对http进行访问,将此访问在android中的应用 ********************************* ...
- git push代码时的'git did not exit cleanly (exit code 1)'问题解决
在利用git管理本地发布的galleryLeftOrRight插件项目时,按照git的使用方法:先commit→master,再 push,发现提示错误git did not exit cleanly ...
- [转]在ubuntu上安装chrome浏览器
原文链接: https://www.linuxidc.com/Linux/2013-10/91857.htm --------------------------------------------- ...