2. 权限管理命令

2.1 改变文件或目录权限:chmod

(1)chmod命令

命令名称

chmod(change the permission mode of a file)

命令所在路径

/bin/chmod

执行权限

所有用户

语法

chmod [{ugoa}{+-=}{rwx}}] [目录或文件] //a为所有人

chmod [mode=421] [文件或目录]

-R:递归修改

(2)注意事项

  ①只有文件所有者或管理员(root)才能修改文件权限

  ②权限的数字表示:r(4),w(2),x(1)。如rwx rw- r--:表示为7 6 4

  ③当更改目录权限时默认只改变所指定目录的权限。如果要连同其下的所有文件及子目录权限一起更改,可加-R选项

(3)应用举例

  ① 给文件所有者(或所属组)更改权限

$chmod u+x /tmp/test.file      //给所有者增加x权限

$chmod g+w,o-r /tmp/test.file  //给所属组增加w权限,去除其他用户组的读权限。

$chmod g=rwx /tmp/test.file    //将所属组权限更改为rwx权限。

  ②通过数字方式更改权限

$chmod  /tmp/test.file //将权限更改为rw- r—r—

(4)文件目录权限的小结

权限

对文件的含义

对目录的含义

r(读权限)

可以查看文件内容

可以列出目录中的内容

w(写权限)

可以修改文件内容

可以在目录中创建,删除文件

x(执行权限)

可以执行文件

可以进入目录

备注

①对目录的r权限,只是列出该目录下的文件信息。但不一定能读出文件里面的内容,这得看当前用户对该文件是否有r权限。

用户对目录具有写权限,就可以删除整个目录包含其下的文件哪怕该用户对这个文件只具有读的权限!但能否对这个文件进行写入操作,得看该用户对这个文件是否拥有w权限。

【实验分析】

  ①用root权限创建目录:#mkdir /tmp/temp/

  ②创建空文件:#touch testfile  //默认的权限为rw-r--r—(即其他用户只有读权限

  ③将testfile所在的目录更改为可写权限:#chmod 777 temp (权限rwxrwxrwx,即其它用户可以读写该目录)

  ④切换到普通用户,然后执行删除testfile操作:$rm –f testfile //成功,尽管普通用户对该文件只有读权限,但因普通用户对该文件所在目录具有写权限,所以可以删除

2.2 改变文件或目录的所有者:chown

(1)chown命令

命令名称

chown(change file ownership)

命令所在路径

/bin/chown

执行权限

所有用户

语法

chown [目标用户] [目录或文件]

(2)注意事项

  ①只有管理员才能改变文件的所有者,这与chmod不同。

  ②目标用户必须存在

(3)应用举例

  ①改变文件myfile的所有者为testUser:  $chown myfile testUser

2.3 改变文件或目录的所属组:chgrp

(1)chgrp命令

命令名称

chgrp(change file group ownership)

命令所在路径

/bin/chgrp

执行权限

所有用户

语法

chgrp [目标用户组] [目录或文件]

(2)注意事项

  ①只有管理员才能改变文件的所属组,这与chmod不同。

  ②可以文件所属组成增加权限,则该组下的每个用户都拥有对这个文件相应的权限。如:

    #chmod g+w /temp/testfile ;//给文件所属组增加写权限。

(3)应用举例

  ①改变文件myfile的所有者为testGroup: $chgrp myfile testGroup

2.4 设置(或显示)文件的缺省权限

(1)文件的所有者和所属组

  ①文件所有者:默认,谁创建了文件,它就是文件的所有者。

  ②文件所属组:一个用户可以属于多个组,但它只能有一个缺省组。所以当文件创建时,它的所属组只能是该用户所属的缺省组

(2)umask命令

命令名称

umask(the user file-creation mask)

命令所在路径

Shell内置命令

执行权限

所有用户

语法

umask [-S]

-S 以rwx形式显示新建文件的缺省权限

(2)注意事项

  ①当用umask –S的结果为:u=rwx,g=rx,o=rx。这时当新建目录时,会继承这一权限,但如果新建文件linux默认是不分配x(执行)权限,而目录没有这限制,因为x对于目录来说表示可进入。

  ②如果不加-S时显示出来的是umask掩码本身的四位数值(如0022,其中后三位为创建目录时的权限掩码),而不是默认的权限。要换算成默认权限时,需用文件的最大权限777减去这个掩码022,结果为755(rwxr-xr-x)。反过来,要设置默认权限为700的话,则umask时=777-700=077。

  ③当利用umask来touch一个文件时,默认是不分配可执行权限的,这主要是linux基于安全方面的考虑。

(3)应用举例

①将默认权限修改为700.

$umask       //将默认权限修改为700,umask –S结果为u=rwx,g=,o=

$mkdir myTest

$ls –ld myTest  //应该显示为700,即rwx------ 

