用户管理

用户管理

注意:创建用户/删除用户/修改其它用户密码的终端命令都需要通过sudo执行

useradd:添加新用户

1
2
3
4
# -m:自动创建用户家目录
# -g:指定用户所属的组,否则会建立一个与用户名同名的组
# 若忘记使用-m选项添加用户家目录,最快的方式是删除该用户,然后重新创建
sudo useradd -g 组名 -m 新用户名

passwd:设置用户名密码

1
2
3
4
5
6
# 用户信息保存在/etc/passwd文件中
cat /etc/passwd | grep [用户名]
# 修改其它用户
sudo passwd [用户名]
# 修改自己的密码
passed

userdel:删除用户

1
2
# -r:会自动删除用户的家目录
sudo userdel -r [用户名]

查看用户信息

id:查看用户的UID和GID信息

1
2
3
# uid:表示用户代号,存放在/etc/passwd文件中
# gid:表示用户所属的主组代号,存放在/etc/group文件中
id [用户名]

passwd:文件中信息用:进行分割(共7个信息),从左到右信息依次如下:

image-20200615220904401

1
2
3
4
5
6
7
wuxiang:表示的是登录的用户名
x:表示该用户的登录密码使用加密的方式
UID:是该用户的用户标识
GID:是该用户所属的主组的标识,对应/etc/group文件中的id
wuxiang:表示用户全名/本地账户
/home/wuxiang:表示的是该用户的家目录路径
/bin/bash:表示登录时所使用的shell,也就是登录后所使用的终端命令,ubuntu中默认使用的时bash

group:文件中的信息用:分割(共4个信息),从左到右依次如下:

image-20200615235723430

1
2
3
4
wuxiang:表示的是组名
x:表示用户信息为加密的
1000:表示组的标识
最后一个:冒号只有的内容表示的是其它用户附加在该组里面的

who:查看当前所有登录的用户列表

1
who

whoami:查看当前登录用户的用户名

1
whoami

usermod:设置用户主组/附加组/登录shell

1
2
3
4
5
6
7
# /etc/group中最后一列表示该组的用户列表,用于指定用户的附加权限,这个称之为附加组
# 修改用户的主组信息(passwd中的gid)
usermod -g 组 用户名
# 修改用户的附加组
usermod -G 组 用户名
# 修改用户登录的shell, ubuntu默认的是dash,这个再windows下不好使用,所以修改为bash更好
usermod -s /bin/bash 用户名
1
2
# 默认使用useradd添加的用户是没有sudo权限的
usermod -g sudo 用户名

which:查看执行命令所处的位置

1
which 命令名称
1
2
3
4
5
6
7
# 程序存放目录有bin、sbin之分
# /bin:是二进制执行文件目录,主要用于具体应用
# /sbin:是系统管理员专用的二进制代码存放目录,主要用于系统管理
# /usr/bin:后期安装的一些软件
# /usr/sbin:超级用户的一些管理软件

# cd命令是写在内核里面的,无法通过which定位其位置

su:切换用户

1
2
3
4
# -:携带-号可以切换到用户的家目录,不带则保持位置不变
# su之后不携带用户名则直接切换到root用户
su - 用户名
exit

修改文件权限

注意:以下用户修改都需要通过sudo权限

chown:修改文件/目录拥有者

1
chown 用户名 文件名|目录

chgrp:修改文件/目录所属于的组

1
2
# -R:表示递归修改文件/目录所属的组
chgrp -R 组名 文件名|目录

chmod:修改文件/目录权限

1
2
# -R:表示递归修改文件/目录对应的各个用户所拥有的权限
chmod -R 755 文件名|目录

作业

  1. 添加一个新用户组:shuai

  2. 添加一个新的用户:shuai,并自动创建其家目录,将其默认组设置为shuai

  3. 设置新添加的用户shuai的密码:qwer1234

  4. 设置当前用户的密码:qwer1234

  5. (问答)如新增新的用户时,没有自动创建其家目录,最快的办法为其添加一个家目录的方式是什么

  6. (问答)系统的配置文件存放的文件是那个,系统所有用户的个人信息存放的文件是哪个

  7. 打印出/etc/passwd信息,需通过grep筛选出当前用户信息

  8. 打印出当前用户的UID和GID信息

  9. (问答)依次解答下图中每个值所代表的含义

    image-20200615220904401

  10. (问答)依次解答出下图中绿色框选的值所代表的含义

    image-20200616001030666

  11. 打印出当前所有登录该系统的用户

  12. 打印当前窗口所登录的用户

  13. 在第二题基础上,修改用户”shuai”的用户组为”wuxiang”。

  14. 在第13题基础上,将用户”shuai”添加到附加组”wuxiang”上。

  15. 在第13题基础上,将用户”shuai”的远程登录程序修改为bash。

  16. (问答)ubuntu系统中通过useradd命令添加的用户,其默认使用的远程方式是什么。

  17. (问答)请简述将用户”wuxiang”添加到组”sudo”的详细命令。

  18. 终端窗口中请打印出ls命令所处的具体位置

  19. (问答)请简述ubuntu系统中/bin、/sbin、/usr/bin、/usr/sbin文件夹中存放的具体是什么内容

  20. (问答)在终端中无法通过which命令查询到”cd”命令所处的位置,这是为何。

  21. 从当前用户切换用户到”shuai”,并且同时切换到其家目录

  22. 在21题基础上退出登录”shuai”

  23. 修改文件夹”please”的拥有者为”shuai”

  24. 在第1题基础上,递归修改文件夹”please”所属的组为”shuai”

  25. 在第24题基础上,递归修改”please”文件夹的权限为:u-rwx,g-rw,o-x

  26. 在第23题基础上,将文件夹”please”的拥有者修改为”wuxiang”,在第24题基础上将文件夹“please”的所属组修改为”wuxiang”,在第25题基础上将文件夹”please”的权限修改为:u-rwx,g-rwx,o-rx,之后删除用户:shuai,需一并删除其家目录,然后再删除用户组:shuai。