当前位置:  技术问答>linux和unix

一个权限小问题!

    来源: 互联网  发布时间:2015-05-09

    本文导语:  请问: 权限除了r(read),w(write),x(execute)之外还有哪些? -r-sr-xr-x如何解释? 另外每个权限请用数字表示一下,谢谢!! | 表示setuid。具体的自己man chmod | SUID的s位处于程序所有...

请问:
权限除了r(read),w(write),x(execute)之外还有哪些?
-r-sr-xr-x如何解释?
另外每个权限请用数字表示一下,谢谢!!

|
表示setuid。具体的自己man chmod

|
SUID的s位处于程序所有者的执行权限所在的权限位。当一个可执行程序的SUID位被置为s后,则在启动该程序时不以启动该程序的用户的权限来执行,而是以该程序所有者的权限执行,即继承了程序所有者的权限。
典型的例子是passwd,passwd命令是由超级用户拥有且s违被置为可用。当执行passwd期间,用户的权限提升为root。

|
http://www.20cn.net/netdemon/

NO.4 UNIX系统的文件属性和存取权限

作者:NetDemon
netdemon@20cn.com
www.20cn.net
--------------------

我们都知道UNIX是一个多用户的操作系统,那么,它是怎样来区分一个文件是属于谁的,这个文件是什么类型的文件的呢?下面我们通过一个例子来说明这个问题

我们现在使用ls命令列出当前目录下的文件

#ls -la
# -rw-rw-rw-    1    root      wheel    170    jan 7 19:46    mnk
# -rw-r-----    1    root      wheel    18204  jan 8 20:34    nmap.tar.gz
# -rwxr-xr--    1    candy     user     1204   may 23 13:00   mysh.sh
# drwx------    2    netdemon  user     512    may 23 14:23   mydoc
|-----1------|--2--|----3-----|---4---|---5---|------6------|-----7-------|

在这里第一部分是文件属性,第二部分是文件数量,第三是所有者,第四是所属组,第五是文件大小,第六是文件修改时间,第七是文件名,其中文件名,时间,文件大小应该不用解释大家都能明白,我就不再说明了,第三部分表明了一个文件的拥有者是谁,就mnk这个文件来说,它的拥有者是root,是属于wheel这个组的,而mysh.sh的拥有者是candy,user组的,通常情况下,如果用户属于这个组,那么这个文件也就属于这个组,第二部分指出连接到此文件的连接的数量,我们都知道,在win系统上,我们可以创建快捷方式,比如在桌面上创建一个快捷方式,指向某个文件,UNIX的连接也大致是一样的概念,如果在系统尚有一个连接是指向mnk的,那么在这里它的1就会变成2。而第一部分呢,表面看起来很不知所谓,很难一下子明白这个表示了什么,但这个就恰恰是UNIX的精粹所在,UNIX的最大特点之一,如果没有这个,UNIX将不是UNIX。
这个部分一共有10位数来表示,第一位表示文件类型,"-"表示这个一个文件,"d"表示这个一个目录,"s"表示这是一个连接,详细的说明请看最后的表格,接下来的9位,我们把他们每3位分为一段来看,第一段对应于文件拥有者用u表示(user),第二段对应属组用g表示(group),第三段对应任何人用o表示(other),而每一段的第一位代表读权限(r),第二为代表写权限(w),第三位代表执行(x)(对文件而言)或可进入(对目录而言)权限,现在我们拿第二个文件nmap.tar.gz来作说名,第一位"-"表明这是一个文件,接下来的"rw-"表明root可以读写这个文件,但不能执行它,再接下来的"r--"表明了属于wheel这个组的人可以读这个文件,但不能修改(不可写)也不能执行这个文件,最后的"---"表明了其他的任何人都不能读、写、执行这个文件。由此,我们现在可以知道,mnk这个文件是任何一个人都可以读写但不能执行的一个文件,因为它的每一部分都是"rw-",而第三个mysh.sh就是candy可读可写可执行,netdemon可以执行但不能修改或删除,为什么呢?通过第4个mydoc,我们看出netdemon也是属于user组的一个用户,而mysh.sh的表示组权限的这一段是"r-x",所以netdemon有执行这个文件的权限,但是其他的人就只能看了,这是因为最后的"r--"说明的这个规则。第四个mydoc,由第一位的"d",说明这是一个目录而不是一个文件,netdemon可以读写进入这个目录,但其他的人都不可以包括同一组的candy,因为他最后都是"---"。但是,root可不可以呢?答案是可以的,因为root是整个系统权限最高的一个用户的名字,几乎所有的UNIX系统都一样,整个系统所有的东西都是属于root的,尽管在某些UNIX系统上root去删除mydoc这个目录时会出错,但root还是通过可以使用chown或chmod来改变文件的属性再删除或修改的,(关于chown及chmod等命令自行用'man chmod'命令察看说明)
那么,我们通常也接触到的一些资料说的属性为700,644,755的这些又是怎么回事呢?其实,这只是表示的方式不一样而已,照前面的说法,把表示属性的9位数分为三段,user,group,other,各段的权限(rwx)换为二进制,再变为10进制的结果,有"r"或"w","x"权限的用1表示,没有的用0表示,即"---"为000,"rwx"为111,那么,"r-x"的二进制就表示为 101,而101的十进制数为 1*2e2+0*2e1+1*2e0=1*4+0*2+1*1=5,再把u,g,o各自的值串起来就成了755 644等的这些表示法了,比如"rwxr-xr-x" ,因为u为rwx,二进制是111,十进制是7,g和o都为r-x,二进制是101,十进制是5,所以,"rwxr-xr-x"也可以用755表示,下面给出各种权限的二进制和十进制的值

