一、认识/etc/passwd和/etc/shadow

1、/etc/passwd 由 ‘:’ 分割成7个字段,每个字段的具体含义是:

  • 用户名
  • 存放账号的口令;现在存放在/etc/shadow下,在这里只用一个 ‘x’ 代替
  • 用户标识号,也叫做uid;0是超级用户(root)的标识号,1~499由系统保留,作为管理账号,普通用户的标识号从500开始;UId取值范围:0~65535(但实际上已经可以支持到4294967294)
  • 组标识号,也叫做gid;这个字段对应着/etc/group 中的一条记录
  • 注释说明,该字段没有实际意义
  • 用户的家目录,当用户登录时就处在这个目录下;
  • Shell,用户登录后要启动一个进程,用来将用户下达的指令传给内核,这就是shell

2、/etc/shadow, 用 ‘:’ 分割成9个字段

  • 用户名
  • 用户密码
  • 上次更改密码的日期
  • 要过多少天才可以更改密码,默认是0,即不限制
  • 密码多少天后到期
  • 密码到期前的警告期限
  • 账号失效期限
  • 账号的生命周期
  • 作为保留用的,没有什么意义。

二、新增/删除用户和用户组

1、 groupadd 命令
作用:添加一个组
语法:groupadd [-g GID] groupname
“-g” 选项可以自定义gid.;不加 “-g” 选项则按照系统默认的gid创建组,跟用户一样,gid也是从500开始的
2、 groupdel 命令
作用:删除组
格式:groupdel groupname 如果组中存在账号是不能删除的,必须先删除组内的账号
3、 useradd 命令
作用:添加账户
格式:useradd [-u UID] [-g GID] [-d HOME] [-M] [-s]
-u :设置用户UID
-g :设置用户组GID
-d : 自定义用户的家目录
-M: 不建立家目录
-s : 自定义shell
注意:不加任何选项直接跟用户名,则会创建一个跟用户名同样名字的组
4、 userdel 命令
作用:删除账户
语法 : userdel [-r] username
参数:‘-r’ 选项的作用只有一个,就是删除账户的时候连带账户的家目录一起删除。

三、创建/修改一个用户的密码

1、  passwd 命令

作用:修改用户密码

格式:passwd [username]

注意:

1、  只有root才可以修该其他账户的密码,普通账户只能修改自己的密码,其他账户的密码是不可以修改的。

2、  如果直接使用passwd则修改当前用户的密码

mkpasswd 命令

作用:自动生成密码

默认你的Linux是没有这个命令的,需要安装一个包 “expect”, 如果你的CentOS可以上网,请使用命令 yum install -y expect 即可完成安装

四、用户身份切换

1、  su 命令

作用:切换用户

语法:su [-] username

注意:- 可以添加也可以不添加。添加之后会初始化当前用户的各种环境变量。例如:

如果不加 ‘-‘ 切换到root账户下时,当前目录没有变化,而加上 ‘-‘ 切换到root账户后,当前目录为root账户的家目录,这跟直接登陆root账户是一样的。当用root切换普通用户时,是不需要输入密码的。这也体现了root用户至高无上的权利

Whoami 命令

作用:查看当前使用的用户

Sudo 命令

见网页:

http://www.apelearn.com/study_v2/chapter8.html

