Linux命令详解 三
Linux用户和组的属性与权限
本章结构
1.用户账号和组账号概述
2.用户账号和组账号管理
3.查询账号信息
4.查看目录或文件的属性
5.设置目录或文件的权限
6.设置目录或文件的归属
前言
在linux中一切都是文件(文件夹和硬件设备是特殊的文件),如果有可能尽量使用文本文件。文本文件是人和机器能理解的文件,也成为人和机器进行交流的最好途径。由于所有的配置文件都是文本,所以你只需要一个最简单的编辑器就可以修改。由于修改文本文件如此简单,所以Linux系统本身肯定要加以规范。这就引出了用户(组)和权限这2个概念。而这2个概念的引入,完美的保证了Linux的安全性,同时没有添加复杂性。由于一切皆为文件。所以Linux引入了3个文件来管理用户(组), /etc/passwd存放用户信息,/etc/shadow存放用户密码信息,/etc/group存放组信息,然后在文件系统中的每个文件的文件头里面添加了用户和文件之间的关系信息。
一、用户和组的信息查看
1.用户:在Linux下,用户分为三类:超级用户(root)、普通用户、程序用户。
超级用户:UID=0
程序用户:Rhel5/6,UID=1-499; Rhel7,UID=1-999
普通用户:Rhel5/6,UID=500-65535; Rhel7,UID=1000-60000
超级用户有且只有一个,且不能被代替!
匿名用户(nobody):普通用户中权限最小的
2.组:用户权限的集合称为组
私有组:伴随着用户的创建而创建,与用户同名
共有组:附加组 直接创建空组,可以添加已有用户,给组设置权限,该组中的所有用户都具备此权限。
3.UID和GID:用户和组的标识号,具有唯一性
4.用户账号文件/etc/passwd:保存用户名称,宿主目录,登录shell等基本信息
用户账号文件 /etc/shadow:保存用户的密码,账号有效期等信息
添加用户账号 useradd
-u:指定UID
-d:创建家目录指定位置
-e:指定失效时间
-g:指定基本组
-G:指定共有组
-M:不创建家目录
-s:指定可以从shell终端登录
/sbin/nologin状态下 用户无法直接登录和被切换登录
用户被锁定状态下 无法直接登录,可以从root用户切换登录
passwd命令
-l:锁定账号
-u:解锁账号
-d:清除账号
-S:查看账号是否被锁
不指定用户名时,就是就该当前账号的密码!
usermod 修改用户账号的属性
-u:指定UID
-d:创建家目录指定位置
-e:指定失效时间
-g:指定基本组
-G:指定共有组
-M:不创建家目录
-s:指定可以从shell终端登录
-L:锁定
-U:解锁
userdel 删除用户账号
-r 连用户的宿主目录一并删除
用户账号的初始配置文件
新建用于账号时,从 /etc/skel目录中复制而来
主要的用户初始配置文件
~/.bash_prolile
~/.bashrc
~/.bash_logout
隐藏文件
profile 环境变量 进入bash才被加载
bashrc 不进入bash就加载
组账号文件
/etc/group:保存组账号基本信息
/etc/gshadow:保存组账号的密码信息
groupadd:添加组账号
gpasswd:添加删除组成员命令
gpasswd -a:向组内添加一个用户
gpasswd -d :从组内删除一个用户
gpasswd -M :定义组内成员列表,以逗号分隔
groupdel:删除组账号
查询账号信息
groups 查询用户所属的组
id 查询用户身份标识
w、who、user命令:查询已登录到主机的用户信息
二、文件、目录的权限和归属
1.访问权限
1)读取r:允许查看文件内容、显示目录列表
2)写入w:允许修改文件内容,允许在目录中新建、移动、删除文件或子目录
3)可执行x:允许运行程序,切换目录
2.归属(所有权)
1)属主:拥有改文件或目录的用户账号
2)属组:拥有该文件或目录的组账号
-rwxr-xr-x. 1 root root 5343 8月 2 2017 znew
- 数据文件
d 目录
l 连接文件
c 设备文件(字符)
b 块设备文件
rwx r-x r-x 权限
rwx 属主权限 (能读能写能执行)
r-x 属组权限内 (能读不能写能执行)
r-x 所有人权限 other 其他 (能读不能写能执行)
root 属主
root 属组
5343 大小 单位:字节
8月 2 2017 创建时间
普通数据文件不能执行,最高权限666,文件夹的最高权限777
设置文件和目录的权限chmod
chmod命令
chmod [ugoa] [+ - =] [rwx] 文件或目录 或 chmod nnn 文件或目录
u、g、o、a分别表示属主、属组、其它用户、所有用户
+、-、=分别表示怎家、去除、设置权限
nnn表示3位8进制数
常用选项
-R:递归修改指定目录下所有子项的权限
设置文件和目录的归属chown
chown命令
chown命令
chown 属主 文件或目录
chown :属组 文件或目录
chown 属主:属组 文件或目录 或 chown 属主.属组 文件或目录
常用选项
-R:递归修改指定目录下所有文件、子目录的归属
权限掩码umask
umask作用
控制新建的文件或者目录的权限
默认权限去除umask的权限就为新建的文件或者目录的权限
umask设置: umask 022
umask查看: umask
示例
将umask设为000,新建目录或者文件,查看权限
将umask设为022,新建目录或者文件,再查看权限
总结
Linux用户和组的权限去管理,内容不算多,就是有几条新增的命令需要我们记忆。要注意的点就是使用gpasswd -M命令添加用户到组内时,会覆盖原有组内的用户,所以这个命令最好是在空组下使用,一般我们都是用gpasswd -a 一个一个添加用户,避免一些不必要的麻烦。第二点就是在文件、目录的权限和归属中,注意chomd nnn的使用,r=4,w=2,x=1
以简便的方式设置用户和组的权限。
Linux命令详解 三的更多相关文章
- Linux命令详解之—less命令
Linux下还有一个与more命令非常类似的命令--less命令,相比于more命令,less命令更加灵活强大一些,今天就给大家介绍下Linux下的less命令. 更多Linux命令详情请看:Linu ...
- Linux命令详解之–ls命令
今天开始为大家介绍下Linux中常用的命令,首先给大家介绍下Linux中使用频率最高的命令--ls命令. 更多Linux命令详情请看:Linux命令速查手册 linux ls命令用于显示指定工作目录下 ...
- [转载]Linux 命令详解:./configure、make、make install 命令
[转载]Linux 命令详解:./configure.make.make install 命令 来源:https://www.cnblogs.com/tinywan/p/7230039.html 这些 ...
- Linux命令详解之–chmod命令
在Linux中,一般使用chmod命令来修改文件的属性. 利用 chmod 可以藉以控制文件如何被他人所调用.此命令所有使用者都可使用. 一.Linux chmod命令语法Linux chmod 命令 ...
- Linux命令详解之—tail命令
tail命令也是一个非常常用的文件查看类的命令,今天就为大家介绍下Linux tail命令的用法. 更多Linux命令详情请看:Linux命令速查手册 Linux tail命令主要用来从指定点开始将文 ...
- Linux命令详解之—more命令
Linux more命令同cat命令一样,多用来查看文件内容,本文就为大家介绍下Linux more命令的用法. 更多Linux命令详情请看:Linux命令速查手册 Linux的more命令类似 ca ...
- 【转】linux命令详解:md5sum命令
[转]linux命令详解:md5sum命令 转自:http://blog.itpub.net/29320885/viewspace-1710218/ 前言 在网络传输.设备之间转存.复制大文件等时,可 ...
- Linux命令详解之—cat命令
cat命令的功能是连接文件或标准输入并打印,今天就为大家介绍下Linux中的cat命令. 更多Linux命令详情请看:Linux命令速查手册 Linux 的cat命令通常用来显示文件内容,也可以用来将 ...
- Linux命令详解之—pwd命令
Linux的pwd命令也是一个非常常用的命令,本文为大家介绍下Linux中pwd命令的用法. 更多Linux命令详情请看:Linux命令速查手册 Linux pwd命令用于显示工作目录. 执行pwd指 ...
随机推荐
- React中autoComplete="off" 失效
Turning Off Autocomplete in Chrome with React tl;dr Add a hidden input with an arbitrary value attri ...
- HDU1517 Multiply Game
Stan and Ollie play the game of multiplication by multiplying an integer p by one of the numbers 2 t ...
- (全国多校重现赛一) H Numbers
zk has n numbers a1,a2,...,ana1,a2,...,an. For each (i,j) satisfying 1≤i<j≤n, zk generates a new ...
- word2vec用到的c语言知识
argc,avgv用法 argc 表示有几个参数,因为至少要指定一个应用程序的名,所以argc>=1. argv表示参数是什么. int main(int argc, char **argv) ...
- 笔记||Python3之字符串
字符串是Python中最常用的数据类型.我们可以使用引号('或''或''')来创建字符串. 三引号特点:可以多行,也可以多行注释. a = 'hello world' a = "hello ...
- linux—ln
1. 软连接:不可删除源文件,删除源文件导致链接文件找不到,出现红色闪烁. 2. 硬链接: 源文件删除后,链接文件可以正常打开,链接前后的文件inode号相同,硬链接只能针对文件做链接,,不能针 ...
- inline以及inline-block行内元素:vertical-align属性
- ueEditor第一次赋值失败
var ue=null; //在初始化富文本的地方 if (ue == null) { ue = new baidu.editor.ui.Editor(); ue.render('inspection ...
- 【ES6基础】let、const命令和变量的结构赋值
ES5声明变量(2):var .function ES6声明变量(6):var.function.let.const.import和class 1.let命令和const命令 (1)let和const ...
- 中国 700 万开发者中,370 万在使用 VS Code
近日(2019 年 12 月 10 日 - 11 日),Microsoft Ignite The Tour 北京站圆满落幕. 微软大中华区副总裁.市场营销及运营总经理康容先生,在大会上表示:“在中国 ...