权限        二进制      十进制
---------------------------------------
---         000         0
--x         001         1
-w-         010         2
-wx         011         3
r--         100         4
r-x         101         5
rw-         110         6
rwx         111         7
---------------------------------------

文件类型的表示符
---------------------------------------
d         目录
b         二进制特殊文件
c         文本特殊文件
l         符号连接
p         Pipe
s         Socket
-         普通文件
---------------------------------------

顺便说一个问题,就是UNIX系统不是用扩展名(如win系统的.exe .com)来标示一个文件是否是可执行文件,一个文件是否可以执行和文件名无关,只和文件属性的x的值有关系。
看到这里,我相信你对文件权限这个问题你应该是可以弄清楚了,可如果你比较细心又聪明的话同时你也许会有一个疑问,如果一个文件的属性是"-------rwx",那么企不是任何人都能读写和执行,但此文件的所有者自己却没有呢?这个问题,我就卖个关子了,我希望你可以自己试一下,毕竟实践还是非常的重要的,你需要自己安装一个UNIX的系统来用一用,对于UNIX的命令的这一部分我不准备写了,因为基本上,在 /bin 及 /usr/bin下面的所有文件都是UNIX的命令,UNIX并没有像DOS那样有内部命令和外部命令之分的,所有的可执行文件都是UNIX的命令,你可以把bin下面的每个都尝试一下,不懂的呢,就用 man "文件名" 这个命令来得到他的作用和使用方法,当然,man 出来的都是E文的,你不要说你E文不好看不懂,你既然知道你E文不好,就应该去花点时间学习E文,而通过看man来学习是一个很有效的方法,我就是这样,我读书的时候E文不及格,后来是通过给老师送礼才过了关的,但是我现在还是可以勉强和外国佬在网上聊天,因为这都是man给逼出来的。我可不希望现在还在读书的朋友学我那样通过送礼过关哦,一边看着屏幕一边翻着字典一个一个查的滋味非常痛苦的,况且我是虽然E文不及格,但专业科的模拟电子线路却是全系最高分的,而且人还长得帅那教E文的老太太才有怜悯之心的哦,你就不知道啦,呵呵

接下去的这段时间,你应该去安装UNIX系统啦,弄清楚各种常用的命令等,我本来是准备在下一篇说说程序和进程的权限的,但考虑到这个时候说也许大家的水平接不上,所以下一篇就说说网络基础方面的了,到了一定的程度再回过头来说UNIX,这样并发而来,也许更加好一点,你在UNIX方面有什么问题可以到论坛发问或者写信给我,但拜托不要在QQ上来问我,因为我那上有好友几百多个,加上我通过而没有加为好友的总共可能有2000个,在这样的情况下,我根本不可能回答你什么除非20个字之内可以说完的,而写信或者在论坛提问我有充分的时间详细的解答你的问题,这样彼此都有好处,请大家理解我的苦衷

    
 
 

您可能感兴趣的文章:

  • 怎样使apache运行在root权限下,使所有的cgi都具有root的权限,这个问题困惑我很久了,大家帮帮忙
  • 用samba连接windows的问题,应该是权限问题
  • 关于文件权限赋予问题!!!
  • UNIX中文件权限的问题
  • linux文件写权限问题,在线等
  • centOS问题权限问题
  • 关于有名管道的权限问题?
  • 文件权限问题?转化问题???
  • linux权限设置问题!!!
  • 权限控制问题
  • 配置proftp问题一大堆,设置用户、权限、访问目录都有问题
  • Linux中的文件权限设置问题
  • Ubuntu下文件权限问题
  • cp命令,涉及文件权限的问题
  • linux权限的分配问题
  • mysql 权限的问题,在线等
  • 紧急,目录访问权限问题求助,请大侠指教,先写了!
  • ftp上权限问题
  • 关于linux安装vsftpd中用户权限问题
  • apache符号链接 权限问题
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • linux/Centos/ubuntu下如何使用umask命令修改新建文件时的默认权限
  • 我现在想做一个权限管理系统,想让权限系统的利用性更强,我应该怎样设计权限系统呢.
  • java 类修饰符(private,public和protected)所代表的权限
  • 求助:linux下有没有方法来恢复未知权限的文件的权限呢,在线等
  • 如何给用户管理员设置权限及组的权限设置
  • 请帮看一下:在root权限下执行./aaa.pl ,为什么老提示权限不够?
  • 在线等待:在Java中是否有权限修改一个文件的权限?
  • chmod改变权限,什么命令察看权限?
  • 权限,怎样设置非root用户对目录的读写运行权限
  • 监听低端口,用户没权限,这个权限要怎么加?实在没分了。。
  • 如何编程使普通用户拥有访问/root目录的权限(即超级权限)
  • 对于目录,“写权限“和”执行权限“各代表可以进行什么操作?
  • oracle 视图权限 oracle 创建视图权限不足
  • 如果要修改文件文件夹的权限,需要什么权限?
  • 公共用户的执行权 限,读权限和写权限究竟有何区别和意义?
  • 如何能让低权限用户执行高权限用户的命令
  • 在redhat7.2中只有root权限才可以直接读写声卡文件吗?怎样设置普通用户的权限使其可以直接访问声卡?
  • 运行的程序没权限,要自己改权限才能运行
  • shell脚本执行的权限
  • 怎么用指定权限运行命令?
  • mysql iis7站长之家


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3