第3章 Linux常用命令(2)_权限管理命令的更多相关文章

  1. Linux常用命令(第二版) --权限管理命令

    权限管理命令 1.chmod[change the permissions mode of a file] : /bin/chmod 语法: chmod [{ugo}{+-=}{rwx}] [文件或目 ...

  2. Linux常用命令之链接命令和权限管理命令

    目录 1.链接命令 一.生成链接文件命令:ln 2.权限管理命令3.总结 一.更改文件或目录权限命令:chmod 二.改变文件或目录所有者命令:chown 三.改变文件或目录所属组命令:chgrp 四 ...

  3. Linux系列教程(五)——Linux常用命令之链接命令和权限管理命令

    前一篇博客我们讲解了Linux文件和目录处理命令,还是老生常淡,对于新手而言,我们不需要完全记住命令的详细语法,记住该命令能完成什么功能,然后需要的时候去查就好了,用的多了我们就自然记住了.这篇博客我 ...

  4. Linux系列教程(五)——Linux链接命令和权限管理命令

    前一篇博客我们讲解了Linux文件和目录处理命令,还是老生常淡,对于新手而言,我们不需要完全记住命令的详细语法,记住该命令能完成什么功能,然后需要的时候去查就好了,用的多了我们就自然记住了.这篇博客我 ...

  5. Linux学习笔记 一 第三章 Linux常用命令

    第三章Linux常用命令 一.文件处理命令 1.命令格式 2.目录处理命令:ls 3.目录处理命令:mkdir 4.文件处理命令: touch

  6. Linux学习之常用权限管理命令(二)

    (一)常用权限管理命令 (1)chmod命令 (2)chown (3)chgrp (4)umask (一)常用权限管理命令 (1)chmod命令 命令名称:chmod命令英文原意:change the ...

  7. Linux常用命令之用户权限管理chmod、chown、chgrp、umask命令讲解

    这节课我们重点来学习权限管理命令,说到权限大家可能第一时间能想到的就是读.写.执行 rwx 三种权限,在正式讲解权限命令之前,先简单的介绍一下rwx权限对于文件和目录的不同含义. 权限字符 权限 对文 ...

  8. linux笔记:linux常用命令-权限管理命令

    一个文件的权限只有root和所有者可以更改. 权限管理命令:chmod(改变文件或目录的权限) 权限的数字表示: 用权限加减的方式改变权限(u代表所有者,g代表所属组,o代表其他人,a代表所有人): ...

  9. Linux常用命令2 权限管理命令

    1.权限管理命令:chmod 上面图片中的ugoa与rwx并不是一个命令,而是不同选项 u 所有者  g 所属组 o 其他人 a 所有人 r 读取权限 w写入权限  x 执行权限 chmod u+x ...

随机推荐

  1. 背水一战 Windows 10 (36) - 控件(弹出类): ToolTip, Popup, PopupMenu

    [源码下载] 背水一战 Windows 10 (36) - 控件(弹出类): ToolTip, Popup, PopupMenu 作者:webabcd 介绍背水一战 Windows 10 之 控件(弹 ...

  2. junit4 assert类中的assert方法总结

    junit中的assert方法全部放在Assert类中,总结一下junit类中assert方法的分类. 1.assertTrue/False([String message,]boolean cond ...

  3. Spring2.0-applicationContext.xml中使用el表达式给实体类属性赋值被当成字符串-遁地龙卷风

    (-1)写在前面 这两天读<javaweb开发王者归来>,学到Spring的PropertyPlaceholderConfigurer时出现一个问题,我已${jdbc.name}的形式赋值 ...

  4. js 循环li添加点击事件 (闭包的应用)

    var aLi = document.querySelectorAll('.article-tab li');  for (var i = 0; i <= aLi.length; i++) {  ...

  5. [deviceone开发]-do_ImageView实现正圆的示例

    一.简介 我们经常需要用一个正圆形状的图片来设置头像,在do平台这个比较容易,就是通过设置圆角来实现,但是有几个小技巧需要解释一下 主要组件:do_ImageView 二.效果图 三.相关下载 htt ...

  6. UIPickerView的使用(三)

    前两篇文章 UIPickerView的使用(一) . UIPickerView的使用(二),学习了UIPickerView的单列选择器和双列选择器的使用. 现在我们一起学习相互依赖的多列选择器 1.遵 ...

  7. 理解 iOS 的内存管理

    远古时代的故事 那些经历过手工管理内存(MRC)时代的人们,一定对 iOS 开发中的内存管理记忆犹新.那个时候大约是 2010 年,国内 iOS 开发刚刚兴起,tinyfool 大叔的大名已经如雷贯耳 ...

  8. wireshark 实用过滤表达式(针对ip、协议、端口、长度和内容)

    首先说几个最常用的关键字,"eq" 和 "=="等同,可以使用 "and" 表示并且,"or"表示或者."!& ...

  9. 归档—监控ORACLE数据库告警日志

    ORACLE的告警日志里面包含许多有用的信息,尤其是一些ORACLE的ORA错误信息,所以有必要及时归档.监控数据库告警日志的ORA错误,及时提醒数据库管理员DBA处理这些错误信息,那么我们首先来看看 ...

  10. MS SQL 排序规则总结

    排序规则术语        什么是排序规则呢? 排序规则是根据特定语言和区域设置标准指定对字符串数据进行排序和比较的规则.SQL Server 支持在单个数据库中存储具有不同排序规则的对象.MSDN解 ...