【linux基础用户权限管理】仓廪实则知礼节,衣食足则知荣辱。这篇文章主要讲述linux基础用户权限管理相关的知识,希望能为你提供帮助。
linux基础用户、权限管理UID和GID号:
UID:
linux系统中每一个用户都有一个数字形式的身份标记,成为UID,原则上每个用户的UID是唯一的。
root账号的UID固定值为0
程序用户UID号默认 1~499 ,500~60000的UID号默认分配给普通用户使用。
GID:
每个组账号也有一个数字形式的身份标记,称为GID。
root组账号的GID号为固定值0,程序组GID号默认1~499,500~60000的GID号默认分配给普通用户使用。
用户账户管理与用户相关的配置文件有2个,分别是/etc/passwd 和/etc/shadow。前者用户保存用户名称,宿主目录,登录shell等基本信息。后者保存用户的密码,账号有效等信息。
查看用户信息
cat /etc/passwd
语法
useradd(选项)(参数)
-c<
备注>
:加上备注文字。备注文字会保存在passwd的备注栏位中;
-d<
登入目录>
:指定用户登入时的启始目录;
-D:变更预设值;
-e<
有效期限>
:指定帐号的有效期限;
-f<
缓冲天数>
:指定在密码过期后多少天即关闭该帐号;
-g<
群组>
:指定用户所属的群组;
-G<
群组>
:指定用户所属的附加群组;
-m:自动建立用户的登入目录;
-M:不要自动建立用户的登入目录;
-n:取消建立以用户名称为名的群组;
-r:建立系统帐号;
-s<
shell>
:指定用户登入后所使用的shell;
-u<
uid>
:指定用户id。
举例1
useradd lisa#创建lisa用户
cat /etc/passwd#查看passwd来确定是否新增用户、如果创建用户未指定目录默认在/home
举例2
useradd -d/admin -g whell-G root admin//创建一个账号admin,基本组为whell ,附加组指定root,宿主目录指定根目录下/admin
举例3
useradd -d /usr/local/tom -s /sbin/nologin tom#创建tom用户,家目录为/usr/local/tom,指定tom用户不允许登录系统
passwd——用于让用户可以更改自己的密码 语法
passwd(选项)(参数)
-d:删除密码,仅有系统管理者才能使用;
-f:强制执行;
-k:设置只有在密码过期失效后,方能更新;
-l:锁住密码;
-s:列出密码的相关信息,仅有系统管理者才能使用;
-u:解开已上锁的帐号。
举例1
Passwdlisa#为lisa这个用户设置密码
Passwd -l lisa#把lisa这个用户锁定
Passwd -S lisa#查看锁定账号的状态
Passwd -u lisa#解锁账号lisa
Pssswd -S lisa#查看解锁的账户状态
usermod——用于修改用户信息 语法
usermod(选项)(参数)
-c<
备注>
:修改用户帐号的备注文字;
-d<
登入目录>
:修改用户登入时的目录,只是修改/etc/passwd中用户的家目录配置信息,不会自动创建新的家目录,通常和-m一起使用;
-m<
移动用户家目录>
:移动用户家目录到新的位置,不能单独使用,一般与-d一起使用。
-e<
有效期限>
:修改帐号的有效期限;
-f<
缓冲天数>
:修改在密码过期后多少天即关闭该帐号;
-g<
群组>
:修改用户所属的群组;
-G<
群组>
;修改用户所属的附加群组;
-l<
帐号名称>
:修改用户帐号名称;
-L:锁定用户密码,使密码无效;
-s<
shell>
:修改用户登入后所使用的shell;
-u<
uid>
:修改用户ID;
-U:解除密码锁定。
举例1
usermod -G one lisa#将用户lisa添加到组one
usermod -l lisa1 lisa#修改newuser的用户名为newuser1
usermod -L lisa#锁定账号lisa
usermod -U lisa#解锁对lisa的锁定
usermod -aG group user#添加用户到用户组中
举例2
[root@master ~]# useradd one
[root@master ~]# ls /home
one
[root@master ~]# usermod -md /opt/one-home one
[root@master ~]# ls /data/
one
组账号管理 groupadd ——用于创建一个新的工作组 语法
groupadd(选项)(参数)
-g:指定新建工作组的id;
-r:创建系统工作组,系统工作组的组ID小于500;
-K:覆盖配置文件“/ect/login.defs”;
-o:允许添加组ID号不唯一的工作组。
举例1
cat /etc/group#查看组账号信息
groupadd test#添加一个组为test
gpasswd ——Linux下工作组文件的管理工具 语法
gpasswd(选项)(参数)
-a:添加用户到组;
-d:从组删除用户;
-A:指定管理员;
-M:指定组成员和-A的用途差不多;
-r:删除密码;
-R:限制用户登入组,只有组中的成员才可以用newgrp加入该组。
举例2
groupaddtest#添加组为test
gpasswd -alisa test#lisa用户加入test组
groups lisa#检查lisa是否加入用户组
gpasswd -dlisatest#lisa退出test组
groups lisa#检查lisa是否退出用户组
举例3
gpasswd-Mroot,lisa,admin,lisitom#指定tom组账号成员为root,lisa,admin,lisi
groupdel——用于删除指定的工作组 语法
groupdel(参数)
举例
groupdeltest#删除test组
管理目录和文件的属性
r:4 | w:2 | x:1 |
---|---|---|
读取 | 写入、删除 | 执行 |
u | g | o | a |
---|---|---|---|
属主 | 属组 | 其他人 | 全部 |
chown(选项)(参数)
-c或——changes:效果类似“-v”参数,但仅回报更改的部分;
-f或--quite或——silent:不显示错误信息;
-h或--no-dereference:只对符号连接的文件作修改,而不更改其他任何相关文件;
-R或——recursive:递归处理,将指定目录下的所有文件及子目录一并处理;
-v或——version:显示指令执行过程;
--dereference:效果和“-h”参数相同;
--help:在线帮助;
--reference=<
参考文件或目录>
:把指定文件或目录的拥有者与所属群组全部设成和参考文件或目录的拥有者与所属群组相同;
--version:显示版本信息。
举例
chown lisa:root#更改属主
chown lisa:lisa#更改属主、属组
chmod——用来变更文件或目录的权限
ls -ld/etc#列出属性
drwxr-xr-x. 82 root root 8192 Mar 11 10:08 /etc/#这个权限是755,d是目录、第一个rwx是属主7、第二个r-x是属组5、第三个r-x是其他人5
chmod 745/etc#/etc是目录、744是权限,7表示rwx、4表示r、5表示rx
推荐阅读
- Hadoop-3.1.3高可用集群部署
- 13个免费数据恢复软件
- yum安装mysql5.7报密钥已过期的解决方案
- Docker-compose快速编排
- 游戏开发新手入门教程9:游戏积木之逻辑
- docker-compose下的java应用启动顺序两部曲之一(问题分析)
- Docker 文件系统-AUFS 原理解析(31)
- k8s系列-08-kubespray的安装配置
- Python 细聊一下可以媲美PS的 PIL 图片处理库