明天讲下linux中的用户权限管理。在linux短发为用户和组这两个概念。用户包括管理员和普通用户,其中普通用户分为:系统用户(通常不须要登陆)和通常用户。
首先我们先讲下几个概念,便于旁边的学习:
Q1:哪些是系统用户?系统用户和通常用户有哪些区别?
我们系统启动时,也有些进程须要随着开机启动,而root用户(管理员)的权限太大,不太适宜。所以设定了一类系统用户,她们的uid在1-499之间。系统用户没有登陆功能,它是为了启动个别特定的进程而设置的。
Q2:用户操作文件权限的流程是如何的?
首先用户A在使用某个命令的时侯,例如:ls修改linux开机启动权限,首先先去查看ls这个命令的权限是哪些,先使用whichisls,查看到ls的文件目录在/bin/ls,使用ls-l/bin/ls查看到它的权限为rwxr-xr-x属主、属组和其他用户都有执行权限。用户A在使用ls后linux服务器搭建,只要用户A有对文件的读权限就可以进行访问,(指出下,在用户使用某个命令后,只须要这个用户有这个命令作用的文件的相关权限即可使用相关权限操作)。先看这个用户是否是这个文件的属主。是的话查看属主相关权限;不是的话在看这个用户是否是文件属组中的一员。是的话查看属组权限;不是的话再看文件其他用户的权限。
下边我们来说下具体的操作:
用户的创建:useradduseradd[options]LOGIN
-u创建用户时设置指定的uid默认是在现有最大的uid前面加一
-g创建用户时设置指定的gid设定的gid必须存在
-G附加组list设置
-c设置注释
-d设置家目录
-e设定用户过期时间
-M不创建家目录
-mk创建家目录,并将/etc/skel文件复制到新建的家目录中
-s设置默认shell
-r创建一个系统用户
删掉用户:userdeluserdel[options]LOGIN
-r删掉用户,但是删掉用户家目录和用户电邮目录
查看用户信息:idid[OPTION]...[USERNAME]
fingerfinger[-lmsp][user...][user@host...]
更改用户信息:usermodusermod[options]LOGIN
-u更改用户UID
-g更改用户GID
-G将这种组设置为用户的附加组,单独-G直接覆盖,通常和-A一起使用是向后添加,不进行覆盖
-c更改注释信息
-d更改家目录
-e更改过期时间YYYY-MM-DD
-l更改登入名称
-L锁定帐号
-U取消锁定帐号
更改shell:chshusername
更改注释:chfnusername
更改密码:passwdpasswd[-k][-l][-u[-f]][-d][-nmindays][-xmaxdays][-wwarndays]
[-iinactivedays][-S][--stdin][username]
--stdin标准输入示例:echo"redhat"|passwd--stdinuser3
-l锁定帐号
-u解锁帐号
-d删掉密码只能从root切换到此帐号
-n设置密码最小使用天数
-x设置密码最大使用天数
-w设置密码过期前的警告天数
-i设置过期后的最短更改密码天数
更改密码过期信息:chagechage[options]user
检测用户帐号的完整性pwck
组创建:groupaddgroupadd[-ggid[-o]][-r][-f][-KKEY=VALUE]group
-g设置GID
-r添加一个系统组
更改组:groupmodgroupmod[-ggid[-o]][-nnew_group_name]group
-g更改GID
-n更改组名
删掉组:groupdelgroupdelgroup
为组设定密码:gpasswdgpasswdgroup
临时切换基本组:newgrpGRPNAME退出exit
创建用户后会在/etc/passwd、/etc/group、/etc/shadow这三个文件中插入相关数据小型linux系统,每位数据段都是以:分割,下边我们来分别看下这三个每位数组代表的意思。
/etc/passwd用户名:密码(x表示密码不在这个文件修改linux开机启动权限,只是占位):UID用户id:GID用户基本组id:注释信息(冒号分隔):家目录:默认shell
/etc/group组名称:组密码:GID:附加组成员
/etc/shadow用户名:加密后密码:距离1970.1.1最后一次更改的天数:密码更改最短天数:密码必须更改的最长使用天数:密码过期前的警告天数:密码过期后登陆必须更改密码能够使用的天数:距离1970.1.1密码过期天数
文章评论