用户与用户组
用户
Linux下用户分为三种:
- 超级用户:拥有对系统的最高管理权限,默认是root用户。
- 普通用户:只能对自己目录下的文件进行访问和修改,具有登录系统的权限。
- 虚拟用户:这类用户不能登陆系统,他们存在的意义主要是方便系统管理,满足相应的系统进程对文件属主的要求。
用户&&组
- Linux是一个多用户多任务的分时操作系统,当使用系统资源,就必须拥有一个账户。通过不同属性的账户,一方面,可以合理的利用和控制系统资源,另一方面,也可以帮助用户组织文件,提供对用户文件的安全性保护。
- 每个用户都有一个唯一的用户名和用户口令。
- Linux系统中每一个用户都默认拥有一个用户组,系统可以对一个用户组中的所有用户进行统一管理。用户和用户组的对应关系可以是:一对一、一对多、多对一、多对多。
用户和组相关配置文件
/etc/passwd文件
- 这个文件是系统用户配置文件,是用户管理中最重要的一个文件。里面记录着每个用户的一些基本属性,且对所有用户可读。
- 每一行记录对应着一个用户,一冒号分隔,其格式与含义如下:
- 用户名:口令:用户标识号:组标识号:注释性描述:主目录:默认shell
[root@centos7 ~]# more /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
- 用户名:代表着用户账户
- 口令:代表着加密后的用户口令
- 用户标识号:用户的UID,每个用户都有一个唯一的UID,取值范围为0~65535,0代表着超级用户,1-99有系统保留,普通用户默认从500开始。注意:超级用户的标志不是root而是就UID为0
- 组标识号:组的GID,与用户的UID类似
- 注释性描述:记录用户的注释信息
- 主目录:用户的家目录
- 默认shell:默认的命令解释器
/etc/shadow文件
- 这个文件记录着用户的密码信息,该文件只有root用户有读权限,从而保证了用户密码的安全性。
- 文件内容的格式为:
- 用户名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:告警时间:不活动时间:失效时间:保留字段
[root@centos7 ~]# more /etc/shadow root:$6$uWHpbaH5s8/fN/ah$n0cQ8FqSR3g.IRzB0IYU3qYiGneG6T0R6y3vncjIll7W6NACkOxg9oKtkmBs3xXu/nPudamuDcet0fPDbeWbY/::0:99999:7::: bin:*:18353:0:99999:7::: daemon:*:18353:0:99999:7::: adm:*:18353:0:99999:7::: lp:*:18353:0:99999:7:::
- 用户名:代表着用户账户
- 加密口令:存放着加密后的用户密码,如果此字段是*、!、x等字符,则对应的用户不能登陆系统
- 最后一次修改时间:表示从某个时间起,到用户最近一次修改口令的间隔天数,可通过passwd修改密码
- 最小时间间隔:表示两次修改密码之间的最小时间间隔
- 最大时间间隔:表示两次修改密码之间的最大时间间隔
- 告警时间:表示从系统开始警告用户,到密码正式失效之间的天数
- 不活动时间:是用户口令作废多少天后,系统会禁用此账户,如果字段值为空,要是账号永远可用
- 保留字段:目前为空
/etc/group文件
- 这个文件是用户组配置文件
- 此文件的格式为:
- 组名:口令:组标识号:组内用户列表
[root@centos7 ~]# more /etc/group root:x:0: bin:x:1: daemon:x:2: sys:x:3:
- 组名:用户组名称
- 口令:公户组加密后的口令字串
- 组标识号:组的GID
- 组内用户列表:还是属于这个组的用户
/etc/login.defs文件
- 这个文件用来定义看见一个用户时的默认设置
- 比如指定用户的UID和GID范围、用户过期时间、是否创建主目录等
- 列举几个常用的配置:
# 指定密码有效的最大天数 PASS_MAX_DAYS 99999 # 表示从上次密码修改后多少天用户才被允许修改口令 PASS_MIN_DAYS 0 # 指定密码的最小长度 PASS_MIN_LEN 5 # 口令到期前多少天开始通知用户 PASS_WARN_AGE 7 # 表示添加用户时,UID默认从1000开始 UID_MIN 1000 # 表示最大UID为60000 UID_MAX 60000 # 代表组的GIU,与UID类似 GID_MIN 1000 GID_MAX 60000 # 默认创建用户主目录 CREATE_HOME yes
/etc/default/useradd文件
- 这个文件代表不加任何参数,创建一个用户,默认的主目录未元/home下,默认的shell为/bin/bash
[root@centos7 ~]# cat /etc/default/useradd # useradd defaults file GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/bash SKEL=/etc/skel CREATE_MAIL_SPOOL=yes
/etc/skel文件
- 这个文件定义了新建用户在主目录下默认的配置文件
账户管理相关命令
组管理
命令:groupadd
表示创建用户组
groupadd [-g -o] gid group
- -g:指定组的GID
- -o:表示新用户组的GID可以与系统已有用户组GID相同
命令:newgrp
用于多个用户组之间的切换
newgrp [group]
命令:groupdel
表示删除用户组
groupdel [group]
用户管理
命令:useradd
表示创建一个用户
useradd [选项] name
- -u uid:用户标识号
- -g group:指定用户组
- -G group:指定附加组
- -d home:指定主目录。
- -s shell:指定默认使用的shell
命令:userdel
删除一个用户,加-r表示不但删除用户,同时删除用户的主目录及目录下文件。
useradd [-r] [用户账号]
命令:usermod
用来修改用户账号
usermod [选项] [用户名]
- -L:锁定用户密码,使密码无效
- -U:解除密码锁定
- 其他选项与useradd类似
文件权限属性
文件权限是指对文件的访问权限。包括对文件的读、写、删除、执行等。在Linux中,每个用户具有不同的权限。
在Linux中常见的几种文件类型:
- 普通文件:(-)
- 目录:(d)
- 字符设备文件:(c)
- 块设备文件:(b)
- 套接字文件:(s)
- 管道:(p)
- 符号连接文件:(l)
[root@centos7 ~]# ll 总用量 12 -rw-r--r-- 1 root root 42 1月 11 11:48 11.txt
以空格为分隔符,以上每列信息分别为:
文件类型与权限;连接数;文件所属用户和组;文件大小;文件最后修改的日期;文件名称
利用chown改变属主和属组
chown [-R] 用户名 文件或目录
chowm [-R] 用户名:用户组 文件或目录
-R:代表递归,就是将目录下的所有文件子目录会变更所属
下面这个例子可以看出文件所属的更改
[root@centos7 ~]# ll 总用量 12 -rw-r--r-- 1 root root 42 1月 11 11:48 11.txt [root@centos7 ~]# chown haha:haha 11.txt [root@centos7 ~]# ll 总用量 12 -rw-r--r-- 1 haha haha 42 1月 11 11:48 11.txt
利用chmod改变访问权限
这个这个命令用于改变文件或目录的访问权限。可以使用字母代表权限,也可以使用数字代表权限。
chmod [who] [+ | - | =] [mode] 文件名
who表示操作对象:
- u:表示用户,属主
- g:表示用户组
- o:表示其他用户
- a:表示所有用户你呢
操作符号含义:
- +:添加某个权限
- -:取消某个权限
- =:赋予给定的权限
mode:表示可以执行的权限:
- 读:r(4)
- 写:w(2)
- 执行:x(1)
下面这个例子是更改文件的权限:数字的方式比较方便
[root@centos7 ~]# ll 总用量 12 -rw-r--r-- 1 haha haha 42 1月 11 11:48 11.txt [root@centos7 ~]# chmod 755 11.txt [root@centos7 ~]# ll 总用量 12 -rwxr-xr-x 1 haha haha 42 1月 11 11:48 11.txt
此部分内容到此结束:
同系列文章链接: