当前位置: 首页 > Linux

linux主题的文件系统权限

时间:2023-04-06 03:44:58 Linux

[TOC]用户与群组文件拥有者群组:只有本群组的文件才能使用其他:其他群组的人文件权限drwxr-xr-x。4rootroot31Oct400:54zhanghaodrwxr-xr-x:第一个字符d:表示文件类型d:目录-:文件l:链接文件b:随机存储设备c:键盘等一次性读取设备第一组rwx:表示文件所属用户的使用权限,rwx表示读、写、执行第二组r-x:表示用户组权限第三组r-x:表示其他人的权限4:表示多少文件链接到这个i-noderootroot:文件属于Master和grouptime:可以使用ls-l--full-time来显示文件创建时间的可读时间文件权限解决方案示例:假设test1,test2,和test3属于组testgroup,如果有下面两个文件,请说明这两个文件的属主和权限是什么?-rw-r--r--1rootroot238Jun1817:22test.txt-rwxr-xr--1test1testgroup5238Jun1910:25ping_tsai答案:文件test.txt的所有者是root并且属于该组是根。至于权限,只有root账户可以访问这个文件,其他人只能读取这个文件;文件所有者test1[rwx]可以在此目录中执行任何操作;另一个文件ping_tsai是test1的所有文件,它所属的组是testgroup。其中:test1对该文件具有可读、可写、可执行的权限;而同组的test2、test3和test1也是testgroup的组账号,只能读和执行不能写(即不能修改);至于其他没有加入测试组的人,只能读,不能写,不能执行!而testgroup[r-x]组的账号,如test2、test3,也可以进入该目录工作,但不能在该目录下写;*至于其他权限,虽然[r--]有r,但是因为没有x权限,其他人的用户是不能进入这个目录的![zhanghao@zhanghao-server~]$cd/home/test1/-bash:cd:/home/test1/:权限被拒绝[zhanghao@zhanghao-server~]$ls[zhanghao@zhanghao-server~]$exitlogout[root@zhanghao-servertest1]#su-test2[test2@zhanghao-server~]$cd/home/test1/-bash:cd:/home/test1/:Permissiondenied[test2@zhanghao-server~]$ll/home/test1/ls:无法打开目录/home/test1/:权限被拒绝[test2@zhanghao-server~]$exitlogout[root@zhanghao-servertest1]#ll/home/total0drwx------.3test1test95Oct403:54test1drwx------。2test2test83Oct403:55test2drwx------。2zhanghaozhanghao83Oct403:55zhanghao从上面看,test1和test2虽然属于同一个测试组,但是/home下的目录对该组没有任何权限,给组一个读权限[root@zhanghao-服务器测试1]#chmod0611/home/test1[root@zhanghao-servertest1]#su-test2Lastlogin:ThuOct403:55:27EDT2018onpts/0[test2@zhanghao-server~]$cd/home/test1/[test2@zhanghao-servertest1]$lsls:cannotopendirectory.:Permissiondenied从上面可以看出其他用户对test1目录下没有任何读写权限,没办法ls,touchcd属于执行权限[root@zhanghao-serverhome]#chmod755test1[root@zhanghao-serverhome]#ll-htotal0drwxr-xr-x。3test1test95Oct403:54test1drwx------.2test2test83Oct403:55test2drwx------。2zhanghaozhanghao83Oct403:55zhanghao[root@zhanghao-serverhome]#su-test2Lastlogin:ThuOct403:58:41EDT2018onpts/0[test2@zhanghao-server~]$cd/home/test1[test2@zhanghao-servertest1]$lstest[test2@zhanghao-servertest1]$touchnihaotouch:cannottouch'nihao':Permissiondenied[test2@zhanghao-servertest1]$cdtest/[test2@zhanghao-servertest]$lsnihao[test2@zhanghao-servertest]$catnihaootest1cat:o:没有那个文件或目录[test2@zhanghao-servertest]$catnihaotest1[test2@zhanghao-servertest]$vimnihao-bash:vim:commandnotfound[test2@zhanghao-servertest]$vinihaovim保存并显示只读文件。无法触摸,修改文件权限chgrp:修改文件组chown:修改文件属主chmod:修改文件权限,SUID,SGID,SBITchgrp/zhanghao目录,其他人权限为0,在zhanghao新建用户zhtest组,你可以有执行和读权限,不能写。[zhanghao@zhanghao-serverhome]$touchzhanghao[zhanghao@zhanghao-serverhome]$exitlogout[root@zhanghao-server~]#su-test1Lastlogin:ThuOct403:53:52EDT2018onpts/0[test1@zhanghao-server~]$cd/home/[test1@zhanghao-serverhome]$lsnihaotest1test2zhanghao[root@zhanghao-server/]#chmod0750/zhanghao/[root@zhanghao-server/]#ll/总共24lrwxrwxrwx。1rootroot7Oct300:14bin->usr/bindr-xr-xr-x。4rootroot4096Oct304:00bootdrwxr-xr-x。19rootroot3160Oct402:29devdrwxr-xr-x。80rootroot8192Oct403:55etcdrwxr-xr-x。5rootroot61Oct404:09homelrwxrwxrwx。1rootroot7Oct300:14lib->usr/liblrwxrwxrwx。1rootroot9Oct300:14lib64->usr/lib64drwxr-xr-x。2rootroot2016年3月10日6mediadr-xr-xr-x。9rootroot40962017年7月11日mntdrwxr-xr-x。2rootroot2016年3月10日6optdr-xr-xr-x。106rootroot0Oct323:55procdr-xr-x---。3rootroot147Oct400:17rootdrwxr-xr-x。26rootroot80010月400:20运行lrwxrwxrwx。1rootroot8Oct300:14sbin->usr/sbindrwxr-xr-x。2root2016年3月10日6srvdr-xr-xr-x。13rootroot010月3日23:55sysdrwxrwxrwt。11rootroot4096Oct403:26tmpdrwxr-xr-x。13rootroot155Oct300:14usrdrwxr-xr-x。19rootroot267Oct303:55vardrwxr-x---。4zhanghaozhanghao31Oct400:54zhanghao[root@zhanghao-server/]#su-test1Lastlogin:ThuOct404:18:33EDT2018onpts/0[test1@zhanghao-server~]$lstest[test1@zhanghao-server~]$cd/zhanghao/-bash:cd:/zhanghao/:权限被拒绝[test1@zhanghao-server~]$[root@zhanghao-server/]#useraddzhtest-gzhanghao[root@zhanghao-server/]#su-zhtest[zhtest@zhanghao-server~]$cd/zhanghao/[zhtest@zhanghao-serverzhanghao]$lstesttest1[zhtest@zhanghao-serverzhanghao]$touchniahotouch:无法触摸'niaho':权限denied修改组权限将/更改zhanghao目录的组权限为test,使test组下的用户test1有读取和执行权限[root@zhanghao-server/]#chgrptest/zhanghao[root@zhanghao-server/]#ll-htotal24Klrwxrwxrwx.1rootroot7Oct300:14bin->usr/bindr-xr-xr-x。4rootroot4.0KOct304:00bootdrwxr-xr-x。19rootroot3.1KOct402:29devdrwxr-xr-x。80rootroot8.0KOct404:21etcdrwxr-xr-x。6rootroot75Oct404:21homelrwxrwxrwx。1rootroot7Oct300:14lib->usr/liblrwxrwxrwx。1rootroot9Oct300:14lib64->usr/lib64drwxr-xr-x。2rootroot2016年3月10日6mediadr-xr-xr-x。9rootroot4.0K2017年7月11日mntdrwxr-xr-x。2rootroot2016年3月10日6optdr-xr-xr-x。106rootroot0Oct323:55procdr-xr-x---。3rootroot147Oct400:17rootdrwxr-xr-x。26rootroot800Oct400:20runlrwxrwxrwx。1rootroot8Oct300:14sbin->usr/sbindrwxr-xr-x。2root2016年3月10日6srvdr-xr-xr-x。13rootroot010月3日23:55sysdrwxrwxrwt。11rootroot4.0KOct403:26tmpdrwxr-xr-x。13rootroot155Oct300:14usrdrwxr-xr-x。19根根26710月3日03:55vardrwxr-x---。4zhanghao测试31Oct400:54zhanghao[root@zhanghao-server/]#su-test1Lastlogin:ThuOct404:19:58EDT2018onpts/0[test1@zhanghao-server~]$cd/zhanghao/[test1@zhanghao-serverzhanghao]$lstesttest1[test1@zhanghao-serverzhanghao]$touchnihaotouch:cannottouch'nihao':Permissiondeniedchown修改文件持有者[root@zhanghao-server/]#chown-Rroot:root/zhanghao[root@zhanghao-server/]#ll/total24lrwxrwxrwx.1rootroot7Oct300:14bin->usr/bindr-xr-xr-x。4rootroot4096Oct304:00bootdrwxr-xr-x。19rootroot3160Oct402:29devdrwxr-xr-x。80rootroot8192Oct404:21etcdrwxr-xr-x。6rootroot75Oct404:21homelrwxrwxrwx。1rootroot7Oct300:14lib->usr/liblrwxrwxrwx。1rootroot9Oct300:14lib64->usr/lib64drwxr-xr-x。2rootroot2016年3月10日6mediadr-xr-xr-x。9rootroot40962017年7月11日mntdrwxr-xr-x。2rootroot2016年3月10日6optdr-xr-xr-x。107rootroot0Oct323:55procdr-xr-x---。3根root147Oct400:17rootdrwxr-xr-x。26rootroot800Oct400:20runlrwxrwxrwx。1rootroot8Oct300:14sbin->usr/sbindrwxr-xr-x。2root2016年3月10日6srvdr-xr-xr-x。13rootroot010月3日23:55sysdrwxrwxrwt。11rootroot4096Oct403:26tmpdrwxr-xr-x。13rootroot155Oct300:14usrdrwxr-xr-x。19rootroot267Oct303:55vardrwxr-x---。4rootroot31Oct400:54zhanghaochown-R用户:组文件,可以简单的修改[root@zhanghao-server/]#chown-R:testzhanghao[root@zhanghao-server/]#ll-htotal24Klrwxrwxrwx.1rootroot7Oct300:14bin->usr/bindr-xr-xr-x。4rootroot4.0KOct304:00bootdrwxr-xr-x。19rootroot3.1KOct402:29devdrwxr-xr-x。80rootroot8.0KOct404:21etcdrwxr-xr-x。6rootroot75Oct404:21homelrwxrwxrwx。1rootroot7Oct300:14lib->usr/liblrwxrwxrwx。1rootroot9Oct300:14lib64->usr/lib64drwxr-xr-x。2rootroot2016年3月10日6mediadr-xr-xr-x。9rootroot4.0K2017年7月11日mntdrwxr-xr-x。2根根2016年3月6日optdr-xr-xr-x。107rootroot0Oct323:55procdr-xr-x---。3rootroot147Oct400:17rootdrwxr-xr-x。26rootroot800Oct400:20runlrwxrwxrwx。1rootroot8Oct300:14sbin->usr/sbindrwxr-xr-x。2root2016年3月10日6srvdr-xr-xr-x。13rootroot0Oct323:55sysdrwxrwxrwt。11rootroot4.0KOct403:26tmpdrwxr-xr-x。13rootroot155Oct300:14usrdrwxr-xr-x。19rootroot267Oct303:55vardrwxr-x---。4roottest31Oct400:54zhanghaochmodpermissionr:4w:2x:1appenderu:属于masterg:属于groupo:otherschmod755filenamechmodu=rwx,go=rxfilenamehidepermissionsumaskshowcurrentusercreated对于目录和文件夹,默认权限是777减去umask值就是默认权限值,在umask后面加一个数字表示设置[root@zhanghao-server~]#umask0022[root@zhanghao-server~]#umask-Su=rwx,g=rx,o=rxchattr修改隐藏权限[root@study~]#chattr[+-=][ASacdistu]文件或目录名选项及参数:+:加一个特殊参数,其他已有的参数保持不变。-:删除一个特殊参数,其他已有参数不变。=:设置一定的,并且只设置后面的参数A:当设置了属性A时,如果你有权限访问这个文件(或目录),它的访问时间atime不会被修改,这样可以避免I/O上过多的磁盘访问慢机器。(目前推荐使用文件系统挂载参数来处理这个项目)S:一般情况下,文件都是异步写入磁盘的(原理可以参考[sync](../Text/index的说明).html#sync)在上一章中),如果加上S属性,当你修改任何文件时,变化都会被“同步”写入磁盘。a:设置a后,该文件只能添加数据,不能删除或修改数据,只有root可以设置该属性c:设置该属性后,该文件会自动“压缩”,读取时会自动解压,但是存储的时候会先压缩再存储(好像对大文件还是蛮有用的!)d:dump程序执行时,设置d属性会启用文件(或目录)不被dumpi备份:这个i很强大!他可以让一个文件“不能删除、不能重命名、不能设置链接、不能写入、不能添加数据!”对系统安全有很大帮助!只有root可以设置这个属性s:当一个文件设置了s属性后,如果这个文件被删除,它就会从硬盘空间中彻底清除,所以如果被误删,根本无法保存!u:与s相反,使用u设置文件时,如果文件被删除,数据内容实际上还保存在磁盘上,可以用它来挽救文件!注1:常用的属性设置是a和i的设置值,很多设置值必须设置为root注2:xfs文件系统只支持AadiS示例:请尝试在/tmp下创建文件并添加i参数,尝试删除看看。[root@study~]#cd/tmp[root@studytmp]#touchattrtest<==创建一个空文件[root@studytmp]#chattr+iattrtest<==给i属性[root@studytmp]#rmattrtest<==尝试删除并查看rm:removeregularemptyfile`attrtest'?yrm:cannotremove`attrtest':Operationnotpermitted#你看到了吗?呼呼!连root都没有办法删除这个文件!快速删除设置!例:请取消文件的i属性![root@studytmp]#chattr-iattrtestFilespecialpermissionSUID(setUID)(4)SUID只能对二进制可执行文件生效,比如/usr/bin/passwd。当普通用户以SUID权限执行二进制权限时,会暂时拥有root用户的超级权限。也就是说,普通用户也可以执行。/usr/bin/passwd之所以需要s权限是因为普通用户修改密码后没有权限写入shadow文件,只有root超级权限才能写入/etc/shadow中的配置。SGID(2)SGID对目录和文件也有效,程序执行需要用户有执行x权限。如果我用zhanghao用户执行,zhanghao用户的组是zhanghao,但是我要执行文件的用户组是haozi,那么我用zhanghao执行的时候就会有haozi组的权限,对于目录和文件,有SGID权限,使用读者可以读取和执行该目录。SBIT(1)只对目录有效,对文件无效。用户对该目录具有w和x权限。目录下用户创建的目录只能自己和root用户删除。例如,/tmp目录。有了SBIT目录,里面创建的文件只能自己或root权限删除。设置特殊权限###SUID$chmod4755###SGID$chmod2755###SBIT$chmod1755