用户、组的基本概念

一、用户

Linux是一个多用户,多任务的操作系统,那么什么是用户呢?
简单来说用户就是用能够获取系统资源的权限的集合。
而我们使用的Linux一旦打开,就有一个用户,他的名字默认为root。他是我们的系统管理员用户。
那么问题来了,什么是管理员用户呢?
管理员用户就是具有使用系统所有权限的用户,其UID 为0。
除了管理员用户,Linux还有普通用户和系统用户两种。
普通用户就是一般的用户,使用系统的时候收到权限的控制,它的uid通常在1000以上。
系统用户则是保障系统运行的用户,它的uid通常在1-1000之间。而且通常情况下无法登录系统。
/etc/passwd文件中的每个用户都有一个对应的记录行,记录着这个用户的一下基本属性
Linux用户和组

每一列分别为:用户名:密码占位符:用户id:用户所在组id:用户的详细信息:用户所在家目录:用户所在的编程环境。

其中所在编程环境表示了用户是不是可登录的用户
Linux用户和组
表示不可登录。


二、组

组可以将多个用户放在一个地方,方便权限管理
私有组(也称基本组):当创建用户时,如果没有为其指明所属组,则就为其定义一个私有的用户组,起名称与用户名同名。
私有组可以变成普通用户组,当把其他用户加入到该组中,则其就变成了普通组
/etc/group存放了有关用户组的信息
Linux用户和组


三、基本命令

创建用户:useradd -参数
useradd -d 创建用户到指定的家目录。
例如创建用户Jack,主目录为/usr/1017
Linux用户和组
useradd Jack -d /usr/1017
Linux用户和组
给用户Jack设置密码为666666:
方法一passwd Jack 然后输入两次密码
方法二echo ‘666666’ | passwd --stdin Jack
Linux用户和组
此时,切换用户时就需要输入密码了!
切换用户
su - 用户名
例如:su - Jack
用户名前有空格,不加会显示命令帮助
注意:从管理员切换到普通用户不需要输入密码,但是从普通用户切换到普通用户,普通用户切换管理员则需要密码
普通用户和管理员用户很好分辨
Linux用户和组这个是普通用户,注意$符
Linux用户和组这个是管理员用户,标识符为#
删除用户:Jack,Lucy
useradd还有许多指令,下面可以通过习题来练习


习题

我们可以通过一些习题来熟悉命令

  1. 创建用户user1,附加组为bin和root,默认shell为/bin/bash,注释信息为"user1_info"
    useradd user1 -G bin,root -s /bin/bash -c 'user1_info'
    Linux用户和组
    通过查看/etc/group里的内容可以看到成功创建了用户user1同时属于root和bin两个组
  2. 创建admins组
    groupadd admins
    Linux用户和组
    创建成功
  3. 创建用户natasha,使用admins 作为附加组 Linux用户和组
  4. 创建用户harry,也使用admins 作为附加组
    useradd harry -G admins
    Linux用户和组
  5. 创建用户sarah,不可交互登录系统,且不是admins 的成员
    useradd sarah -s /sbin/nologin
    Linux用户和组
  6. natasha,harry,sarah密码都是centos7
    echo 'centos7' | passwd --stdin natasha
    Linux用户和组
    echo 'centos7' | passwd --stdin harry
    Linux用户和组
    echo 'centos7' | passwd --stdin sarah
    Linux用户和组
  7. 创建user2 uid为10000,辅助组root,home目录为/home/user200
    useradd user2 -u 10000 -G root -d /home/user200
    Linux用户和组
  8. 删除user1 用户及所在家目录
    userdel -r user1
    Linux用户和组
  9. 创建用户user100,并将该用户添加到group200组中
    这里需要先创建一个组 group200
    groupadd group200
    Linux用户和组
    然后在进行接下来的操作

方法一useradd user100 -G group200
Linux用户和组
方法二:先创建一个用户user100
useradd user100
再使用usermod命令将user100添加到group200中
usermod -G group200 user100
Linux用户和组

  1. 修改user100用户名为user1000
    usermod -l user1000 user100
    Linux用户和组
    注意 就算修改了用户名,但是用户的家目录名不变

分类:

技术点:

相关文章: