用户及组的管理:

  安全上下文:

进程以其发起者的身份运行:
进程对文件的访问权限,取决于发起此进程的用户的权限
系统用户:为了能够让那些后台进程或服务类进程以非管理员的身份运行,通常需要为此创建多个普通用户,这类用户从不用登录系统
 
groupadd:添加组
groupadd [options] groupname
-g GID:指定GID,默认是上一个组的GID+1
-r:创建系统组
 
groupmod命令:修改组属性
groupmod [options] GROUP
-g GID:修改组ID
-n NEW_GROUP:修改组名
 
groupdel命令:删除组
 
useradd:创建用户,更新默认新用户信息
useradd [options] LOGIN
-u, --uid UID 指定UID
-g, --gid GROUP 指定基本GID,此组得事先存在
-G,--groups GROUP1[,GROUP2,...[,GROUPN]]] 指明用户所属的附加组,多个组之间用逗号隔开
-c, --comment COMMENT 指明注释信息
-d, --home-dir HOME_DIR 以指定的路径为该用户的家目录;通过复制/etc/skel此目录并重命名实现;指定的家目录路径如果事先存在,则不会为用户复制环境配置文件
-s, --shell SHELL 指定用户的默认shell,可用的所有shell列表存储在/etc/shells文件中
-r, --system 创建系统用户
-M, --no-create-home 不为用户创建主目录
 
注意:创建用户时的诸多默认设定配置文件为/etc/login.defs
 
useradd -D:显示创建用户的默认设置
useradd -D [options]:修改默认选项的值
useradd -D修改的结果保存于/etc/default/useradd文件中
 
usermod命令:修改用户属性
usermod [options] LOGIN
-u, --uid UID 修改用户的ID为此处指定的新UID
-g, --gid GROUP 修改用户所属的基本组
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]
-a, --append 与-G一同使用,用于为用户追加新的附加组
-c, --comment COMMENT 修改注释信息
-d, --home-dir HOME_DIR 修改用户的家目录,用户原有的文件不会被转移至新位置
-m, --move-home 只能与-d选项一同使用,用于将原来的家目录移动为新的有目录
-l, --login NEW_LOGIN 修改用户名
-s, --shell SHELL 修改用户的默认shell
-L, --lock 锁定用户的密码;即在用户原来的密码字符串之前添加一个"!"
-U, --unlock 解锁用户的密码
 
userdel命令:删除用户
-r, --remove 删除用户时一并删除用户的家目录,默认是不删除的
 
passwd命令:passwd - update user's authentication tokens
passwd [-k] [-l] [-u [-f]] [-d] [-e] [-n mindays] [-x maxdays] [-w warndays] [-i inactivedays] [-S] [--stdin] [username]
(1)passwd:修改用户自己的密码
(2)passwd USERNAME:修改指定用户的密码,但仅root有这个权限
 
-l,-u:锁定和解锁用户
-d:清除用户密码
-e DAYS:过期期限,日期
-i DAYS:非活动期限
-n DAYS:密码的最短使用期限
-x DAYS:密码的最长使用期限
-w DAYS:警告期限
 
--stdin;
echo "PASSWDORD" | passwd --stdin USERNAME
 
gpasswd命令:给组添加密码
存储文件:/etc/gshadow
 
gpasswd [option] group
-a USERNAME:向组中添加用户
-d USERNAME:从组中移除用户
 
newgrp命令:临时切换指定的组为基本组
newgrp [-] [group]
 
-:会模拟用户重新登录以实现重新初始化其工作环境
 
chage命令:更改用户密码过期信息
chage [options] LOGIN
 
id命令:print real and effective user and group IDs 显示用户的真实和有效的用户ID
id [OPTION]... [USER]
-u USER 仅显示有效的UID
-g USER 仅显示用户的基本组ID
-G USER 显示用户的所有组ID
-n USER 显示名字而非ID
 
su命令:switch user
登录式切换:会通过重新读取目标用户的配置文件来重新初始化
su - USERNAME
su - l USERNAME
非登录式切换:不会读取目录用户的配置文件进行初始化
su USERNAME
 
注意:管理员可无密码切换到其它任何用户
 
-c 'COMMAND':仅以指定用户的身份运行此处指定的命令:
~]# su - user -c 'whoami'
user
 
其它几个命令:chsh,chfn,finger
finger — user information lookup program 查看用户信息、进程
chsh 更改用户的shell类型
chfn 更改finger信息
 

