博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux: 用户组, 文件权限详解
阅读量:6250 次
发布时间:2019-06-22

本文共 2019 字,大约阅读时间需要 6 分钟。

一、用户组

linux中每个用户必须属于一个组,不能独立于组外.

每个文件有所有者、所在组、其他组的概念

--所有者

  一般为文件的创建者,谁创建了该文件,就天然的成为该文件的所有者

  用ls ‐ahl命令可以看到文件的所有者

  也可以使用

  chown 用户名 文件名           来修改文件的所有者

--所在组

  当某个用户创建了一个文件后,这个文件的所在组就是该用户所在的组

  用ls ‐ahl命令可以看到文件的所有组

  也可以使用

  chgrp 组名 文件名      来修改文件所在的组

--其他组

  除开文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组

 

 

--改变用户的所在组

 

 

 

二、文件权限

2.1  ls

 -l中显示的内容如下:

-rwxrw-r‐-1 root root 1213 Feb 2 09:39 abc

- 10个字符确定不同用户能对文件干什么

- 第一个字符代表文件(-)、目录(d),链接(l)

- 其余字符每3个一组(rwx),读(r)、写(w)、执行(x)

  - 第一组rwx:文件所有者的权限是读、写和执行

  - 第二组rw-:与文件所有者同一组的用户的权限是读、写但不能执行

  - 第三组r--:不与文件所有者同组的其他用户的权限是读不能写和执行

  也可用数字表示为:r=4,w=2,x=1  因此rwx=4+2+1=7

- 1 表示连接的文件数

- root 表示用户

- root表示用户所在的组

- 1213 表示文件大小(字节)

- Feb 2 09:39 表示最后修改日期

- abc 表示文件名

2.2改变权限的命令

 

chmod 改变文件或目录的权限

  chmod 755 abc:赋予abc权限rwxr-xr-x

  chmod u=rwx,g=rx,o=rx abc:同上u=用户权限,g=组权限,o=不同组其他用户权限

  chmod u-x,g+w abc:给abc去除用户执行的权限,增加组写的权限

  chmod a+r abc:给所有用户添加读的权限

 

改变所有者(chown)和用户组(chgrp)命令

  chown xiaoming abc:改变abc的所有者为xiaoming

  chgrp root abc:改变abc所属的组为root

  chown root ./abc:改变abc这个目录的所有者是root

  chown ‐R root ./abc:改变abc这个目录及其下面所有的文件和目录的所有者是root

 

 

改变用户所在组

  在添加用户时,可以指定将该用户添加到哪个组中,同样用root的管理权限可以改变某个用户所在的组

    - usermod ‐g 组名 用户名

  你可以用

    - usermod ‐d 目录名 用户名,改变该用户登录的初始目录

 

 

案例:

建立两个用户组group1和group2,

groupadd group1groupadd group2

 

创建三个用户dennis、daniel、abigale,并且将前2个用户分配在group1用户组下,后一个分配在group2用户组下

useradd -g  group1 dennisuseradd -g  group1 danieluseradd -g  group2 abigale

 

給dennis创建一个密码

passwd dennis

 

以dennis用户登录,创建一个Hello.java文件

以daniel用户登录,观察是否可以访问/home/dennis目录以及读或写其创建的Hello.java文件

以dennis用户登录,修改目录/home/dennis及Hello.java文件的读写权限(更正:修改目录权限的时候,应该使用770,而不是760,否则权限不足)

 

 

改变abigale的用户组由group2变为group1

root@loaclhost home]#    usermode -g group1 abigale

 

可以使用cat /etc/passwd查看并确定

 

【参考】

- groupadd 组名,在linux中添加组

- vi /etc/group,查看linux中所有组信息,可以看可以编辑

- cat /etc/group,查看linux中所有组信息,只可以看不可以编辑

- useradd ‐g 组名 用户名,创建用户的同时指定将该用户分配到哪个组下

- vi /etc/passwd,查看linux中所有用户信息,可以看可以编辑

- cat /etc/passwd,查看linux中所有用户信息,只可以看不可以编辑

 

 

 

转自:  https://www.cnblogs.com/123-/p/4189072.html

 

转载于:https://www.cnblogs.com/jinfanfu/p/10745521.html

你可能感兴趣的文章
Java NIO Overview
查看>>
MD5 和的价值体现在哪里,它是用来做什么的?
查看>>
NHibernate:no persister for 异常
查看>>
Spring Boot + Druid 监控数据库(三)
查看>>
C# MemoryCache GCHandle
查看>>
IDEA使用及优化
查看>>
复制文件到U盘错误0x80071AC3,请运行chkdsk并重试
查看>>
MySQL_插入更新 ON DUPLICATE KEY UPDATE
查看>>
curl
查看>>
查看本机密钥 以及服务器授权密钥 免密码登录
查看>>
Docker中如何删除image(镜像)
查看>>
泛型初始化
查看>>
pandas.read_csv参数详解
查看>>
oracle软件安装完毕之后,如何创建数据库
查看>>
『MXNet』第三弹_Gluon模型参数
查看>>
ASP.NET MVC 学习笔记-7.自定义配置信息 ASP.NET MVC 学习笔记-6.异步控制器 ASP.NET MVC 学习笔记-5.Controller与View的数据传递 ASP...
查看>>
Configuring Apache Kafka for Performance and Resource Management
查看>>
excel 截取单元格部分内容(从指定位置截取)
查看>>
Email-ext plugin
查看>>
绝对干货,教你4分钟插入1000万条数据到mysql数据库表,快快进来
查看>>