Linux的限权控制

书是世界宝贵财富,是国家和历史的优秀遗产。                     

                                 ——梭罗《瓦尔登湖》

一 认识root用户

 

1.root,超级用户管理员

无论是windows,Macos,Linux系统等,都会有一个超级用户,在Linux中有最大限权的用户为root用户(就是老大,哈哈哈哈),我们平常登录的都是普通用户(就是个打工的,哈哈)。

两者最大的区别就是限权的大小,例如普通用户在Linux的根目录根本创建不了文件

例如:在根目录创建文件

8d26f5fc82f749528debd381fedf779a.png

 

2.root用户的切换

su命令(Switch User)和exit命令,就是切换到用户的命令,语法:su [-] 用户名

-:选项可选,是否在切换用户后加载环境变量,建议带上

用户名:如果不写默认切换到root用户,带上就切换到指定的用户

切换用户后,可以通过exit命令退回上一个用户,也可以通过快捷键:ctrl+d

(注意:普通用户到其他用户要输入密码,root用户切换到普通用户不需要)

例如:

03d2a2b4664a43d2b72e86c14302d5ad.png

 

虽然说root拥有非常大的权限,但是不建议长期使用,因为如果输入一个错误的指令可能这个系统就损坏了,所有说我们可以用sudo这个命令来为普通用户零时授权,临时以root用户来执行权利。

sudo 命令

作用:为普通用户临时授权root用户的权利

语法:sudo 其他命令

注意:并不是所有的用户都有权利使用sudo命令,它需要普通用户配置sudo认证

例如:用sudo命令在根目录创建一个文件,不需要输入密码了,直接就创建成功

e2cb041e741f47e0a4366ad64987a733.png

 

配置sudo认证:切换root用户,运行指令visudo,打开文件后在最后面添加一行(按a):用户名 ALL = (ALL) NOPASSWD:ALL ,写好后按ESC,在按:qw指令保存退出即可。

 

二 用户,用户组管理

Linux可以支持多用户,多用户组,用户加入多组的模式

Linux限权管控级别可以分为用户级别和用户组级别(就是一个权限这个用户可以使用,那个不可以;或者这个组里面的用户可以,那个组里面的用户不可以等等)

68f0995f159247c39bc8ea0061e26a82.png

 

用户组(聚集很多用户的,vip会员就是用到这个原理的) 

创建用户组

语法:groupadd 用户组名

 

删除用户组

语法:groupdel 用户组名

de8e088f41fa4dbaa6f02af2ab1a4095.png

 

 

用户(我们当前登录进去的账户) 

 

增加用户

语法:useradd [-g -d] 用户名

选项:-g表示指定用户的组名,组名要已经存在,如果不指定-g,在创建用户时会自动创建一个与用户同名的用户组

-d表示指定HOME用户路径,就是指定这个用户在HOME目录下的哪里,如果不指定会自动在默认目录:/home/用户名

例如:创建一个指定用户组(Onegroup)的用户(user1)

25c248045b1b4908b5e991e21bd79e89.png

 

删除用户

语法:userdel [-r] 用户名

选项:-r表示删除用户的HOME目录,不使用则删除用户的时候HOME目录下保留的该用户的目录不会被删除

例如:删除上面创建的user1用户(home目录也删除)

8aad3e7689bc40549deeda8f0d7a7303.png

 

查看用户所属组

语法:id [用户名]

参数:用户名为被查看的用户名称,如果不写就是当前的用户

例如:查看超级用户root的组别

f9d4221178974b7ab51cb2aa67e358c2.png

 

修改用户所属组

语法:usermod -aG 用户组 用户名

表示将指定的用户加入指定的用户组

例如:将用户user1,加入到root组里面 

419b16a29a4841099364c98b8fec9d5b.png

 

getent命令

该命令用于查看当前系统的所有用户

语法:getent passwd

查到的信息分为7组:用户名:密码(x):用户ID:组ID:描述信息:HOME目录:执行终端(默认bash)

例如:有一些是系统默认带的用户很多,不用管

4743d442814c4d8c8f360a9d25debce2.png

 

三 查看限权控制

 

命令ls -l 列出的权限信息查看

73ab73465c174a12a1555c08a0e9c353.png

 

红色框表示文件,文件夹的限权控制信息

绿色表示文件,文件夹属于这个用户

紫色表示文件,文件夹属于这个用户组

接下来我们再来解析一下红色框里面的细节,它总共分为10个信息,如图

f4a714b7847e45f88c35b94818b209d3.png

 

所属用户权限就是这个文件只能被这个用户使用这些权限

r:表示读

w:表示写

x:表示执行

-:表示没有的意思

例如:

02b1d13c10d443e791a319b9e73c9c7e.png

 

d表示是一个文件夹,rwx表示所属用户chenlian可以对该文件夹读写执行操作,r-x表示chenlian这个用户组对该文件夹读和执行,r-x表示其他用户对该文件只能读和执行。就是这么简单!

 

四 修改限权控制

 

chmod命令

作用:它是一个修改文件或文件夹的限权细节的

限制:修改的文件只能是属于该用户或root用户才可以使用这个命令

语法:chmod [ -R ] 限权 文件或文件夹

选项-R表示文件夹里面的内容也一起修改(注意限权写法为u=?,g=?,o=?;u表示user,g表示group,o表示other)

例如:修改one.txt的限权为所有只读,你看全部都为只读啦

26acccbf9c85401a9ad10b9463d0d13e.png

 

相比上面那种方法,写限权的时候有一点麻烦,那有没有一种简单的方法来实现修改限权呢

使用限权数字序号来表示限权,r就代表4,w就代表2,x就代表1,这是个是最基础的,其他的限权都用这三个加起来,如下图

481f091a6db3499c96a9308f966653db.png

 

比如 721就表示u是7(7为3+4,读写执行),g是2(只有写限权),o是1(只有执行限权)

例如:使用数字限权来修改权限信息(绿色表示为所有权限所有用户都可使用)

fbcdca54b70f47f0a33041911854ef93.png

 

五 修改限权控制

 

chown命令

作用:用于文件,文件夹所属的用户或用户组(注意普通用户无法修改所属用户和用户组,只能用root用户修改,所以说这个指令适用于root用户)

语法:chown [ -R ] [用户] [:] [用户组] 文件或文件夹

-R:表示文件夹里面的内容也一起修改

:表示用于分割用户和用户组的

举例:chown root one.txt 表示把one.txt这个文件的所属用户修改为root

chown :root one.txt表示把one.txt这个文件的所属用户组修改为root组了

例如:修改one.txt文件为root用户,root用户组(这里我用了sudo命令)

c7da1e2c5ea64c37abfbf22d99fa6a9c.png

 

当然啦,看再多不如自己动手练一遍,今天就分享到这里啦!

7ac11ccd100944c8841f55274ceb9536.jpg

 

  • 16
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值