Linux---05---用户组权限

课程回顾

  • vim编辑器

本章重点

  • 文件权限

  • 用户管理

  • 用户组管理

    一、文件权限

由于Linux是一个多人多任务的系统,因此经常会出现同一台机器同时有多个人进行操作,为了考虑每个人的隐私权以及每个人喜好的工作环境,所以文件的权限归属就至关重要。

为了保障系统的安全性和文件的隐私性,一个文件针对不同权限的账户有着不同的权限,如下图

如图所示,文件权限是由一个字符串所表示,其所代表的含义为

其中,文档类型有如下表示方法:

  • d :目录,例如上表档名为『.gconf』的那一行;

  • -:文档,例如上表档名为『install.log』那一行;

  • l :连结档(link file);b :装置文件里面的可供储存的接口设备(可随机存取装置);

  • c : 装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。

权限由rwx三个字幕表示,分别表示为可读、可写、可执行,如果没有该权限,则用“ - ”表示,对于目录来说,必须有x权限,否则无法读取目录内容

如果文件名前面有“ . ”,则表示这个文档或目录是隐藏的

二、用户和用户组

2.1 分类

超级用户:root

普通用户

2.2 查看用户信息

当前系统中的用户组信息

vim /etc/group
或者
cat /etc/group

注意:  

  1. 当该组内只有一个用户,并且用户名和组名相同时,在组列表中,包含用户一列可以为空

  2. 系统中root分组的组编号一定为0

  3. 组号1~499为系统预留的组编号,一般是预留给系统安装的软件或者服务的编号,越早安装的软件或者服务的组编号约早。用户手动创建的用户组编号从500开始

  4. 组密码占位符,无一例外,全部用x表示

当前系统中用户组的密码信息

vim /etc/gshadow

注意:

  1. 如果组密码处为“*” “!”或者为空时候,则该组没有密码

  2. 如果组管理者为空,则表示该组内所有成员都可以管理该组

当前系统中所有的用户信息

/ect/passwd

注意:在linux中,超级管理员root的用户编号一定为0

当前系统中所有用户的密码信息

/ect/shadow

注意:密码是一个单向加密过的字符串

2.3 用户操作

2.3.1 创建用户

命令格式:

useradd [参数] 用户名

参数:

  • -d:设置该用户的home目录,默认在home/用户名

例如:useradd -d /home/helloworld hello //新建hello用户,并且将其home目录设置为/home/helloworld

  • -u:设置其userid,默认自动生成

例如:useradd -u 668 hello //新建一个hello用户,将他的id设置为668

  • -g:设置其主组,默认自动添加一个同名的用户组

例如:useradd -g root hello //新建一个hello用户,并将其假如root组

  • -m:生成home目录的文件夹

useradd zhangsan

注意:

  1. 会在/etc/passwd文件中添加xxx用户的信息

  2. 会在/etc/group文件中添加一个名为xxx的用户组信息

  3. 会在/home路径下创建一个同名的文件夹,作为家目录

        

2.3.2 修改用户信息

命令格式:

usermod [参数] 用户名

参数:

  • -l :修改新用户名

​ 例如:usermod -l helloworld hello 将hello用户名改为helloworld,但其home目录不改变

  • -u :修改用户的userid

​ 例如:usermod -u 888 hello 将hello的userid改为888

  • -d :修改用户的home目录,不声明,默认在/home/用户名

  • -g :修改用户的主用户组,不声明,创建同名的用户组

  • -L :锁定用户,使其不能登录

  • -U :解除锁定

2.3.3 删除用户

命令格式:

userdel [参数] 用户名

参数:

  • -r 删除用户的同时将其home目录也删掉

2.3.4 设置密码

passwd 用户名
[root@localhost ~]# passwd test1
Changing password for user test1.
New password: 
BAD PASSWORD: The password is shorter than 8 characters
Retype new password: 
passwd: all authentication tokens updated successfully.

