Linux用户&群组&权限  
⦁ Linux安全性模型  
  1)Linux使用User和Group控制使用者对文件的存取权限  
  2)用户使用账号和口令登录Linux  
  3)每个文件都有owner,并且owner属于某个Group  
  4)每个程序都有owner和Group   
⦁ 用户概述
  1、每个用户都有一个唯一的User  ID  
  2、User的信息存储在/etc/passwd中  
    
  1)存储用户名和home目录等信息   
   2)/etc/shadow 

  3、每个User都有一个home目录  
  4、User未经授权将禁止读写或执行其他User的文件  
  5、root用户解读    
    1)超级管理员账号,具有至高无上的权限    
    2)一般不要随便用root登录并操作系统   
⦁ 用户群组概述
  1、每个User都属于一个Group,具有唯一的标识符gid  
  2、Group信息存储于/etc/group中    
    1)gid、成员等   
      
  系统默认的账户群组id<500 自定义的账户群组gid>=500

    2)/etc/gshadow  
  3、系统会为每个User关联一个和User同名的Group    
    1)每个User至少存在于自己同名的Group中    
    2)User也可以加入其他的Group  
  4、在同一个Group中的成员可以共享其他成员的文件  
⦁ Linux权限种类 
  1、读权限,用r表示(read)    可以读取文件或者列出目录的内容(ls)

  2、可写权限,用w表示(write)    可以写、删除文件或者目录  
  3、可执行权限,用x表示(execute)    
    1)可以执行可执行文件    
    2)可以进入目录并使用cd切换进入目录  
  4、没有任何权限,用-表示 
⦁ Linux文件和目录权限解读
  1、文件和目录属性解读
    drwxrwxrwx
    d 表示该对象是文件夹
    - 表示这是文件
    后面每3位为 rwx 分别表示 read write 和 execute 权限 - 表示没有权限
    红色的表示用户的权限
    黄色的表示群组的权限
    黑色的表示特例用户的权限
⦁ Linux权限验证流程
  
⦁  设置Linux文件和目录的权限  
  1、字符表示法  
    1)chmod  [-R]  mode  file    
    2)模式类别  
    chmod [-R] mode file
    eg. chmod [ugo] [+-=] [rwx] filename
    eg. chmod [ugo] [+-=] [rwx] *
  2、数字表示法    
    1)使用一组三位数字来表示    
    2)第一组代表owner的权限    
    3)第二组代表group的权限    
    4)第三组代表others的权限  
    chmod 777 * 读写执行权限 赋予给每个文件
⦁ 用户的主要群组和次要群组 
  1、主要群组   每个文件必须有一个组所有者,因此必须有一个与每个用户相关的默认组,这个默认 组成为新建文件的组所有者,被称作用户的主要群组。用户的主要群组在passwd文件 中的第四个字段中定义。  
  2、次要群组    除了主要群组,用户也可以根据需要再隶属于其他群组,这些组被称为次要群组,在  group文件中的第四个字段中定义  
⦁ 用户的管理  
  1、useradd  [-u  UID]  [-g  主要群组]  [-G  次要群组]  [-mM]  [-c  说明]  [-d  家目录]  [-s  shell]    
  -u:制定一个特殊的UID给该账号 系统账号<500 用户账户>=500   
  -g:指定一个主要群组的名称,会修改passwd文件    
  -G:指定次要群组的名称,会修改group文件    
  -M:强制不要创建用户家目录,系统账号默认    
  -m:强制建立用户家目录,一般账号默认    
  -c:passwd文件的第五个字段的说明文字    
  -d:指定用户的家目录位置,不要使用默认的值   
   -s:指定默认的shell,如果没有指定则默认是/bin/bash    
  2、usermod  [-cdegGlsuLU]  username   
    -c:该账号的说明文字    
  -d:账号的家目录    
  -e:指定用户帐号禁用的日期,格式YY-MM-DD    
  -G:修改次要群组的名称,会修改group文件    
  -g:修改主要群组名称   
   -a:与-G合用,可增加次要群组    
  -l:将当前账号的名称重命名为指定的名称    
  -u:修改UID    
  -L:暂时将用户的密码冻结无法登录    
  -U:解冻账号,其实是删除shadow的!字符  
  3、userdel  [-r]  username   
   -r:连同用户的家目录一起删除  
  4、passwd,修改密码 
⦁ 用户信息的检查      
  1、finger  [-s]  username:查阅用户相关的信息    -s:仅仅列出用户的账号、全名、登录时间等  
  2、id,可以查阅某人或者自己相关的UID、GID信息  
  3、whoami  
  4、who&w  
  5、users  
  6、groups   
⦁ 用户群组的管理  
  1、groupadd  [-g  gid]  [-r]  组名    
  -g:后面接特定的GID,用来指定GID    
  -r:建立系统群组  
  2、groupmod  [-g  gid]  [-n  group_name]  群组名    
  -g:修改既有的GID数字    
  -n:修改既有的组名  
  3、groupdel  [groupname]    删除特定的群组   
⦁ 默认权限的控制   
  1、内核级别,文件的默认权限是666  
  2、内核级别,目录的默认权限是777  
  3、通过umask来阻止一些权限,从而产生最终的权限  
  4、非管理账号的umask为0002  
  5、root的umask为0022 
  6、umask作用原理

  
  7、使用减法计算是错误的 

    

