- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第九讲文件系统与权限的设置
文件系统与权限的设置 权限的意义 执行ls –l或ls –a命令时所显现的结果,最前面的2—10个字符用来标示权限。第一个字符一般用于区别文件和目录 d:表示这是一个目录。 -:表这是一个普通的文件 L:表示这是一个符号连接的文件,实际上它指向另一个文件 b、c:分别表示区块设备和其他的外围设备,是特殊类型的文件 S、p:这些文件关系到系统的数据结构和管道 文件目录的权限 linux下,每一个文件、每一个目录都有一个属主,并针对用户自己、用户所在组、其它所有帐号(组)分别设定读、写、执行三种权限。 例如,我(假定是webusers组的floatboat帐户的拥有者)使用如下命令建立一个新的文件 #touch mytestfile 然后我们使用 #ls -l mytestfile 这一命令来查看这个文件的权限状态(关于ls命令,以前讲过),可以得到如下的屏幕输出显示: -rw-rw-r-- 1 floatboat webusers 0 Feb 6 21:37 mytestfile 输出由空格分为9个部分,我们比较关心第一、三、四个字段,分别表示文件权限属性、文件所有者帐户、文件所属组。 使用chown命令修改文件的主人 当你新建立一个文件的时候,文件的所有者当然就是你了。这一事实只有超级用户(比如说root)才可以通过chown命令改变(例如 chown otheruser mytestfile,把mytestfile文件的属主改为otheruser)。 chown命令的用法比较简单。这里我先假设你现在拥有超级用户权限,那么你就可以使用如下命令将一个文件“送给”floatboat了: #chown floatboat /home/floatboat/thefileisrootcreate.txt (假定该文件是由root创建的) 修改一个目录的所有者也是类似的: #chown floatboat /home/newboat 当然,如果这个目录还有子目录及文件需要同时送给floatboat,chown也是支持-R参数的: #chown -R floatboat /home/newboat 如果你同时想修改文件/目录所属的组的话,你可以使用以下命令方便的达到目的: #chown -R floatboat.ftpusers /home/newboat 修改文件的组属性 修改文件的组属性 文件所属组你倒是可以改变,前提是: 1、你的超级用户。 2、你同时属于两个或两个以上的组。 两个条件你至少具备一个,你才能够把文件所属旧组变为新组。使用如下的命令将当前目录下所有html文件所属的组改为httpd: #chgrp httpd *.html 和chown命令一样,chgrp也可以使用-R参数对一个目录内的所有文件和子目录进行递归的修改组属性。 提示:你可以使用不带参数的groups命令查看自己属于哪个组。 文件权限的设定是我们这一小节讨论的核心,我们主要介绍chmod命令的两种用法 使用访问字符串设置文件目录权限 正如前面所说的,每一个文件、目录都针对用户自己、用户所在组、其它所有帐号(组)分别有读、写、执行三种权限及其组合。当一个普通用户新建一个文件的时候,它默认的访问权限显示就如我们刚才所举例子的第一个字段所示。总共十位字符“-rw-rw-r--”,第一位是目录区分标志,如果是d的话,表示这是一个目录。第二到四位分别表示文件所有者的读(r:read)、写(w:write)、执行(x:execute)属性,第五到七位是文件所属组的读、写、执行权限,第八到第十位则是其它用户的读、写、执行权限。如果对应的位是相应的字母,就是有这相应权限,否则为“-”,表示没有获得这个许可。象刚才例子中的文件就是自己可读写,本组可读写,其它用户可读,所有的用户(包括自己)都不能执行它。 我们的用u、g、o分别来指代用户(user)、组(group)、其它帐户(other),就可以方便的设置文件和目录的权限了。当然,我们也可以用a来表示所有的这三项。 例如,我们要对所有perl的脚本文件设定权限,对所有用户都可以读和执行,文件所有者还允许写许可,那么我们可以使用如下命令: #chmod a+rx,u+w *.pl 注意:如果要使用多个访问字符串,它们之间要用逗号隔开,各个许可字符串之间不允许有空格。 使用访问字符串设置文件目录权限 正如上例所示。 如果要修改目录中所有文件和子目录的权限属性,可以使用chmod提供的-R参数来递归修改。例如,下列命令将/www/site1目录及其下面的子目录的权限属性设定为所有者和组可读、写、执行,其它用户不
文档评论(0)