Linux学习笔记06—系统用户及用户组的管理的更多相关文章

  1. Linux 的基本操作(系统用户及用户组的管理)

    [认识/etc/passwd和/etc/shadow] 这两个文件可以说是linux系统中最重要的文件之一.如果没有这两个文件或者这两个文件出问题,则你是无法正常登录linux系统的. /etc/pa ...

  2. Linux学习--第七天--用户和用户组

    用户和用户组 usermod -a -G groupname username // 将已有用户添加到已有用户组 /etc/passwd michael:x:500:500:CentOS:/home/ ...

  3. Linux学习笔记13-用户和组

    操作系统通过用户.组概念来管理使用计算机的人 用户代表一个使用计算机的使用者,操作系统通过用户概念限制一个使用者能够访问的资源 组用来组织管理用户 用户具有以下概念: 每个用户有一个用户名和一个用户I ...

  4. linux学习(十一)用户和用户组管理

    一.用户文件 文件:/etc/passwd 这个文件记录了用户了用户名,用户id,所属组,家目录,shell信息: [root@iZ25lzba47vZ ~]# tail -n3 /etc/passw ...

  5. kali linux学习笔记之系统定制及优化(附:中文输入法设置)

    fix update flash plugin on kali rolling author:@kerker 0x00设置软件源 root@kali:~# vim /etc/apt/sources.l ...

  6. 鸟哥Linux学习笔记06

    Linux 系统常用的压缩命令 1,*.Z compress程序压缩的文件,这个已经很老了,几乎不再使用,因此不再介绍. 2,gzip应用最广泛的压缩命令.目前gzip可以解开compress.zip ...

  7. linux学习笔记 4建立用户

    一般用法  #useradd mysql 含义 创建 mysql用户 特殊用法 1> #useradd -d /usr/cjh -m cjh 含义:创建cjh用户 产生一个主目录 /usr/cj ...

  8. Linux学习笔记——1.超级用户

    以超级用户工作:su su命令允许临时变换到任何一用户标识(如果拥有口令的话),并挂起当前shell,为新用户开启一个新的shell. su <user> 将当前用户标识harley变换为 ...

  9. linux学习笔记之系统标准:POSIX,ISO C...

    一.POSIX,ISO C,Single UNIX Specification的概念. 1,POSIX:Portable Operating System Interface.可移植操作系统接口.期望 ...

随机推荐

  1. html5 canvas裁剪区域

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. 用python处理文本,本地文件系统以及使用数据库的知识基础

    主要是想通过python之流的脚本语言来进行文件系统的遍历,处理文本以及使用简易数据库的操作. 本文基于陈皓的:<程序员技术练级攻略> 一.Python csv 对于电子表格和数据库导出文 ...

  3. JavaScript继承详解(一)

    面向对象与基于对象 几乎每个开发人员都有面向对象语言(比如C++.C#.Java)的开发经验. 在传统面向对象的语言中,有两个非常重要的概念 - 类和实例. 类定义了一类事物公共的行为和方法:而实例则 ...

  4. [BZOJ 1013][JSOI 2008] 球形空间产生器sphere 题解(高斯消元)

    [BZOJ 1013][JSOI 2008] 球形空间产生器sphere Description 有一个球形空间产生器能够在n维空间中产生一个坚硬的球体.现在,你被困在了这个n维球体中,你只知道球 面 ...

  5. 【译】SQLskills SQL101:Trace Flags、ERRORLOG、Update Statistics

    最近阅读SQLskills SQL101,将Erin Stellato部分稍作整理.仅提取自己感兴趣的知识点,详细内容请阅读原文. 一.Trace Flags推荐开启三个跟踪标记1118.3023.3 ...

  6. o(1), o(n), o(logn), o(nlogn)算法复杂度

    在描述算法复杂度时,经常用到o(1), o(n), o(logn), o(nlogn)来表示对应算法的时间复杂度, 这里进行归纳一下它们代表的含义: 这是算法的时空复杂度的表示.不仅仅用于表示时间复杂 ...

  7. spring事务详解(二)实例

    在Spring中,事务有两种实现方式: 编程式事务管理: 编程式事务管理使用底层源码可实现更细粒度的事务控制.spring推荐使用TransactionTemplate,典型的模板模式. 申明式事务管 ...

  8. TensorBoard 简介及使用流程【转】

    转自:https://blog.csdn.net/gsww404/article/details/78605784 仅供学习参考,转载地址:http://blog.csdn.net/mzpmzk/ar ...

  9. 秘钥登录服务器执行shell脚本

    做自动化的时候,有时候避免不了要和服务器有互动,刚巧碰上一个项目,需要执行命令才能完成本次测试. 昨天遇到的是秘钥形式的,只有秘钥和用户名,百度找了许久也没有思路,(能账号密码登录服务器的还简单些), ...

  10. shell升级完整记录

    [root@localhost bash-4.3.30]# cat Makefile |grep prefix prefix = /usr/local exec_prefix = ${prefix} ...