文章目录
1. 学习目标
Ubuntu(Linux)是多用户多任务的操作系统,它们都被一个叫做root的超级管理员管理着,任何一个要使用系统资源的用户,都必须首先向系统管理员(root)申请一个账号,然后以这个账号的身份进入系统。
用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制它们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护
每个用户账号都拥有一个唯一的用户名和各自的密码,用户在登陆时键入正确的用户名和密码后,就能够进入系统和自己的主目录
- 1.使用
su
(switch user)来切换用户 - 2.使用
passwd
来修改用户密码 - 3.使用
exit
来退出用户登录 - 4.使用
who
来查看登录用户 - 5.用户账号的添加、删除、修改以及密码的管理
- 6.用户组的管理
2. 切换用户
2.1 切换到超级管理员root
(1)临时切换(只针对当前命令):
sudo 命令
场景:例如我们切换到根目录后想创建一个文件,这对于普通用户来说是不允许的,因为这被Linux系统认为为危险操作,但是如果我们在命令前加上sudo
则会临时提升该命令的权限,即:sudo touch 1.txt
(2)永久切换(两种方式)
①sudo -s
,默认切换到root管理员,需要输入当前用户的密码
②su root
,切换到root管理员,需要输入root管理员密码。sudo
其实是切换到指定的用户。
2.2 普通用户之间的切换
su 用户名
,需要输入用户名对应的密码,若不写用户名,则切换到root用户
3. 修改密码
在Unix/Linux中,超级管理员可以使用passwd命令为普通用户设置或修改用户密码。用户也可以直接使用该命令来修改自己的密码,而无需在命令后面使用用户名。
passwd 用户名
,修改指定用户的密码,一般在超级管理员情况下使用
passwd
,修改当前登录的用户密码,简单快捷
注意:
- 普通用户不能修改超级管理员的密码,超级管理员的密码只能由超级管理员自己去修改
- 普通⽤户修改密码,系统默认对密码⻓度等信息进行验证,如果不合法提示修改失败(如修改密码为 123 提示密码太短,修改失败
- root 超级管理员权限修改密码,密码⻓度可以任意设定,不进⾏验证(比如:修改密码为 123, 能够修改成功)
4. 退出登录用户exit
使用exit
命令执行退出操作
注意:exit
底层为栈结构,用户相当于元素,切换用户时遵循进栈和出栈规则。
5. 查看登录用户who
who
命令⽤于查看当前所有登录系统的⽤户信息。
这里涉及到ssh的知识,将在后面得Linux学习系列里边讲
6. 用户管理(添加、删除、修改)
这里主要涉及到三个文件:
- /etc/passwd :存储用户的关键信息(etc目录本来就是存储系统配置信息的目录)
- /etc/group:存储用户组的关键信息
- /etc/shadow:存储用户的密码信息
6.1 添加用户
在Ubuntu中有两种命令可以创建用户:
1):useradd [-options] 用户名
2):adduser [-options] 用户名
两者的区别是(在CentOS中没有区别):
useradd是一个linux命令,但是它提供了很多参数在用户使用的时候根据自己的需要进行设置;而adduser是一个perl 脚本,在使用的时候会出现类似人机交互的界面,提供选项让用户填写和选择,是更友好的前端(被Linux推荐使用)
所以接下来的一系列操作都是基于adduser [-options] 用户名
命令
注意:只有root用户才能将普通用户或用户组添加到系统中,所以在执行用户操作时,必须切换到root用户(passwd命令除外,因为普通用户可以设置自己的密码)
常用选项:
①创建一个普通用户,没有任何选项
adduser 用户名
,该操作执行后,系统会从1000后查看哪个可用,将可用数字作为该用户的uid(user id)。并且系统默认会自动创建一个与该用户同名的组(gid=uid),因为该命令没有添加任何选项,同时系统还会在/home/路径下创建该用户的主目录
如何去验证成功的创建一个用户(两种方法):
1 查看/etc/passwd文件,一般在最后一行,如果看到你创建的用户信息,则创建成功
2 查看/home/问价下是否有你创建的用户的主目录,若有则创建成功
简单介绍一下/etc/passwd文件的各个选项:
用户名:密码:UID:GID:注释:家目录:解释器shell
用户名:创建新用户名称
密码:此密码位置一般情况都是”X“,表示密码占位
UID:用户ID
GID:用户组ID
注释:解释该用户是做什么的
家目录:用户登录系统后默认的位置
解释器shell(bin/bash):等待用户进入系统之后,用户输入指令之后,该解释器会收集用户输入的指令,传递给内核处理
② --gid ID
:当创建组的时候,这个选项强制将组id设置为给定的数字;当创建用户时,这个选项会将用户分配到指定的用户主组。
注意:ID为数字,名字不行;可以通过/etc/passwd查看用所属的主组信息。
③ --ingroup GROUP
:将新用户添加到指定的组中,与--gid ID
不同的是,GROUP
为组名,不能是ID,且必须已经存在。
④--uid ID
:将用户的id设置为指定的ID值(注意不能重复的问题)
⑤adduser 已存在的用户名 已存在的用户组
:将已存在的用户添加到已经存在的用户组,此时用户组成为用户的附加组
**注意:**在/etc/passwd下查看用户的主组,在/etc/group下查看用户的附加组
6.2 修改用户
常用语法:usermod 选项 用户名
常用选项
-g
:指定用户的主组,选项的值可以为用户组的id,也可以是组名-G
:指定用户的附加组,选项的值可以为用户组的id,也可以是组名-u
:uid,用户的id-l
:修改用户名
6.3 删除用户
使用deluser --remove-all-files 用户名
彻底删除
7. 用户组管理(添加、修改、删除)
7.1 用户组的添加
使用groupadd [-options] 用户名
常用的选项有:
-g
:设置用户组的id
验证:查看/etc/group即可
7.2 用户组的修改
使用groupmod [-options] 用户组名
常用的选项有:
-g
:设置GID
-n
:修改用户组名字
7.3 用户组的删除
使用groupdel 用户组名
注意: 当如果需要删除一个组,但是这个组是某个用户的主组时,不允许删除;如果确实需要删除,则先从组内移除所有用户