文件、目录权限

批量创建新用户 newusers passwd格式文件 批量创建用户,必须和/etc/passwd下的文件格式一样  

下面开始批量创建:   首先准备好一个文件:用vi命令建一个user.txt

如图:QQ截图20160803110151.png

然后用cat user.txt

文件、目录权限

然后newusers批量创建,cat /etc/passwd查看下:

blob.png创建成功

批量修改用户密码  首先编辑好一个文件 vi pass.txt

QQ截图20160803111433.png

编辑好后 用命令:cat psss.txt | chpasswd   ,  修改成功  试下能否登录

blob.png

登陆成功  但是缺少配置文件       下面来解决这个问题

blob.png

 cp -r /etc/skel/. /testdir/user6/   

blob.png

再登录一次试试

blob.png  修改成功




用户属性修改usermod [OPTION] login

-u UID: 新UID

-g GID: 新基本组

-G GROUP1[,GROUP2,…[,GROUPN]]] :新附加组,原来的附加组将会被覆盖;若保留原有,则要同时使用-a 选项,表示append; 

-s SHELL :新的默认SHELL; 

-c 'COMMENT' :新的注释信息;

-d HOME: 新家目录不会自动创建,原家目录中的文件不会同时移动至新的家目录;若要创建新家目录并移动原家数据,同时使用-m 选项

-l login_name: 新的名字;

-L: lock 指定用户, 在/etc/shadow 密码栏的增加!

-U: unlock 指定用户,将 /etc/shadow的密码栏的! 拿掉

-e YYYY-MM-DD: 指明用户账号过期日期;

-f INACTIVE: 设定非活动期限;

blob.png

删除用户 userdel [OPTION]… login

-r: 删除用户家目录、以及邮箱

查看用户相关的ID信息 id [OPTION]… [USER]

-u: UID

-g: GID

-G: Groups查看辅助组

-n: Name显示出名称    可以组合

切换用户或以其他用户身份执行命令  su [options…] [-] [user [args…]]

切换用户的方式:

su UserName :非登录式切换,即不会读取目标用户的配置文件,不改变当前工作目录

su – UserName :登录式切换,会读取目标用户的配置文件,切换至家目录,完全切换

root su 至其他用户无须密码;非root 用户切换时需要密码

换个身份执行命令:  su [-] UserName -c 'COMMAND'

选项:-l –login:  su -l UserName 于 相当于 su – UserName

blob.png   用户切换,家目录没有切换  这种方式叫做不完全切换、非登录式切换

blob.png    切换用户,家目录也切换     这种方式叫做完全式登录

设置密码:passwd [OPTIONS] UserName: 修改指定用户的密码,仅root 用户权限

passwd: 修改自己的密码;

 常用选项:

-l: 锁定指定用户

-u: 解锁指定用户

-e: 强制用户下次登录修改密码

-n mindays: 指定最短使用期限

-x maxdays :最大使用期限

-w warndays :提前多少天开始警告

-i inactivedays :非活动期限;

–stdin :从标准输入接收用户密码;

echo " PASSWORD " | passwd –stdin USERNAME

创建组:  groupadd [OPTION]… group_name

-g GID: 指明GID 号;[GID_MIN, GID_MAX]

-r: 创建系统组;

CentOS 6: ID<500

CentOS 7: ID<1000

blob.pngblob.png

修改和删除组

组属性修改:groupmod     groupmod [OPTION]… group

-n group_name: 新名字

-g GID: 新的GID;

blob.png 

组删除:groupdel    groupdel GROUP

更改组密码

组密码:gpasswd      gpasswd [OPTION] GROUP

-a user: 将user 添加至指定组中;

-d user: 从指定组中移除用户user

-A user1,user2,…: 设置有管理权限的用户列表

blob.png



文件权限

文件的权限主要针对三类对象进行定义:

owner: 属主, u

group: 属组, g

other: 其他, o

每个文件针对每类访问者都定义了三种权限:

r: Readable 读权限  可使用文件查看类工具获取其内容

