14. Linux用户管理及权限类命令讲解
01.Linux用户权限介绍
02.Linux用户管理类命令
03.Linux权限管理类命令
04.涉及到的命令操作演示
笔记:
01.Linux用户权限介绍
在Linux操作系统中,root的权限是{BANNED}最佳高的,相当于Windows的administrator,拥有{BANNED}最佳高权限,能执行任何命令和操作。
用户的角色是通过UID(用户ID)来识别的,而不是用户名
Linux系统三大类用户:root用户、系统用户、普通用户
1)root用户:root用户UID为0,权限{BANNED}最佳高的
2)系统用户:又称虚拟用户、伪用户或假用户,不具有登录Linux系统的能力,但却是系统运行不可缺少的用户
?????????Linux 6: 1~499 Linux 7: 1~999
3)普通用户:能登陆Linux系统,使用的权限有限,由管理员创建
Linux 6: 500~65535 Linux 7: 1000~65535
登录Linux时,Linux先查找/etc/passwd 文件中是否有这个用户名;没有则跳出;
有则读取用户名的user ID、group ID、用户名对应的根目录路径以及所使用的shell;
{BANNED}最佳后在/etc/shadow中核对该UID对应的PWD是否正确;正确则登录到该用户的shell。
more /etc/passswd文件:
root:x:0:0:root:/root:/bin/bash
用户名:密码x:用户id0:组id0:描述信息root:用户根目录/root/:用户登录后的shell
Linux文件或目录的用户、组、其他人权限:
Linux中每一个文件或者目录都包含一个用户权限,一个组的权限,其他人权限如下所示:
{BANNED}中国第一个root表示该文件所有者是root用户
第二个root代表该文件的所属组为root组,其他用户这里默认不标出。
[root@itpux /]#ls -l itpux.txt
-rw-r--r-- 1 root root 91 sep 7 20:21 itpux.txt
如果我们想改变某个文件的所有者和所属的组,可以使用命令chown,参数 R 必须是大写,否则会提示命令错误
chown -R itpux:itpux itpux.txt
每个Linux文件具有四种访问权限:
可读(r)
可写(w)
可执行(x)
无权限(-)
利用 ls -l 、 ls -ld命令可以看到某个文件、目录的权限,它以显示数据的{BANNED}中国第一个字段为准。
{BANNED}中国第一个字段由10个字符组成,如下:
-rw-r--r-- 1 root root 91 sep 7 20:21 itpux.txt
{BANNED}中国第一位表示文件类型,表示文件,d表示目录;后面每三位为一组。
{BANNED}中国第一组:2-4位表示文件所有者的权限,即用户user权限,简称u,在这里表示root用户有(rw-)的权限,可读(r)与
可写(w)的权限,没有可执行(x)权限
第二组:5-7位表示文件所有者所属组成成员的权限,group权限,简称g这里表示root组成员有(r--)的权限,只有
可读的权限。
第三组:8-10位表示所有者所属组之外的用户权限,other权限,简称o,这里表示其他人有(r--)的权限,只有可读的权限。
修改文件或文件夹的权限:
[root@itpux /]chmod u+r itpux.txt //表示为root用户添加读的权限
[root@itpux /]chmod g-w itpux.txt //表示为root组去除写的权限
[root@itpux /]chmod o+x itpux.txt //表示其他人添加可执行的权限
如果我们要为所有用户添加所有rwx权限
[root@itpux /]chmod u=rwx,g=rwx,o=rwx itpux.txt
为了能更简单快捷的使用和熟悉权限,rwx权限可以用数字来表示,分别表示为r(4)、w(2)、x(1)
[root@itpux /]chmod 456 itpux.txt //表示root用户对itpux.txt具有r(4)的权限,root组队itpux.txt文件具有r(4)+x(1)的权限,
其他人具有rw的权限
[root@itpux /]chmod 000 itpux.txt //表示去除所有权限
补充:umask值为022,是系统默认权限,是系统丢弃的权限
umask命令也可以查询该值
1.新建文件{BANNED}最佳高权限为666,即rw-rw-rw-,减去022对应的----w--w-,即为rw-r--r--,则新建文件权限为644
2.新建文件夹{BANNED}最佳高权限777,即rwxrwxrwx,减去022对应的----w--w-,即为rwxr-xr-x,则新建文件夹的权限为755
02.Linux用户管理类命令
useradd 创建新用户;参数-d指定用户所在的主目录;参数-c指定用户的一般信息;参数-u指定用户标识;
如: useradd -d /home/gsau -u 505 gsau
passwd 为创建用户设置口令
userdel 删除系统中的用户信息
usermod 修改系统中的用户信息
finger 查看用户详细信息
id 查看用户id和组信息
groupadd 添加用户组
groupdel 删除用户组
groupmod 修改用户组信息
groups 查看用户隶属于哪些用户组
su 用来切换登录的用户
sudo 如果系统管理员sa不想其它的普通用户知道root密码,而又希望其他用户能够拥有root用户部分权限或者
全部权限。这是{BANNED}最佳好的选择方式是使用sudo。
03.Linux权限管理类命令
chmod 改变目录或文件的访问权限。1、文字设定法:u表示“用户user”,即文件或目录的所有者;
g表示“同组group用户”,即与文件拥有者同组的所有用户;
o表示“其他others用户”;a表示“所有all用户”。
+添加某个权限;-取消某个权限;=赋予给定权限并取消其他所有权限;
r可读;w可写;x可执行;如 chmod g+r o+r 121;
2、数字设定法:r(4)可读 ;w(2) 可写;x(1)可执行; 如 chmod 641 121.txt; chmod 750 121.txt
chown 改变目录或文件的拥有者和所属组,如 chown gsau 121.txt
如 chown -R gsau.root /home/wang
04.涉及到的命令操作演示
1.常用的配置文件
2.组与用户的管理,先建组,再建用户,再改权限 groupadd linuxcool;useradd user1;passwd user1;chmod 775 anaconda-ks.cfg;chown root:root /etc/fstab;
3.su
4.sudo
**********************************************************************************************
1.用户管理
01. useradd命令 – 创建并设置用户信息
参考实例:1. 创建指定的用户信息:[root@linuxcool ~]# useradd user1
2. 创建指定的用户信息,但不创建家目录,亦不让登录系统:[root@linuxcool ~]# useradd -M -s /sbin/nologin user2
3. 创建指定的用户信息,并自定义UID值:[root@linuxcool ~]# useradd -u 6688 user3
4. 创建指定的用户信息,并追加指定组为该账户的扩展组:[root@linuxcool ~]# useradd -G root user4
5. 创建指定的用户信息,并指定过期时间:[root@linuxcool ~]# useradd -e "2023/01/01" user5
02. userdel命令 – 删除用户账户
参考实例:1. 删除指定的用户账户信息:[root@linuxcool ~]# userdel linuxcool
2. 删除指定的用户账户信息及家目录:[root@linuxcool ~]# userdel -r linuxcool
03. usermod命令 – 修改用户账号信息
参考实例:1. 修改指定用户的家目录路径:[root@linuxcool ~]# usermod -d /home linuxprobe
2. 修改指定用户的UID号码:[root@linuxcool ~]# usermod -u 6688 linuxprobe
3. 修改指定用户的名称为linuxcool:[root@linuxcool ~]# usermod -l linuxcool linuxprobe
4. 锁定指定用户的账户,临时不允许登录系统:[root@linuxcool ~]# usermod -L linuxcool
5. 解锁指定用户的账户,再次允许登录系统:[root@linuxcool ~]# usermod -U linuxcool
04. passwd命令 – 修改用户的密码值
参考实例:1. 修改当前登录用户的密码值:
[root@linuxcool ~]# passwd
Changing password for user root.
New password: 输入密码
Retype new password: 再次输入密码
passwd: all authentication tokens updated successfully.
2. 修改指定用户的密码值:
[root@linuxcool ~]# passwd linuxprobe
Changing password for user linuxprobe.
New password: 输入密码
Retype new password: 再次输入密码
passwd: all authentication tokens updated successfully.
3. 锁定指定用户的密码值,不允许其进行修改:
[root@linuxcool ~]# passwd -l linuxprobe
Locking password for user linuxprobe.
passwd: Success
4. 解锁指定用户的密码值,允许其进行修改:
[root@linuxcool ~]# passwd -u linuxprobe
Unlocking password for user linuxprobe.
passwd: Success
5. 强制指定的用户在下次登陆时必须重置其密码:
[root@linuxcool ~]# passwd -e linuxprobe
Expiring password for user linuxprobe.
passwd: Success
6. 删除指定用户的密码值:
[root@linuxcool ~]# passwd -d linuxprobe
Removing password for user linuxprobe.
passwd: Success
7. 查看指定用户的密码状态:
[root@linuxcool ~]# passwd -S linuxprobe
linuxprobe NP 2022-05-11 0 99999 7 -1 (Empty password.)
2.组管理
01. groupadd命令 – 创建新的用户组
参考实例:1. 创建一个新的用户组:[root@linuxcool ~]# groupadd linuxcool
2. 创建一个新的用户组,并指定GID号码:[root@linuxcool ~]# groupadd -g 6688 linuxcool
3. 创建一个新的用户组,设定为系统工作组:[root@linuxcool ~]# groupadd -r linuxcool
02. gpasswd命令 – 设置管理用户组
参考实例:1. 使用-a参数把redis用户添加到linuxcool用户组:[root@linuxcool ~]# gpasswd -a redis linuxcool
Adding user redis to group linuxcool
2. 显示上面使用-a参数添加用户到组用信息:[root@linuxcool ~]# more /etc/group|grep linuxcool
linuxcool:x:1005:redis
3. 使用-d参数从linuxcool组中删除redis用户:[root@linuxcool ~]# gpasswd -d redis linuxcool
Removing user redis from group linuxcool
4. 显示linuxcool组用的redis用户是否删除成功:[root@linuxcool ~]# more /etc/group|grep linuxcool
linuxcool:x:1005:
03. groupdel命令 – 删除用户组
参考实例:1. 使用groupdel命令删除linuxcool工作组:[root@linuxcool ~]# groupdel linuxcool
2. 查看linuxcool组是否删除成功:[root@linuxcool ~]# more /etc/group|grep linuxcool
04. groups命令 – 输出指定用户
参考实例:1. 显示linux用户所属的组:[root@linuxcool ~]# groups linux
2. 显示root组成员:[root@linuxcool ~]# groups root
05. id命令 – 显示用户与用户组信息
参考实例::1. 显示当前用户的身份信息:[root@linuxcool ~]# id
uid=0(root) gid=0(root) groups=0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
2. 显示当前用户的所属群组GID:[root@linuxcool ~]# id -g
0
3. 显示当前用户的身份码UID:[root@linuxcool ~]# id -u
0
4. 查询当前用户的身份信息:[root@linuxcool ~]# id linuxprobe
uid=1000(linuxprobe) gid=1000(linuxprobe) groups=1000(linuxprobe)
06. finger命令 – 查询其他使用者的资料
参考实例:1. 列出当前登录用户的相关信息 :[root@linuxcool ~]# finger -l
2. 显示远程用户信息:[root@linuxcool ~]# finger -m root@192.168.1.13
3. 查询本机管理员的资料:[root@linuxcool ~]# finger root
3.设置文件或者目录的权限
01. 设置文件和目录的权限-(ls -lsa /tmp)
ls -lsa /tmp 查看/tmp目录下的文件的权限
02. 设置文件和目录的权限-chmod
chmod命令 – 改变文件或目录权限
参考实例:1. 设定某个文件的权限为775:[root@linuxcool ~]# chmod 775 anaconda-ks.cfg
2. 设定某个文件让任何人都可以读取:[root@linuxcool ~]# chmod a+r anaconda-ks.cfg
3. 设定某个目录及其内子文件任何人都可以读取和读取:[root@linuxcool ~]# chmod -R a+r Documents
4. 设定某个二进制命令文件上新增SUID特殊权限位:[root@linuxcool ~]# chmod u+s /sbin/reboot
03. 设置文件和目录的归属-chown
chown命令 – 改变文件或目录的用户和用户组
参考实例1. 改变指定文件的所属主与所属组:[root@linuxcool ~]# chown root:root /etc/fstab
2. 改变指定文件的所属主与所属组,并显示过程:[root@linuxcool ~]# chown -c linuxprobe:linuxprobe /etc/fstab
changed ownership of '/etc/fstab' from root:root to linuxprobe:linuxprobe
3. 改变指定目录及其内所有子文件的所属主与所属组:[root@linuxcool ~]# chown -R root:root /etc
04. 权限掩码-umask
umask命令 – 设定权限掩码
参考实例:1. 使用指令”umask”查看当前权限掩码:[root@linuxcool ~]# umask
2. 使组用户的写权限,其他用户的读、写和执行权限都被取消:[root@linuxcool ~]# umask u=, g=w, o=rwx
//////////////////////////////////////////////////////////////////////////////////
五、总结
用户账号管理
useradd :增加用户 useradd user1
passwd :设置用户密码 passwd linuxprobe
usermod :修改用户属性
userdel :删除用户 userdel linuxcool
组账号管理
groupadd :增加用户组账号 groupadd linuxcool
gpasswd :增加、删除用户组成员
groupdel :删除用户组账号 groupdel linuxcool
用户账号文件与组账号文件
用户账号文件
查看用户账号 :/etc/passwd
查看用户账号密码:/etc/shadow
组账号文件
查看组账号:/etc/group
查看组账号密码:/etc/gshadow
查看账号相关信息命令(groups、id、finger、w、who、last) id linuxprobe
设置目录与文件权限(chmod) chmod 775 anaconda-ks.cfg (文件) 或者chmod -R a+r Documents (目录)
设置目录与文件归属(chown) chown root:root /etc/fstab
**********************************************************************************************
阅读(387) | 评论(0) | 转发(0) |