第3章 Linux常用命令(2)_权限管理命令
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)_权限管理命令的更多相关文章
- Linux常用命令(第二版) --权限管理命令
权限管理命令 1.chmod[change the permissions mode of a file] : /bin/chmod 语法: chmod [{ugo}{+-=}{rwx}] [文件或目 ...
- Linux常用命令之链接命令和权限管理命令
目录 1.链接命令 一.生成链接文件命令:ln 2.权限管理命令3.总结 一.更改文件或目录权限命令:chmod 二.改变文件或目录所有者命令:chown 三.改变文件或目录所属组命令:chgrp 四 ...
- Linux系列教程(五)——Linux常用命令之链接命令和权限管理命令
前一篇博客我们讲解了Linux文件和目录处理命令,还是老生常淡,对于新手而言,我们不需要完全记住命令的详细语法,记住该命令能完成什么功能,然后需要的时候去查就好了,用的多了我们就自然记住了.这篇博客我 ...
- Linux系列教程(五)——Linux链接命令和权限管理命令
前一篇博客我们讲解了Linux文件和目录处理命令,还是老生常淡,对于新手而言,我们不需要完全记住命令的详细语法,记住该命令能完成什么功能,然后需要的时候去查就好了,用的多了我们就自然记住了.这篇博客我 ...
- Linux学习笔记 一 第三章 Linux常用命令
第三章Linux常用命令 一.文件处理命令 1.命令格式 2.目录处理命令:ls 3.目录处理命令:mkdir 4.文件处理命令: touch
- Linux学习之常用权限管理命令(二)
(一)常用权限管理命令 (1)chmod命令 (2)chown (3)chgrp (4)umask (一)常用权限管理命令 (1)chmod命令 命令名称:chmod命令英文原意:change the ...
- Linux常用命令之用户权限管理chmod、chown、chgrp、umask命令讲解
这节课我们重点来学习权限管理命令,说到权限大家可能第一时间能想到的就是读.写.执行 rwx 三种权限,在正式讲解权限命令之前,先简单的介绍一下rwx权限对于文件和目录的不同含义. 权限字符 权限 对文 ...
- linux笔记:linux常用命令-权限管理命令
一个文件的权限只有root和所有者可以更改. 权限管理命令:chmod(改变文件或目录的权限) 权限的数字表示: 用权限加减的方式改变权限(u代表所有者,g代表所属组,o代表其他人,a代表所有人): ...
- Linux常用命令2 权限管理命令
1.权限管理命令:chmod 上面图片中的ugoa与rwx并不是一个命令,而是不同选项 u 所有者 g 所属组 o 其他人 a 所有人 r 读取权限 w写入权限 x 执行权限 chmod u+x ...
随机推荐
- Hibernate实现有两种配置,xml配置与注释配置
hibernate实现有两种配置,xml配置与注释配置. (1):xml配置:hibernate.cfg.xml (放到src目录下)和实体配置类:xxx.hbm.xml(与实体为同一目录中) < ...
- Hibernate总结(一)
Hibernate为了提高性能,提供了缓存与快照机制. 它的缓存分为一级缓存与二级缓存. Hibernate一级缓存:当一个事务中执行一次Sql语句时,就将返回的结果存储在Session中的Map集合 ...
- S1java基础学习笔记
第一章 Java基础 程序目标:减轻现实生活中一类人的工作量,提高工作效率. 学员最终可以书写系统: 超市管理系统,POS机系统等 入库单 销售单 01.课程重点 五大重点: 01.分支(选择)结构 ...
- Thinkcmf 二次开发
一. 创建模板 demo 1 Tpl下创建demo文件-----后台启用新的模板 (网站信息--模板方案) 2 在模板在tpl/demo目录下创建Portal目录,然后在Portal目录下创建in ...
- Html + Css思维导图
最近整理的一份Html和Css的思维导图,共享给初学者使用. 各个知识点的详细案例介绍,后期会分阶段依次发布,希望对大家学习html和css有帮助. 如果对文中的知识点有异议,欢迎随时拍砖! 后期也回 ...
- JavaScript toUpperCase() 方法和 toLowerCase() 方法
1,toUpperCase() 方法用于把字符串转换为大写. 一个新的字符串,在其中 stringObject 的所有小写字符全部被转换为了大写字符. 语法为: stringObject.toUppe ...
- jeecg环境搭建20160707
1.首页修改位置:src/main/webapp/webpage/main 2.tomcat45秒超时启动修改,open打开servers项目,在右上角处的timeouts参数修改: 3.eclips ...
- 转一篇简洁的UIView动画编程方法
iOS 中的 UIView 动画编程其实还是很简单的,像 CSS3 一样,在给定的时间内完成状态连续性的变化呈现.比如背景色,Frame 大小,位移.翻转,特明度等. 以前我使用的编程方式都是用下面 ...
- IOS RunLoop浅析 一
RunLoop犹如其名循环. RunLoop 中有多重模式. 在一个“时刻”只能值执行一种模式. 因此在使用RunLoop时要注意所实现的效果有可能不是你想要的. 在这里用NSTimer展示一下Run ...
- Android—判断当前时间段
思路:获取当前时间相对于当天的分钟数,然后按照时间顺序依次与时间段后面的时间(转化为分钟数)比较(如8:00-9:00,跟9:00比较). 部分代码: 当前时间 Calendar calendar = ...