w: Writable 写权限  可修改其内容

x: eXcutable 执行权限  可以把此文件提请内核启动为一个进程

blob.png

-rw-r–r– 就是权限  第一个root,是文件所有者(owner) 第二个root是文件所属组 还有other

-rw-r–r–就是给这三类对象赋予权限的 按照rwx顺序赋予权限 没有权限用-代替

更该权限语法:chmod who(u,g,o,all) opt(+,-,=) permission(r,w,x) file……

例:blob.png

目录权限

r: 可以使用ls 查看此目录中文件列表

w: 可在此目录中创建文件,也可删除此目录中的文件

x: 可以使用ls -l 查看此目录中文件列表,可以cd 进入此目录

X:只给目录x 权限,不给文件x 权限(文件本身没有权限)

chmod who(u,g,o,all) opt(+,-,=) permission(r,w,x,X) file……

还有一种形式:chmod 数字(3个八进制数字) file    r:4  w:2  x:1 没权限就是0

算法:rwxrwxrwx就是r+w+x=777

blob.png

chmod [OPTION]… –reference=RFILE FILE…

参考RFILE 文件的权限,将FILE 的修改为同RFILE;

blob.png

权限设置:

chgrp  sales testfile 设置所有者

chown  root:admins testfile设置所有者、所属组

chmod  u+wx,g-r,o=rx file所有者+写、执行,所属组-读,other赋予读、执行 

chmod  -R g+rwX /testdir对此目录里的所有子目录、文件 赋予读写权限,X表示对目录加执行权限

chmod  600 file所有者是读、写权限  其他的没权限

chown  mage testfile把所有者改成mage  root可执行,文件所有者user可将之改为user的所属组

blob.png

新建文件和目录的默认权限

 umask值可以用来保留在创建文件权限

umask值 + default默认权限=dir目录777   file文件666

umask 从最大权限中屏蔽掉相应权限位,从而得到默认权限

默认权限=最大权限-umask  如果是目录,则公式不变         

 新建FILE 权限: 666-umask    如果所得结果某位存在执行(奇数)权限,则将其权限+1

 新建DIR 权限: 777-umask

 非特权用户umask是002

 root 的umask 是022

 umask: 查看

 umask #: 设定

 umask –S 模式方式显示

 umask –p 输出可被调用

 全局设置: /etc/bashrc 用户设置:~/.bashrc

更改umask的方法:blob.png临时更改

特殊权限: SUID, SGID, Sticky

三种常用权限:r, w, x user, group, other

可执行文件上SUID权限

 任何一个可执行程序文件能不能启动为进程:取决发起者对程序文件是否拥有执行权限

 启动为进程之后,其进程的属主为原程序文件的属主   只对二进制可执行程序有效

   SUID 设置在目录上无意义

   权限设定:  chmod u+s FILE…     chmod u-s FILE…

可执行文件上SGID权限: 

 任何一个可执行程序文件能不能启动为进程:取决发起者对程序文件是否拥有执行权限

 启动为进程之后,其进程的属主为原程序文件的属组

 权限设定:chmod g+s FILE…      chmod g-s FILE…

目录上的SGID权限

当他作用在一个目录上时,在此目录下新建的文件,将自动继承该目录的所属组

 默认情况下,用户创建文件时,其属组为此用户所属的 主 组

 一旦某目录被设定了SGID ,则对此目录有写权限的用户在此目录中创建的文件所属的组为此目录的属组

 通常用于创建一个协作目录

 权限设定:chmod g+s DIR…    chmod g-s DIR…

sticky位:粘滞

  具有写权限的目录通常用户可以删除该目录中的任何文件,无论该文件的权限或拥有权

 在目录设置Sticky 位,只有文件的所有者或root可 可以删除该文件

 sticky 设置在文件上无意义

 权限设定:chmod o+t DIR…    chmod o-t DIR…

例如:blob.png

设定文件特定属性:

 chattr +i 不能删除,改名,更改

 chattr +a 只能增加

 lsattr 显示特定属性

blob.png

