linux:权限

Posted on 2024-05-18 23:48  玄灵镜  阅读(5)  评论(0编辑  收藏  举报

  在使用windows系统时我们可以在文件资源管理器中找到用户目录,一般个人计算机只有一个用户,就是计算机拥有者,个人使用计算机也没有创建多个用户的需求场景,但是不妨碍它存在,不同用户的权限不同,比如有些目录的读写操作只有管理员才可以使用,而普通用户使用时会被拒绝,这就是管理员用户与普通用户的权限不同造成的,

  权限的功能内容通常适用于多人共同协作一个项目时,需要有管理方便管理,防止一些意外或者恶意的操作导致损失.

  linux中通过adduser命令来添加新用户,设置密码后便可以用这个新用户登陆系统.linux中也有超级用户,被称为root用户,root用户拥有整个linux的最高权限,这也是十分危险的,因为它不受拘束.

  当系统配置文件正确时普通用户也可以通过在命令前加sudo来获取root权限,来越级执行命令,只不过需要输入当前用户密码,并i切且将当前用户配置进/etc/sudousr文件中.也可以使用su命令将权限提升为管理员权限,

  linux中一个文件的权限有三个分别为读r写w执行x,一个文件也分为所属者,所属组,和其他人,这三者分别独立拥有读写运行权限,

   如图,=,这个git文件所属者为xuanlingjing,拥有读写运行权限,所属组为xuanlingjing,拥有读写运行权限,其他人只拥有读权限和运行权限,对于目录文件,读权限表示可以查看目录中的文件内容,写权限表示可以修改目录下的文件,可执行表示可以进入这个目录,这是不一样的,例如如果一个用户只有读权限r却没有执行x权限,那么这个用户可以进入这个目录但是看不到内容.反之则直接进不去这个目录,更不用谈查看目录下的内容了.

  windows中区分一个文件类型通常时文件的后缀名,而linux系统中文件后缀名并不重要,重要的是使用ll查看文件属性行首的字母来区分文件类型 -表示普通该文件,d表示目录,l表示链接文件,需要注意的是linux系统不注重后缀名不代表一些第三方应用不看这个例如g++编译器,可能就看这个,后缀名变了可能就不认识了.

  一个文件的权限是可以修改的但是只能时超级用户或者文件的所有者可以修改,其他人改不了,修改文件的命令是chmod +选项 +文件名.例如:chmod u+x +filename表示给filename文件的拥有者加上可执行权限,g+x为操作所属组权限,o+x表示操作其他人权限,特别的a+x|w|r表示同意对文件的拥有者,所属组,其他人一起修改权限.

  linux文件权限属性中有一个叫所属组的东西,这是为了一个项目文件夹同时有多个人同时操作时多个用户同时需要这个文件的权限,那么只需要将这些需要权限的用户加入到这个所属组中便可拥有与所属组中同样描述的权限.

  当一个文件被创建时普通文件的权限时666目录文件的权限是777,777表示三个三位二进制数,例如4表示最高位为1,2表示次高位为一,1表示最低位为一,如果权限为5表示这个文件的r和x权限被允许,这样就可以用一个数字表示一个文件的权限情况了,因此修改文件权限也可以使用chmod 777 filename来直接设置文件权限,(umask权限掩码)通过按位取反后做按位与运算来决定文件的最终权限.

  粘滞位:只对目录文件有效,目录拥有者通过chmod +t dir来对目录进行粘滞位设置,设置之后的目录别的用户是无法删除拥有粘滞位目录下的文件的,用来避免权限不合理的情况下删除文件的情况.

  

  

  

Copyright © 2024 玄灵镜
Powered by .NET 8.0 on Kubernetes