2.3.5 切换用户

[root@localhost ~]# su 用户名

2.4 用户组操作

2.4.1 创建用户组

groupadd 组名

2.4.2 修改用户组

groupmod -n 新组名 旧组名   //修改组名
​
groupmod -g 新组id 旧组id 修改组ID

2.4.3 删除用户组

groupdel 组名

三、权限管理

root 0:root 0

sn 1000 :sn 1000

test2 1002 : sn 1000

test1 1001 :test1 1001

3.1 chmod命令

修改权限

  • 读:r | 4

  • 写:w | 2

  • 执行:x | 1

  • 没有:-

chmod 参数 文件名|文件夹名

可以使用如下方法直接设置文件的权限

使用rwx

用户|用户组|其他用户分别设置权限

chomd 用户+权限 文件
  • 所有者(u) ,组(g) ,其他用户(o) ,全部(a)

  • 新增(+), 撤销(-)

# 文件所有者新增写的权限
chmod u+w 1.txt
​
# 文件所有者撤销写的权限
chmod u-w 1.txt
​
# 其他用户新增读的权限
chmod o+r 1.txt
​
# 所有都新增读的权限
chmod a+r 1.txt

使用数字

  • 读:4

  • 写: 2

  • 执行: 1

0~7:0(没权限),1(执行),2(写),3(写执行),4(读),5(读执行),6(读写),7(读写执行)

chmod 123 文件
  • 1:所有者的权限

  • 2:组的权限

  • 3:其他用户的权限

# 所有者执行权限,组写权限,其他用户写执行权限
chmod 123 1.txt
​
chmod 755 1.txt
​
chmod 777 1.txt

                3.2 chown命令

change owner 的缩写

改变文档所有者,可使用参数 -R使得其子目录也同时修改

chown username 文件名
​
# 同时修改文档或目录的拥有者和所在组
chown username:group 文件名 

3.3 chgrp命令

change group的缩写

改变文档所有组,可使用参数 -R使得其子目录也同时修改

chgrp 组的名字 文件名

修改文件的所属组 以及对应的子目录的所属组

四、sudo命令

4.1 作用

一般用在非root用户下,临时提升非root用户的权限。

sudo 是一个在 Linux 系统中用于执行特权命令的超级用户工具。sudo 命令默认安装在大多数 Linux 发行版中,它可以允许用户以 root 用户权限执行某些命令,只需在 linux 系统/etc/sudoers文件中配置用户和组执行 sudo 命令的权限,root 用户默认配置 sudo 权限。

4.2 sudo 命令的使用

sudo 命令

普通用户使用 sudo 命令需要输入 password 确认是否执行特权命令,而 root 用户使用 sudo 命令不需要输入 password, 因为在 /etc/sudoers 文件中默认配置,允许 root 用户可以在系统任何地方执行任何命令。

# 查看版本信息
sudo -V
​
# 以root身份使用useradd命令创建cat用户
sudo -u root useradd cat
​
# 更改用户密码:
sudo passwd user
​
# 更改用户组:
sudo usermod -G group user
​
# 更改用户主目录的权限:
sudo chown -R user:group /home/document
​
# 更改文件所有者和所属组
sudo chown user:group /home/file
​
# 更改文件权限
sudo chmod -R 755 /home/file

4.3 普通用户

普通用户不能直接使用

# 方法1:使用 root 用户编辑 /etc/sudoers 文件,将用户名添加到 %wheel 组中。
# 例如:%hzk  ALL=(ALL) ALL
%用户名 ALL=(ALL) ALL
​
# 方法2:使用 root 用户编辑 /etc/sudoers 文件,将用户添加到 %wheel 组中,设置不需要密码。
# 例如:%hzk  ALL=(ALL) NOPASSWD: ALL
%用户名 ALL=(ALL) NOPASSWD: ALL

 

让所有的用户都可以使用sudo的命令

  • 19
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值