Linux系统之用户、群组和权限
一、用户管理
- 创建用户时,系统为用户分配一个唯一的编号UID,同时为用户创建一个同名的组,并为组分配一个编号GID,并把该用户加入该组中。
系统规定:
uid: 0 特权用户
uid: 1~499 系统用户
uid: 500+ 普通用户
- 任何一个用户有且只有一个私有组,一个用户可以加入多个组
- 家目录:系统还会为用户在/home/创建一个与用户名同名的主目录
- 家目录的模板:系统还会把/etc/skel目录中的内容复制到用户的家目录,作为基本的配置文件
- 同名的邮箱:/var/spool/mail/创建一个与用户同名的邮箱
1、和用户相关的文件或目录:
用户信息:/etc/passwd #密码最后修改时间,从UNIX元年到现在多少天
用户名:密码点位符:uid:gid:描述:家目录:用户的shell
用户密码:/etc/shadow #密码前有!表示锁定
用户:密码:密码最后修改时间:多久不可修改秘密天数:多久内必须要更换密码:密码失效前的警告天数
组信息:/etc/group #此文件中记录组的信息,此文件可查看组内成员
组名:组密码:GID:组成员(缺省有与组名同名的用户)
组密码:/etc/gshadow #存放组的密码信息
家目录:系统会为用户在/home/创建一个与用户名同名的主目录
家目录的模板:系统还会把/etc/skel目录中的内容复制到用户的家目录,作为基本的配置文件
同名的邮箱:/var/spool/mail/创建一个与用户同名的邮箱
2、useradd命令及选项
a) –u:指定用户的UID
b) –g:指定用户所属的群组
c) –d:指定用户的家目录
d) –c:指定用户的备注信息
e) –s:指定用户所用的shell
例:在系统中创建一个名为fox的用户,UID为600,属于heilong组,描述信息为this is a fox
3、usermod命令及选项
usermod命令:修改用户信息
选项:
a) –u:修改用户的UID
b) –g:修改用户的GID
c) –G:将一个用户加入到指定的群组中
d) –d:修改用户的家目录
e) –c:修改用户的备注信息
f) –s:修改用户所用的shell
g) -L: 锁定用户
h) -U: 解锁用户
例:
修改fox用户的家目录为/home/babies的命令:
将fox用户添加到tom这个群组中的命令:
将fox用户的的gid变更为tom群组的命令:
将fox用户锁定,无法登录Linux系统
将fox用户解锁
、
4、userdel命令
userdel:删除用户 注:删除用户信息,不包括用户的家目录和邮箱
-r选项:在删除用户信息的同时,删除用户的家目录和邮箱
二、用户组管理:
# groupadd 组名
# groupadd net01 -g 2000 添加组net01,并指定gid 2000
# groupdel net01 删除组net01
# grep 'net01' /etc/group 查看/etc/group中组net01信息
# groupmod -n 新组名 旧组名
-g 从新指定GID
gpasswd [参数] user 组名称
-a 添加用户到组中
-d将用户从组中删除
gpasswd 组名 为组设置密码
groups 查看当前用户的组信息
三、权限管理
1、文件权限
第一列:文件的类型和权限信息
第二列:硬连接数
第三列:属主,文件的拥有着
第四列:属组,文件所属群组
第五列:文件的大小,默认单位是bytes
第六列:文件的创建日期或是敢后的修改日期
第七列:文件名
第一列的第一个字符:
d:目录
-:普通文件
l:链接文件,类似windows的快捷方式
b:块设备文件
c:字符设备文件,例如:键盘,鼠标
p:管道文件,解决多个程序同时存取一个文件的问题
s:套接字文件,通常用于网络上的数据承接,很多存在于/var/run
文件权限:
r->读权限,cat、less、more等
w->写权限,可以编辑文件内容
x->执行权限,可以被执行
2、目录权限:
r->可以查看该目录下的文件或目录,如ls命令
w->可以在该目录下创建文件或目录,删除文件或目录,重命名文件或目录,移动该目录下的文件或目录
x->用户可以进入该目录,使该目录成为工作目录
3、更改文件的属主、属组
chown 改变文件的拥有者和群组
chown [参数] [用户] [:或者.组] 文件名
-R-递归更改
[root@tianyun ~]# chown alice.hr file1 //改属主、属组
[root@tianyun ~]# chown alice file1 //只改属主
[root@tianyun ~]# chown .hr file1 //只改属组 =chgrp:
[root@tianyun ~]# chgrp group file1 //改文件属组
[root@tianyun ~]# chgrp -R group dir1 //改文件属组
4、更改权限
a. 使用字符 对象 赋值符 权限类型
u + r + 在原基础上加权限
g - w -R 递归更改
o = x - 在原基础上减权限
[root@tianyun ~]# chmod u+x file1 //属主增加执行
[root@tianyun ~]# chmod a=rwx file1 //所有人等于读写执行
[root@tianyun ~]# chmod a=- file1 //所有人没有权限
[root@tianyun ~]# chmod ug=rw,o=r file1//属主属组等于读写,其他人只读
[root@tianyun ~]# ll file1 //以长模式方式查看文件权限
-rw-rw-r-- 1 alice it 17 10-25 16:45 file1 //显示的结果
b. 数字 r=4,w=2,x=1
[root@tianyun ~]# chmod 644 file1
[root@tianyun ~]# ll file1
-rw-r--r-- 1 alice it 17 10-25 16:45 file1
Linux系统之用户、群组和权限的更多相关文章
- Linux系统下用户与组的管理
Linux系统下用户与组的管理 一.用户及组基本概述 Linux 系统上,用户管理是基于用户名和密码的方式进行资源的分配. 1.uid(用户身份标识) (1)root用户 uid为0 (2)普通用户: ...
- 04 linux用户群组和权限
作业一: 1)新建用户natasha,uid为1000,gid为555,备注信息为“master” 2)修改natasha用户的家目录为/Natasha 3)查看用户信息配置文件的最后一行 4)为na ...
- linux概念之用户,组及权限
Linux 是一个多用户.多任务的操作系统:我们应该了解单用户多任务和多用户多任务的概念 单用户多任务一个beinan用户,为了完成工作,执行了几个任务:当然beinan这个用户,其它的人还能以远程登 ...
- Linux 系统的用户和组
目录 1. 用户及组相关文件 2. 用户相关查询 2.1 直接通过cat文件查看用户及组文件内容 2.2 使用下面查询命令查看 3. 使用操作命令修改用户及组相关文件 3.1 专有编辑命令(仅限高级用 ...
- Linux下的用户、组和权限
目录 一:用户和组信息的查看 查看用户信息 查看密码信息 查看组信息 特殊组wheel 二:用户和组信息的管理 用户管理 组管理 三:文件权限 文件权限的查看 文件权限的修改 ACL控制权限 setf ...
- Linux 系统的用户和组详解_【all】
1.Linux 用户和用户组详解 2.Linux 文件特殊权限详解 3.Linux 文件的读写执行权限的说明 4.Linux 架构之简述企业网站 5.Linux 环境变量设置详解 6.企业生产环境用户 ...
- linux基础-第六单元 用户、群组和权限
用户及passwd文件 /etc/passwd文件的功能 /etc/passwd文件每个字段的具体含义 shadow文件 /etc/shadow文件的功能 /etc/shadow文件每个字段的具体含义 ...
- Linux基础-3.用户、群组和权限
1.用户及passwd文件 1)掌握/etc/passwd文件的功能:存储所有用户的相关信息,每一个用户占用一行记录,该文件也被称为用户信息数据库(Database) 2)/etc/passwd文件中 ...
- linux用户 群组权限
用户及passwd文件 /etc/passwd文件的功能 /etc/passwd文件每个字段的具体含义 shadow文件 /etc/shadow文件的功能 /etc/shadow文件每个字段的具体含义 ...
- Day 5 Linux之用户、群组和权限
Linux之用户.群组和权限 一.各文件及内容对应含义 1./etc/passwd文件 功能:存储所有用户的相关信息,该文件也被称为用户信息数据库(Database). 含义:如下图所示. 2./et ...
随机推荐
- Lucene-Analyzer
Lucene文本解析器实现 把一段文本信息拆分成多个分词,我们都知道搜索引擎是通过分词检索的,文本解析器的好坏直接决定了搜索的精度和搜索的速度. 1.简单的Demo private static fi ...
- C#客户端Redis服务器的分布式缓存
介绍 在这篇文章中,我想介绍我知道的一种最紧凑的安装和配置Redis服务器的方式.另外,我想简短地概述一下在.NET / C#客户端下Redis hash(哈希类型)和list(链表)的使用. 在这篇 ...
- 在uwp中复活常用的vb库函数
这个博文是纯原创的,转载一定要说明作者是 Nukepayload2!! 在.Net Core 中,很多地方被精简了,有个重灾区就是vb语言库.从当初的囊括vb6库函数并且附带后期绑定到现在的几个函数加 ...
- ToDoList:一款非常优秀的任务管理软件 —— 工具类
ToDoList是一款非常优秀的任务管理软件,用户可以方便地组织和安排计划.这是一个开源的项目,很多细节都考虑到了,推荐大家使用~ ToDoList 帮你把要做的事情列出来,一项一项,类似思维导图. ...
- Unity3D脚本语言UnityScript初探
译者注: Unity3D中支持三种语言:JavaScript.C#.Boo,很多人不知道如何选择,通过这篇译文,我们可以搞清楚这三者语言的来龙去脉,对选择主语言有一定的借鉴意义. 首先,Unity是基 ...
- redis配置注意事项
最近在看redis方面的官方文档,redis-server的相关配置建议如下: 1.vm.overcommit_memory = 1 2.禁用linux内核特性transparent huge pag ...
- mysql performance_schema/information_schema授权问题
mysql> grant all on performance_schema.* to 'testuser'@'%';ERROR 1044 (42000): Access denied for ...
- windbg定位死锁
操作系统对死锁的描述如下: 所谓死锁:是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去. 那么为什么会产生死锁呢? 1.因为系统资源不足. ...
- C# Sqlite 序列
sqlite 不能直接创建自定义函数,不能像 sql server中那样方便创建并使用.不过我们照样可以创建它,创建成功后,我们照样可以随心所欲(比如批量更新等) 序列是一个数据库中很常用的操作,在其 ...
- SQL 查询学生缺考情况
有三个表,如果学生缺考,那么在成绩表中就不存在这个学生的这门课程成绩的记录,写一段SQL语句,检索出每个学生缺考的科目.A 学生表(student)字段1 学生号(s_id)字段2 学生名(s_nam ...