【Linux】用户组、用户操作

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/chenghan_yang/article/details/102768257

Linux与用户相关的目录结构

在这里插入图片描述
​ /:根目录

root:超级管理员(root)的家

home:其他用户(普通用户)的家

​ etc:配置文件

​ usr:存放共享文件的(软件的安装路径)

​ lib:依赖库

Linux用户组和用户的概念

基本概念

用户分为 超级管理员普通用户
用户组 是用户的管理单元,一个用户至少属于一个用户组

依赖关系

  • 超管 操作用户
    超管可以创建、修改、删除 、修改密码
  • 超管 操作用户组
    超管可以增删改用户组、可以移动用户至不同用户组
    用户组类似于标签,同一个用户可能有多个标签,也就是 一个用户可以属于多个用户组
  • 用户操作
    不能 增删改用户、用户组

超管 管理用户组

  • 新增用户组
    groupadd 组名
  • 查看用户组
    某个用户所属的组名 : groups 用户名
  • 修改组名
    groupmod -n 新组名 原组名
  • 删除用户组
    groupdel 组名
    ps: 用户组下有用户,需要先删除完用户才能删除用户组

超管 管理用户

  • 创建用户
    useradd -m [-g 组名] 新用户名
    参数解释:
    1. -m 自动在/home目录了,建立用户家目录,家目录名字就是新用户名
    2. -g 组名 指定新用户所在的组,如果不带"-g 组名"参数的话,会建立和新用户名同名的组

  • 设置用户密码(修改)
    passwd 新用户名

  • 修改用户名
    usermod -l 新名 旧名

  • 删除用户
    userdel -r 用户名
    参数解释:
    1. -r recursion的缩写,递归。 将用户名的目录文件递归删除
    1.1 如果使用 -r 参数,再增加同名的用户名会报Creating mailbox file: File exists的错误

超管 管理用户和用户组

  • 新增用户到用户组
    useradd -m -g 组 新用户名
  • 将用户移动到用户组
    usermod -g 组 用户名
  • 将用户复制到用户组
    usermod -G 组 用户名
  • 从组中删除用户
    gpasswd -d 用户名 组
    PS:能删除的用户只能是从其他组复制过来的用户,如果要删除组中的唯一用户,使用:userdel -r 用户名

超管 查看并修改 /etc/sudoers 文件的读写权限

1. ll -h 查看sudoers的权限

[root@james etc]# ll -h

-r–r-----. 1 root root 4.0K Mar 2 2012 sudoers

长度为10的表达式,第一位是文件类型标识位,后面9位是 3 * 3 的权限定义位

  • 文件标识位
    - : 文件
    d : 目录
  • 为什么是三个3
  1. 第一个3
    当前用户的权限
  2. 第二个3
    跟当前用户同组的用户的权限
  3. 第三个3
    其它组的用户的权限
  • 为什么每组有3位
  1. 第1位
    r : 英语read的缩写 读权限
  2. 第2位
    w : 英语write的缩写 写权限
  3. 第3位
    x : 执行权限

-r–r-----. root用户具备可读可写可执行的权限,跟root同组的用户只可读,其他组的用户没有任何权限

2. -r–r----- 的二进制表示

第1位:- 文件
第2 - 4位 : r-- =100 = 1 * 22 + 0 * 11 + 0 * 10 = 4
第5 - 7位 第 8 - 10位 同理

3. 使用二进制参数修改sudoers的权限

[root@james etc]# chmod 740 sudoers
[root@james etc]# ll -h | grep sudoers
-rwxr-----. 1 root root 4.0K Mar 2 2012 sudoers

超管 使用/etc/sudoers 授予用户sudo权限

vim /etc/sudoers 加入
在这里插入图片描述

普通用户 使用超管命令 – 必须加上sudo前缀

[tom@james ~]$ usermod -G emp tom
-bash: /usr/sbin/usermod: Permission denied
[tom@james ~]$ sudo usermod -G emp tom

We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:

    #1) Respect the privacy of others.
    #2) Think before you type.
    #3) With great power comes great responsibility.

[sudo] password for tom: 
[tom@james ~]$ 

猜你喜欢

转载自blog.csdn.net/chenghan_yang/article/details/102768257