第四章账号与权限管理

一、用户账户

1.用户

Linux有三大用户权限

  • 超级管理员:  最高权限拥有者 (root)
  • 普通用户:  权限受限的用户
  • 程序用户:  不是给人用的,是给程序使用的用户

2.Linux 组

  • 基本组: 有且只有一个
  • 附加组: 可有可无,可有多个

 

 

 谁在前面谁是基本组,后面的都是附加组。

3.uid

uid:linux系统用于区分用户的号码。(用户的身份证

生成用户的时候会自动分配一个uid的账号,系统去分别用户的时候,不是以用户名而是以uid

注意:root 不一定是超级管理员  ;  uid号=0的才是超级管理员

uid取值范围:0            是超级管理员

                       1-999     系统用户(201-999,1-200已被用掉)

                       1000+    普通用户

centos6系统用户:1-499  ;   普通用户:500+

4.  /etc/passwd

用户信息文件

系统上所有的用户信息都存在这个文件中

root:x:0:0:root:/root:/bin/bash

root:     用户名

x:         密码占位符

0:      uid用户编号

0:      gid组编号

root:     备注

/root:    家目录的位置

/bin/bash:  用户默认加载的shell环境

命令man  5  passwd 可查询各字段描述

5.useradd

添加账户

使用useradd等于往/etc/passwd 文件里加了一条用户信息

使用passwd 改密码 等于修改 /etc/shadow 的第二字段

基本用法:useradd   选项   用户名

选项: -u     指定uid

           -M     不建立家目录

           -s      指定shell类型

           -d      指定家目录

           -e      账户失效时间 (yy-mm-dd)

           -g   指定基本组的gid

           -G   指定附加组的gid

useradd  lisi

什么选项都不加

  • 生成同名的组,并且这个组是用户的基本组
  • 会生成一个同名的家目录   /home/lisi
  • 往后按顺序生成

命令展开:

指定uid

 

指定家目录,不需要先有家目录

 

-s  /sbin/nologin   不让用户登录

建立一个用户 指定uid 不建家目录 不让这个用户登录

 

指定过期时间   -e   yy-mm-dd

 

 指定基本组 -g   

 指定附加组 -G

 

 

 6. usermod

修改账户

usermod命令是对已存在的用户信息进行修改,useradd命令是对新建用户的信息进行修改

选项:  -l     更改用户名

            -L     锁定用户     与passwd  -l  一样      

            -U     解锁用户    与passwd  -u  一样

            -u     指定uid

           -M     不建立家目录

           -s      指定shell类型

           -d      指定家目录

           -e      账户失效时间 (yy-mm-dd)

           -g   指定基本组的gid

           -G   指定附加组的gid

修改用户名

修改shell环境

 

 

7. passwd   

修改密码

passwd  用户名         

 格式:passwd   选项  用户名  

选项: -l           锁定用户,不让用户登录

           -u          解锁

           -S          查看是否解锁

           -d          清空密码,不需要密码登录

命令展开:

-d          清空密码,不需要密码登录

 

passwd  -l  lisi  锁定lisi  不让用户登录

pass  -S  查看是否锁定

 

8. userdel

删除用户

格式:userdel  选项   用户名

选项:  -r   删除目录时 将家目录一起删除

 

9. 组的增删改查

建立组:  groupadd  组名       ;  删除组: groupdel  组名

往组内添加  删除用户:

gpasswd  -a   往组内添加用户

gpasswd  -d   往组内删除用户

gpasswd  -M   往组内批量添加用户

 

二、权限

 1.访问权限

程序访问文件时的权限,取决于此程序的发起者

  • 进程的发起者,同文件的属主:则应用文件属主权限

  • 进程的发起者,属于文件属组;则应用文件属组权限

  • 应用文件“其它”权限

访问人员分为三类:所属主(u)  ;所属组(g) ;  其他人(o)

权限分为三种

r读权限:允许查看文件内容,显示目录列表

w写权限:允许修改文件内容,允许在目录中新建和移动

x执行权限:允许运行程序、切换目录

 

二进制数字表示法

属主    属组    其他             只有读    只有写    只有执行

rwx      rwx      rwx                r--          -w-          --x            

111      111      111               100         010        001             二进制

  7         7          7                  4             2            1                十进制

 

2.修改文件权限

命令:chmod

基本格式:chmod [选项] 主权限 组权限 其他用户权限 文件名

[选项] -R 递归,将该文件夹下所有文件权限一起修改

实例:修改/date及所属文件为777 ,chmod  777  -R  /data/

 

 

 3.修改文件所属主、所属组

命令:chown

基本格式:chown [选项] 要改的主 :要改的组 文件

[选项] -R 递归将该文件夹下所有文件所属主、组一起修改。

实例:若只修改该文件及所属文件的所属主 chown -R  属主 文件

若只修改该文件及所属文件的所属组 chown -R :属组 文件

 

4. umask

新建文件目录的权限有umask 来决定

新建文件夹权限:文件夹最高权限(777)减去umask值

新建文件权限:文件最高权限(666)减去umask,由于文件可执行较危险所以创建时不能赋予可执行权限,减完umask值之后若有执行权先则文件权限执行加1

查看umask值:umask命令

修改umask值:umask 数值 0022 默认0022

 

 

posted @   此生何必111  阅读(200)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
1
点击右上角即可分享
微信分享提示