linux 学习-用户&群组&权限的更多相关文章

  1. linux用户 群组权限

    用户及passwd文件 /etc/passwd文件的功能 /etc/passwd文件每个字段的具体含义 shadow文件 /etc/shadow文件的功能 /etc/shadow文件每个字段的具体含义 ...

  2. Linux用户群组权限恢复

    /etc/passwd:该文件用于存放用户详细信息:例如 root:x:0:0:root:/root:/bin/bash 用户id 0:就表示root用户 bin下的bash:表示可以登入操作系统 s ...

  3. linux 用户/群组/权限

    mv 原文件名 新文件名 #相当于重命名 查看文件内容相关命令 cat #查看文件全部内容 head - n #查看文件前n行内容(默认前十行) tail -n #查看文件后n行内容(默认后十行) t ...

  4. Linux学习之文件属性chattr权限与sudo权限(十二)

    Linux学习之文件属性chattr权限与sudo权限 文件属性chattr Linux文件的隐藏属性在保护系统文件的安全性上非常重要,是防止误操作的,对root用户也同样有效.chattr命令只能在 ...

  5. Linux学习之文件特殊权限详解(SetUID、SetGID、Sticky BIT)(十一)

    Linux学习之文件特殊权限详解(SetUID.SetGID.Sticky BIT) 目录 SetUID SetGID Sticky BIT SetUID SetUID简介 只有可以执行的二进制程序和 ...

  6. Linux给用户添加sudo权限

    一.linux给用户添加sudo权限: 有时候,linux下面运行sudo命令,会提示类似: xxxis not in the sudoers file.  This incident will be ...

  7. Linux修改用户所在组方法

    Linux修改用户所在组方法 usermod -g 用户组 用户名强行设置某个用户所在组usermod -G 用户组 用户名把某个用户改为 group(s) usermod -a -G 用户组 用户名 ...

  8. centos的用户、组权限、添加删除用户等操作的详细操作命令

    1.Linux操作系统是多用户多任务操作系统,包括用户账户和组账户两种 细分用户账户(普通用户账户,超级用户账户)除了用户账户以为还 有组账户所谓组账户就是用户账户的集合,centos组中有两种类型, ...

  9. Linux之acl库的安装与使用(限制Linux某用户的访问权限)

    acl库 作用:限制Linux某用户的访问权限 acl库的安装 首先github中下载acl代码: git clone https://github.com/acl-dev/acl 进入acl, 执行 ...

随机推荐

  1. 一步一步实现基于Task的Promise库(二)all和any方法的设计和实现

    在上一篇中我们已经初步完成了Task类,如果仅仅是这些,那么没有多大意义,因为网上这类js库有很多,现在我们来些更复杂的使用场景. 如果我们现在有这样一个需求:我们要先读取aa.txt的内容,然后去后 ...

  2. MVC 5 的 EF6 Code First 入门 系列:排序、筛选和分页

    这是微软官方SignalR 2.0教程Getting Started with Entity Framework 6 Code First using MVC 5 系列的翻译,这里是第三篇:排序.筛选 ...

  3. Glue4Net简单部署基于win服务的Socket程序

    smark 专注于高并发网络和大型网站架规划设计,提供.NET平台下高吞吐的网络通讯应用技术咨询和支持 Glue4Net简单部署基于win服务的Socket程序 在写一些服务应用的时候经常把要它部署到 ...

  4. 动手Jquery插件

    自己动手Jquery插件 最近Web应用程序中越来越多地用到了JQuery等Web前端技术.这些技术框架有效地改善了用户的操作体验,同时也提高了开发人员构造丰富客户 端UI的效率.JQuery本身提供 ...

  5. HttpModule应用

    由做网站操作日志想到的HttpModule应用   背景 在以前的Web项目中,记录用户操作日志,总是在方法里,加一行代码,记录此时用户操作类型与相关信息.该记录日志的方法对原来的业务操作侵入性较强, ...

  6. 【IOS开发】《多线程编程指南》笔记

    线程是单个应用中可以并发执行多个代码路径的多种技术之一.虽然更新的技术如操作对象(Operation)和Grand Central Dispatch(GCD),提供一个等价现代化和高效的基础设施来实现 ...

  7. 【Bootstrap】Bootstrap Datepicker使用

    插件:http://url.cn/V4S8w4 1.添加样式和引用JS文件 <link href="CSS/bootstrap-datetimepicker.css" rel ...

  8. iOS: JS和Native交互的两种方法

    背景: UIWebView: iOS 用来展示 web 端内容的控件. 1. 核心方法: - (NSString*)stringByEvaluatingJavaScriptFromString:(NS ...

  9. url在线编码和解码

    在工作中,经常遇到encode之后的url.想查看里面的某个参数的时候,很不直观.今天在网上搜了一下对url在线编码和解码的网站.对我来说,使用起来很方便.而且这个网站里面,不仅仅有对url的编码和解 ...

  10. SQL 语句中的union操作符

    前端时间,用到了union操作符,周末有时间总结下,w3c手册内容如下: SQL UNION操作符 UNION操作符用于合并两个或多个select语句的结果集. 注意:UNION内部select语句必 ...