加上特定属性后,只能看,不能删,不能更改,不能移动     

想要恢复正常 chattr -i命令  恢复正常

blob.png

访问控制列表

为多用户或者组的文件和目录赋予访问权限rwx

• mount -o acl /directory

• getfacl file |directory

• setfacl -m u:wang:rwx file|directory

• setfacl -Rm g:sales:rwX directory

• setfacl -M file.acl file|directory把设置权限的代码写到文件里,用M来调用

• setfacl -m g:salesgroup:rw file| directory组权限

• setfacl -m d:u:wang:rx directory 此目录下,新建的文件有此权限

• setfacl -x u:wang file |directory

• setfacl -X file.acl directory

取消用户guoquan所有权限   如图

blob.png

恢复权限:

blob.png

  ACL 文件上的group 权限是mask 值(自定义用户,自定义组,拥有组的最大权限), 而非 传统的组权限       

mask 只影响除所有者和other 的之外的人和组的最大权限      

Mask 需要与用户的权限进行逻辑与运算后,才能变成有限的权限

 getfacl 可看到特殊权限:flags

blob.png

原创文章,作者:旧城以西,如若转载,请注明出处:http://www.178linux.com/27605

(0)
旧城以西旧城以西
上一篇 2016-08-04
下一篇 2016-08-04

相关推荐

  • Linux系统结构 详解

    Linux系统一般有4个主要部分: 内核、shell、文件系统和应用程序。内核、shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序、管理文件并使用系统。部分层次结构如图1-1所示。  1. linux内核         内核是操作系统的核心,具有很多最基本功能,它负责管理系…

    Linux干货 2015-04-13
  • 关于man的几个重要命令

    接触Linux有很多年了,以前对于linux我觉得自己懂得的还算一般吧,可是听了马哥的关于linux的视频课程,发现自己就是一个还没入门的菜鸟,所以果断的狠心的报了马哥的网络班,拜在马哥旗下,以后就打着马哥的旗号到外面混,哈哈最初的这几天学习,因为工作和时间的等等等的关系,所以才到现在还在赶着写我的博客作业,现在就最有感触的几个命令串联一下。学习linux肯…

    Linux干货 2016-10-31
  • Linux文档的压缩与打包

    Linux文档的压缩与打包 概述 compress和uncompress gzip压缩工具 bzip2压缩工具 zip压缩工具 tar压缩工具 cpio压缩工具(主要用来备份还原) Linux文档的压缩与打包 概述 本章将介绍Linux系统中的压缩和解压缩的工具,以及归档工具(tar,cpio) compress/uncompress:   &nb…

    Linux干货 2016-09-06
  • 如何在CentOS上构架一个简易的局域网web服务器

    首先,要取得适用你系统版本的http源码包,这里推荐两个网站: httpd.apache.org www.kernel.org 根据自己系统的版本下载相应的源码包; CentOS7 下载 httpd-2.4.25.tar CentOS6 下载 httpd-2.2.32.tar 以CentOS 6 示例: 首先,我们先来为http…

    2017-03-09
  • linux下的文件查找命令对比(locate,find,grep,sed)

        在linux下,文件系统占据着非常重要的位置,而我们对于文件系统的操作也显得尤为重要。 如果我们想熟悉的操作文件系统,其中,我们需要对文本的查找,截取等命令需要熟悉的掌握。 这里就不得不说几个关于文本操作的几个命令的作用详细介绍和对比。比如: locate,find ,grep ,sed等。 这里,grep ,…

    Linux干货 2016-08-15
  • 正则表达式及文本处理

    正则表达式及文本处理 通俗点说,正则表达式就是处理字符串的方法,更加快速简洁的代表各个要求参数,一般用于描述字符排列和匹配模式的一种语法规则,通过正则表达式一些特殊符号的辅助,让用户轻易的查找、删除、替换一些字符串的处理程序。( ps:正则表达式和通配符不一样,通配符代表的是bash接口的一个功能,但正则表达式是一种字符串处理的表达方式,两者一定要分清楚。)…

    2017-06-11