CentOS 7 用户及权限管理的更多相关文章

  1. 【linux相识相知】用户及权限管理

    linux系统是多用户(Multi-users)和多任务(Multi-tasks)的,这样的目的是为了一台linux主机可以给很多用户提供服务同时运行多种服务,但是我们是怎么区分每个用户呢?作为一个管 ...

  2. MySQL/MariaDB数据库的用户和权限管理

    MySQL/MariaDB数据库的用户和权限管理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.元数据数据库(mysql) 系统授权表(均在mysql数据库中): db hos ...

  3. MySQL数据库用户和权限管理

    一.视图 视图:VIEW,虚表,保存有实表的查询结果,在视图插入的内容都会存入表中.创建方法: CREATE VIEW view_name [(column_list)] AS select_st ...

  4. Asp.Net MVC+BootStrap+EF6.0实现简单的用户角色权限管理

    这是本人第一次写,写的不好的地方还忘包含.写这个的主要原因是想通过这个来学习下EF的CodeFirst模式,本来也想用AngularJs来玩玩的,但是自己只会普通的绑定,对指令这些不是很熟悉,所以就基 ...

  5. Asp.Net MVC+BootStrap+EF6.0实现简单的用户角色权限管理10

    今天把用户的菜单显示和页面的按钮显示都做好了,下面先来个效果图 接下来说下我实现的方法: 首先我在每个方法前面都加了这个属性, /// <summary> /// 表示当前Action请求 ...

  6. MySQL用户与权限管理

    执行mysql select 查询报错: SELECT command denied to user 'root'@'localhost' for table "xxx" 问题原因 ...

  7. mysql用户和权限管理

    用户和权限管理 Information about account privileges is stored in the user, db, host, tables_priv, columns_p ...

  8. linux用户及权限管理

    [文件管理.管道.用户及组管理.用户及权限管理]\用户及组管理 用户与组管理 Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这 ...

  9. Mysql 用户,权限管理的几点理解。

    前两天项目数据库要移植到mysql,为此临时抓了几天很久没用的mysql. 公司的数据库比较简单,从oracle迁移到mysql很简单,但是,中间的权限管理让我感觉既简单又复杂..简单是因为网上关于m ...

随机推荐

  1. re正则匹配城市名

    匹配城市名称,只要第一次出现之后的数据 import re a='巴州区白云县台公交乡公司对面区海蜃楼6楼' b=re.search(r'(^\w+?区)|(^\w+?县)|(^\w+?镇)',a). ...

  2. ftruncate

    普通文件或共享内存区的大小都可以通过该函数修改 #include <unistd.h> int ftruncate(int fd,off_t leght); //成功返回0失败返回-1 对 ...

  3. Python assert(断言)

    Python assert(断言)可以分别后面的判断是否正确,如果错误会报错 示例: a = 1 assert type(a) is int print('No problem') 输出结果: No ...

  4. Linux colrm命令详解

    Linux colrm命令 colrm用于从文件或标准输入中过滤掉指定的列.从标准输入设备读取书记,转而输出到标准输出设备.如果不加任何参数,则该指令不会过滤任何一行. 语法: colrm 参数 参数 ...

  5. Eclipse导入hadoop源码

    在windows中,使用Eclipse阅读hadoop源码,首先到apache官网下载tar.gz的hadoop源码压缩文件,解压. 方法1:(hadoop技术内幕推荐) 打开Eclipse,新建ja ...

  6. Hadoop 管理工具HUE配置-HBase配置

    1 前言 首先要陪只好HBase,可以参见http://www.cnblogs.com/liuchangchun/p/4096891.html,完全分布式类似 2 HBase配置 2.1 HUE 配置 ...

  7. # 20175311 2018-2019-2 《Java程序设计》第2周学习总结

    ## 教材学习内容总结 第二周我对如何运行java程序已经比较熟悉了,第二周更多的是注重程序内部的原理了. ## 教材学习中的问题和解决过程 - 问题1:看书时看到的一个例子,不是很懂它是怎么得出结果 ...

  8. tab$被删除恢复指南

    by 蔡建良 2019-2-25 经过长时间摸索,参考网上各类文章.今天终于让我成功恢复了oracle的sys.tab$表,并成功打开了数据库. 将此过程记录下来,与大家共享.如有疑问可联系我QQ: ...

  9. Linux文件与目录管理(学习笔记)

    本笔记为<鸟哥linux私房菜>第六章学习笔记 一.目录与路径 相对路径与绝对路径 绝对路径:一定由根目录 / 写起              正确度比较好 相对路径:不是由 / 写起  ...

  10. Java代码片段——向文件末尾添加内容

    BufferedWriter out = null; try { out = new BufferedWriter(new FileWriter(”filename”, true)); out.wri ...