前言

  前面的文章中提到:Linux在管理用户权限时,既是面向用户的,又是面向组的,通过管理用户的权限规定了其对所拥有的文件的权限(读、改、执行),通过管理组的权限而规定了该组中用户对于某一文件的权限。在Linux中的每一个用户必须必须属于一个组,不能独立于组外,在Linux中每个文件都有所有者、所在组、其他组的概念。

  以下这些概念是面向文件的:

  1)所有者:文件的所有者往往具有很高的权限,一般为文件的创建者(当然也可以修改文件所有者)。比如我用hadoop1用户登陆后创建了一个xxx.txt文件,那么这个文件的所有者就是hadoop1。

  2)所在组:默认为文件创建者的所在组,当文件创建者发生改变时,所在组不会随之变化,文件所在组也需要给定指令才能修改。

  3)其他组:所在组以外的组。

1)文件/目录 所有者

  ① 查看文件的所有者

  ls -ahl 文件名

  

  ② 修改文件所有者

  chown 用户名 文件名

  

  注意:在文件被创建时,文件所在组为所有者(文件创建者)的所在组,但是当文件所有者发生修改时,文件的所在组并不会随之改变。

  ③、组的创建和修改用户所在组

  在添加用户时直接指定用户所属的组:useradd -g Hadoop hadoop2

  也可以改变一个已经创建好的用户的坐在组(需要使用root权限):

  

  

2)权限的基本介绍

  当使用ls -l或者其他以列表格式显示目录内容的时候,会看到这样的内容:

  

  ①、rwx权限详解【重点】

  A)rwx作用到文件

    a) 【r】:代表可读权限,可以使用cat/vim等指令查看文件内容。

    b) 【w】:代表可修改,但不代表可以删除此文件,删除一个文件的前提是当前用户对此文件所在目录拥有 w 权限,才能删除该文件。

    c) 【x】:代表可执行

  B)rwx作用到目录

    a) 【r】:代表可读权限,可以使用ls等命令查看目录内容。

    b) 【w】:代表可修改,可以在此目录下删除、创建文件,也可以重命名目录,但如果想要删除此目录,还需要其上级目录的修改权限。

    c) 【x】:代表可以进入该目录

  ②、修改权限【重点】

  chmod指令,可以修改文件或者目录的权限

  A)第一种修改方式:+、-、=,变更权限

    u :所有者  g:所有者  o:其他人  a:所有人(即u、g、o的并集)

    例:chmod u=rwx,g=rx,o=x 文件名

      chmod o+x 文件目录名

      chmod a-x 文件目录名

  B)第二种方式:通过数字修改权限【建议使用】

    规则:r=4 w=2 x=1  rw=6 rx=5 rwx=7

    chmod u=rwx,g=rx,o=x 文件名  相当于  chmod 751 文件目录名

    案例:

    chmod  755  cat.txt

3)修改文件所有者

    ① 、基本介绍

    chown newowner file   改变文件的所有者

    chown newowner:newgroup file   改变文件的所有者和所在组

    ②、案例演示:

    

    递归的将某目录下所有文件和子目录改回root(需使用选项 -R )

    

4)改变用户所在组

  ①、介绍

    chgrp 新的组名 文件名  改变文件的所在组

  ②、案例

    

学习笔记,如有错误,欢迎指正

    

