(1)chmod

chmod命令用于改变文件或目录权限,英文原意为change the permissions mode of a file,所在路径为/bin/chmod,其语法格式为:

chmod [{ugoa}{+-=}{rwx}] [文件或目录]或chmod [mode=421] [文件或目录]

其中a表示所有的u、g、o的权限都将修改。如果加上-R选项,表示递归修改权限。权限的数字表示分别为:r对应着4,w对应着2,x对应着1,因此,rwxrw-r—对应的数字权限为764。注意:只有root和所有者可以改变该文件或目录的权限!

在/tmp目录创建一个test.txt文件,并将其权限修改为所有者(u)去掉写权限,用户组(g)和其他人(o)加上写权限,且三者均具有执行权限。

使用数字命令将所有者权限改为可读可写,将用户组和其他人的权限改为仅可读。

在/tmp目录下创建目录a,并在a的目录下创建目录b,然后使用-R选项递归修改a与b的权限。

文件目录权限总结:

代表字符

权限

对文件的含义

对目录的含义

r

读权限

可查看文件内容

可列出目录中的内容(如ls)

w

写权限

可修改文件内容

可在目录中创建、删除文件(如touch,rm)

x

执行权限

可执行文件

可进入目录(如cd)

注意:删除一个文件的前提是用户需对该文件所在目录具有写权限,而不是对该文件具有写权限!!!

(2)chown

chown命令用于改变文件或目录的所有者,英文原意为change file ownership,所在路径为/bin/chown,其语法格式为:chown [用户] [文件或目录],注意只有管理员才能更改文件所属用户。

创建一个用户ws,以该用户进行登录并在/tmp目录下创建一个文件test.txt。

然后在以root身份进行修改该文件的所属用户。

(3)chgrp

chgrp命令用于改变文件或目录的所属组,英文原意为change file group ownership,所在路径为/bin/chgrp,其语法格式为:chgrp [用户组] [文件或目录]

同样在root用户下将test.txt的所属组改为root。

(4)umask

umask命令用于显示、设置文件的缺省权限,英文原意为the user file-creation mask,umask命令属于Shell的内置命令,其语法格式为:umask [-S],其中-s选项表示以rwx形式显示新建文件缺省权限。

[root@localhost ~]# umask

直接输入umask命令得出的是权限掩码,其中第一个"0"表示特殊权限,后面的"022"分别对应所有者、所属组、其他人的权限,掩码对应的真正权限为:777-022=755。

在/tmp下新建一个目录test,查看其权限即为对应的默认的缺省权限。

[root@localhost ~]# umask -S

u=rwx,g=rx,o=rx

[root@localhost ~]# mkdir /tmp/test

[root@localhost ~]# ls -ld /tmp/test

drwxr-xr-x.  root root  1月    : /tmp/test

[root@localhost ~]#

而新建一个文件时,出于安全的角度,默认是不具备执行权限的。例如在tmp目录下新建一个test1.txt文件,其对应的默认权限如下:

[root@localhost ~]# touch /tmp/test1.txt

[root@localhost ~]# ls -l /tmp/test1.txt

-rw-r--r--.  root root  1月    : /tmp/test1.txt

[root@localhost ~]#

如将默认的权限为rwxr-xr--,首先计算相应的掩码:777-754=023,然后利用umask修改即可。则相应的命令如下:

[root@localhost ~]# umask 

[root@localhost ~]# mkdir /tmp/test2

[root@localhost ~]# ls -ld /tmp/test2

drwxr-xr--.  root root  1月    : /tmp/test2

[root@localhost ~]# 

Linux学习笔记(4)Linux常用命令之权限管理命令的更多相关文章

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

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

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

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

  3. linux常用命令:2权限管理命令

    权限管理命令 1.权限管理命令:chmod 命令名:chmod 命令英文原意:change the permissions mode of a file 命令所在路径:/bin/chmod 执行权限: ...

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

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

  5. linux学习笔记2-linux的常用命令

    第一篇博客:linux学习笔记1-ubuntu的安装与基本设置 之中,已经介绍了如何安装linux操作系统,以及一些基本的设置修改. 本篇博客主要介绍linux中的一些常用的终端命令 ======== ...

  6. linux学习笔记2 - linux常用命令

    转载请标注原链接:http://www.cnblogs.com/xczyd/p/5543731.html 第一篇博客:linux学习笔记1-ubuntu的安装与基本设置 之中,已经介绍了如何安装lin ...

  7. Linux学习笔记:Linux命令之权限管理命令

    权限管理命令 chmod(重要) 命令名称:chmod 英文原意:change the permissions mode of a file 执行权限:所有用户 功能描述:改变文件或目录权限 语法:c ...

  8. [Linux] Linux学习笔记(5)-文件与目录管理

    1.Linux目录结构为树状结构,最顶层的目录为跟目录"/",其它目录通过挂载可以将它添加到目录树中,通过解除挂载移除它们. 2.绝对路径与相对路径 绝对路径写法:由根目录&quo ...

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

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

  10. 四 linuk常用命令 2. 权限管理命令

    一 权限管理命令chmod 所有者u 所属组g 其他人o 所有人a 所有者和root超级用户可以更改该权限 普通更改权限是不会改变子目录的权限的,要想改变用递归修改 useradd增加用户 目录的r和 ...

随机推荐

  1. Unity3d《Shader篇》地球旋转上空悬浮云层

    记得把纹理设置成Repeat Shader "Custom/Earth" { Properties { _MainTex ("Base (RGB)", 2D) ...

  2. JSP页面格式化货币金额,千分位

    <fmt:formatNumber value="${值}" pattern="currency"></fmt:formatNumber> ...

  3. java 入门 第二季1

    (1). 类和对象(java 语言是面向对象的) 1). 类是对象的类型 具有相同的属性和方法的一组对象的集合 类:属性和方法 定义类: 类名 属性 方法 //class为关键字 2.定义类时,首字母 ...

  4. codeforces 581C. Developing Skills 解题报告

    题目链接:http://codeforces.com/problemset/problem/581/C 题目意思:给出 n 个数:a1, a2, ..., an (0 ≤ ai ≤ 100).给出值 ...

  5. 解决 spring mvc 3.0 结合 hibernate3.2 使用<tx:annotation-driven>声明式事务无法提交的问题(转载)

    1.问题复现 spring 3.0 + hibernate 3.2 spring mvc使用注解方式:service使用@service注解 事务使用@Transactional 事务配置使用 < ...

  6. OKhttp的封装(上)

    自从介绍了OKhttp3的一些基本使用之后,又偷了下懒,所以它的续篇被搁置了一段时间,现在补充. OKhttpManager.Class  请求工具类 package com.example.admi ...

  7. 【Git】标签管理

    来源:廖雪峰 为什么要标签: 发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本.将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来. ...

  8. 数独检测器:帝国理工C++作业

    #include <fstream> #include <vector> #include <iostream> #include <string> u ...

  9. ios block中引用self

    __block __weak typeof(self) tmpSelf = self; ^(){ tmpSelf...... }

  10. Ubuntu gcc编译报错:format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 2 has type ‘__time_t’ [-Wformat=]

    平时用的都是Centos系统,今天偶然在Ubuntu下编译了一次代码,发现报错了: 源码: #include <stdio.h> #include <sys/time.h> # ...