Linux用户权限和管理

前言

Linux系统就好像一个庞大的工厂,里面有许许多多的领导,部门,员工,每个人都拥有不同的职责,所以linux系统支持多用户同时访问同一个系统的,每个访问者,都拥有不同的权限,就好比,领导相当于root超级用户,部门就相当于用户组,员工就相当于普通用户一样。

权限管理相关命令

sudo 命令:以 root 身份运行命令(暂时成为 root)
sudo后面加上你想要运行的命令,就相当于以root权限去执行了。

sudo 命令

sudo su 命令:不是暂时成为root,而是没有主动切换回来之前一直是root用户

sudo su

当我们需要进行对用户进行管理的操作时,就需要切换到root用户权限下进行了。

adduser 命令:添加新用户 (添加用户的时候默认就指定了跟用户名一样的用户组)
比如添加一个test1的用户,默认用户组也为test1

adduser test1 

passwd 命令:修改密码
用法也类似 adduser,只要在其后加上需要修改密码的那个用户名,

passwd test1

deluser:删除用户
删除用户连同home下的家目录也删除

 deluser --remove-home thomas

addgroup:创建群组

addgroup department1 

usermod 命令:修改用户账户

-l:对用户重命名,但是 /home 目录中的用户家目录名不会改变,需要手动修改;
-g:修改用户所在群组。此用户的家目录里的所有文件的所在群组会相应改变。
usermod -g test1 department1 

groups 命令 可以查看所属的一些组的相关信息

可以加入多个用户组

usermod -G department1,department2,department3,department4

如果你不想离开原先的群组,又想加入新的群组,可以在 -G 参数的基础上加上 -a 参数

usermod -aG good department2

delgroup 命令:删除群组

delgroup department1

chown 命令:改变文件的所有者

chown test1 file.txt

chgrp 命令:改变文件的群组

chgrp department1 file.txt

其实,chown 命令也可以改变文件的群组,用法如下:

chown test2:department2 file.txt

这句命令就把 file.txt 这个文件的所有者改为 test2,群组改为 department2 了。用法也很简单,就是在所有者和群组之间用冒号隔开。

chown 命令的 -R 参数非常有用

chown -R test2:department2  /home/test1

这样不但使/home/test1 这个目录的所有者和群组都变成 test2和department2 ,而且其子目录和子文件也都是如此:

chmod 命令:修改访问权限
通常我们通过命令ls 列出文件的列表时候,可以看见许多信息,其中就有drwx或者lrwx这种,其实它们是代表该文件所拥有的权限的
以下列出我们看到的字母的含义:

d:英语 directory 的缩写,表示“目录”。就是说这是一个目录;
l:英语 link 的缩写,表示“链接”。就是说这是一个链接;
r:英语 read 的缩写,表示“读”。就是说可以读这个文件;
w:英语 write 的缩写,表示“写”。就是说可以写这个文件,也就是可以修改;
x:英语 execute 的缩写,表示“执行,运行”。就是说可以运行这个文件。


第一组 rwx 表示文件的所有者对于此文件的访问权限;
第二组 rwx 表示文件所属群组的其他用户对于此文件的访问权限;
第三组 rwx 表示除前两组之外的其他用户对于此文件的访问权限。

通常这三个rwx分别代表 可读,可写,可执行,分别对应4 ,2 ,1三个数字。

—	0	0 + 0 + 0
r–	4	4 + 0 + 0
-w-	2	0 + 2 + 0
–x	1	0 + 0 + 1
rw-	6	4 + 2 + 0
-wx	3	0 + 2 + 1
r-x	5	4 + 0 + 1
rwx	7	4 + 2 + 1

例如,640 分别表示:

文件的所有者有读和写的权限;
文件所在群组的其他用户具有读的权限;
除此之外的其他用户没有任何权限。

用字母来分配权限:chmod 的相对用法

我们需要知道不同的字母代表什么:

u:user 的缩写,是英语“用户”的意思。表示所有者;
g:group 的缩写,是英语“群组”的意思。表示群组用户;
o:other 的缩写,是英语“其他”的意思。表示其他用户;
a:all 的缩写,是英语“所有”的意思。表示所有用户。

当然了,和这些字母配合的还有几个符号:

+:加号,表示添加权限;
-:减号,表示去除权限;
=:等号,表示分配权限。

#文件 file.txt 的所有者增加读和运行的权限。
chmod u+rx file.txt

#文件 file.txt 的群组其他用户增加读的权限。
chmod g+r file.txt 

#文件 file.txt 的其他用户移除读的权限。
chmod o-r file.txt 

#文件 file.txt 的群组其他用户增加读的权限,其他用户移除读的权限。
chmod g+r o-r file.txt 

#文件 file.txt 的群组其他用户和其他用户均移除读的权限。
chmod go-r file.txt 

#文件 file.txt 的所有用户增加运行的权限。
chmod +x file.txt 

#文件 file.txt 的所有者分配读,写和执行的权限;
#群组其他用户分配读的权限,不能写或执行;
#其他用户没有任何权限。
chmod u=rwx,g=r,o=- file.txt 

你可能感兴趣的:(Linux,linux,ubuntu,centos,服务器,运维)