Linux的组管理和权限管理的更多相关文章

  1. Linux 实用指令(5)--组管理和权限管理

    目录 组管理和权限管理 1 Linux组基本介绍 2 文件/目录 所有者 2.1 查看文件的所有者 2.2 修改文件所有者 3 组的创建 3.1 基本指令 3.2 应用实例 4 文件/目录 所在组 4 ...

  2. linux学习之路第八天(组管理和权限管理)

    组管理和权限管理 1.Linux 组基本介绍 在linux中的每个用户必须属于一个组,不能独立于组外.在linux中每个文件有所有者,所在组,其他组的概念 1)所有者 2)所在组 3)其它组 4)改变 ...

  3. Linux操作系统(2):组管理和权限管理

    组管理和权限管理 Outline 1.查看文件所有者:ls -ahl 2.更改文件或目录权限命令:chmod 3.更改文件或目录所有者命令:chown 4.更改文件或目录所属组命令:chgrp 1)组 ...

  4. Linux第四节 组管理、用户管理、权限管理 / chmod /chown / umask / vim

    三期第三讲1.组管理/用户管理(重要文件系统会实时备份 file-) vim/etc/group: 组管理文件://组名:密码控位键:组id:成员 vim/etc/gshadow:组密码管理文件:// ...

  5. 用户管理_组管理_权限管理.ziw

    2017年1月10日, 星期二 用户管理_组管理_权限管理 用户管理: useradd, userdel, usermod, passwd, chsh, chfn, finger, id, chage ...

  6. MySQL 用户管理与权限管理

    MySQL 用户管理与权限管理 -- 操作环境mysql> show variables like 'version';  +---------------+--------+| Variabl ...

  7. MySQL数据分析-(9)库操作补充:用户管理和权限管理

    大家好,我是jacky,很高兴继续跟大家学习MySQL数据分析实战,本节课的主题是用户管理和权限管理: 在分享之前,jacky在不厌其烦的强调一下:学习任何一门学科和技能,最重要的是捋清逻辑,我们要知 ...

  8. Linux - 组管理和权限管理

    l Linux组基本介绍 在linux中的每个用户必须属于一个组,不能独立于组外.在linux中每个文件有所有者.所在组.其它组的概念. 1) 所有者 2) 所在组 3) 其它组 4) 改变用户所在的 ...

  9. Linux学习(五)-Linux组管理和权限管理

    Linux组基本介绍 在Linux中的每一个用户必须属于一个组,不能独立与组外.在Linux中每个文件有所有者,所在组,其他组的概念 所有者 所在组 其它组 改变用户所在组 1.文件/目录 所有者 文 ...

随机推荐

  1. 初探内核之《Linux内核设计与实现》笔记下

    定时器和时间管理 系统中有很多与时间相关的程序(比如定期执行的任务,某一时间执行的任务,推迟一段时间执行的任务),因此,时间的管理对于linux来说非常重要. 主要内容: 系统时间 定时器 定时器相关 ...

  2. MyBatis拦截器自定义分页插件实现

    MyBaits是一个开源的优秀的持久层框架,SQL语句与代码分离,面向配置的编程,良好支持复杂数据映射,动态SQL;MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀的持久层框架.MyB ...

  3. MySQL 5.7安装最佳实践

    MySQL 5.7安装最佳实践 1.环境准备OS: CentOS Linux release 7.4.1708 (Core) for VMwareMySQL: mysql-5.7.24-linux-g ...

  4. 前端Vue知识小白

    感觉是已好久没写博文了.今日难得有时间,便写一篇文章.此文章是关于前端知识的,我本身是后端,因工作或其他需要,便学习了前端Vue.此文章是在菜鸟教程上学习的.那么下面进入正文! 首先,Vue.js是一 ...

  5. java猜数游戏

    java随机数的产生 int number=(int)(Math.random()*10+1) Math.random()*n //n个随机数,从0开始 do{}while循环 //猜数,1到10的随 ...

  6. 从实践角度重新理解BIO和NIO

    前言 这段时间自己在看一些Java中BIO和NIO之类的东西,看了很多博客,发现各种关于NIO的概念说的天花乱坠头头是道,可以说是非常的完整,但是整个看下来之后,自己对NIO还是一知半解的状态,所以这 ...

  7. Web安全之url跳转漏洞及bypass总结

    0x01 成因 对于URL跳转的实现一般会有几种实现方式: META标签内跳转 javascript跳转 header头跳转 通过以GET或者POST的方式接收将要跳转的URL,然后通过上面的几种方式 ...

  8. css 块元素超出文字省略表示

    .text-omit{ white-space: nowrap; text-overflow: ellipsis; overflow: hidden; } 只对块元素的设置有效 . 块元素和行内元素见 ...

  9. MySQL 插入记录时自动更新时间戳

    将字段设置成timestamp类型,同时默认值设置成 CURRENT_TIMESTAMP.

  10. cmake::helloworld

    ubuntu16. cmake安装 apt-get install cmake 1.创建 CMakeLists.txt , main.cpp 2.cmake . 生成 makefile 3.遇到错误c ...