3.用户管理 终端命令
提示:创建用户/删除用户/修改其他用户密码的终端命令都需要通过sudo
执行
3.1创建用户/修改密码/删除用户
序号 | 命令 | 作用 | 说明 |
---|---|---|---|
01 | useradd -m -g 组 新建用户名 | 添加新用户 | * -m自动建立用户家目录 * -g 指定用户所在的组,否则会建立一个和同名的组 |
02 | passwd 用户名 | 设置用户密码 | 如果是普通用户,直接用password 可以修改自己账户密码 |
03 | userdel -r 用户名 | 删除用户 | -r 选项会自动删除用户家目录 |
04 | cat/etc/passwd | grep 用户名 | 确认用户信息 | 新建用户后,用户信息会保存在/etc/passwd文件中 |
提示:
- 创建用户时,如果忘记添加
-m
选项指定新用户的家目录--最简单的方能股份就是删除用户,重新创建 - 创建用户时,默认会创建一个和用户名同名的组名
- 用户信息保存在/etc/passwd文件中
3.2查看用户信息
序号 | 命令 | 作用 |
---|---|---|
01 | id[用户名] | 查看用户UID和GID的信息 |
02 | who | 查看当前所有登录的用户列表 |
03 | whoami | 查看当前登录用户的账户名 |
passwd文件
/etc/passwd
文件存放的是用户的信息,由6个分号组成的7个信息,列分别是
1.新建用户名
2.密码(x,表示加密的密码)
3.UID(用户标识)
4.GID(组标识)
5.用户全名或本地账号
6.家目录
7.登录使用的Shell,就是登录之后,使用的终端命令,ubuntu
默认是dash
查看当前用户的信息只用输入id
即可:
下图中的(:0)
登录地址为当前计算机
用Shell实现多用户登录
再回到Ubuntu就可以看到多用户who
,下图就是用Shell登录的张三的用户,时间以及ip地址
usermod
usermod
可以用来设置用户 的主组/附加组合登录Shell ,命令格式如下:- 主组:通常在新建用户是指定,在
etc/passwd
的第4列GID对应的组 - 附加组:在
etc/group
中最后一列表示该组的用户列表,用于指定用户的附加权限
提示:设置了用户的附加主之后,需要重新登录才能生效!
#修改用户的主组(passwd 中的GID)
usermod -g 组 用户名
#修改用户的附加组
usermod -G 附加组 用户名
#修改用户登录 Shell
usermod -s /bin/bash
*注意:默认使用useradd
添加的用户是没有权限使用sudo
以root
usermod -G sudo 用户名`
后面的python表示用户名,而前面的附加组比如:adm,cdrom等都是python用户所具有的权限
像zhangsan
的用户就没有附加组的权限:
给zhangsan
添加附加组:
which(重要)
提示
/etc/passwd
是用于保存用户信息的文件/usr/bin/passwd
是用于修改用户密码的程序
which
命令可以查看执行命令所在位置,例如:
which ls
#输出
#/bin/ls
which useradd
#输出
#/usr/sbin/useradd
执行后如下: 其中rws
的s
表示__可执行权限__
bin 和 sbin
- 在
Linux
中,大多数可以执行文件都保存在/bin
、/sbin
、/usr/bin
、/usr/sbin
/bin
(binary
)是二进制执行文件目录,主要用于具体应用/sbin
(system binary
)是系统管理员专用的二进制存放目录,主要用于系统管理/usr/bin
(user commard dor applications
)后期安装的一些软件/usr/sbin
(super user commands for applications
)禅机用户的一些管理程序
提示:
*cd
这个终端命令是内置在系统内核中的,没有独立的文件,因此用which
无法找到cd
命令的位置
3.3 切换用户
序号 | 命令 | 作用 | 说明 |
---|---|---|---|
01 | su -用户名 | 切换用户,并且切换目录 | -可以切换到用户家目录,否则保持位置不变 |
02 | exit | 退出当前登录账户 |
su
不接用户名,可以切换到root
,但是不推荐使用,因为不安全exit
示意图如下:
3.4 修改文件权限
序号 | 命令 | 作用 |
---|---|---|
01 | chown | 修改拥有者 |
02 | chgrp | 修改组 |
03 | chmod | 修改权限 |
注意:操作文件夹,需要另外加R
的命令
*命令格式如下:
# 修改文件|目录拥有者 “|”是或者的意思
chown 用户名 文件名|目录名
#递归修改文件|目录的组
chgrp -R 组名 文件名|目录名
#递归修改文件权限,操作文件夹
chmod -R 755 文件名|目录名
chmod
在设置权限时,可以简单第使用三个数字分别对应__拥有者/组__和__其他__用户的权限
# 直接修改文件|目录的 读|写|执行 权限,但是不能精确到 拥有者|组|其他
chmod +/-rwx 文件名|目录名
- 常见数字组合有(
u
表示用户/g
表示组/o
表示其他): 777
===>u=rwx,g=rwx,o=rwx
755
===>u=rwx,g=rx,o=rx
644
===>u=rw,g=r,o=r
例子:
操作文件夹:需要有R