账号和权限管理

文章详细介绍了Linux系统中的用户帐号、组帐号的概念,包括UID和GID的用途,以及用户和组的管理命令如useradd、passwd、su、usermod和userdel。同时,讲解了/etc/passwd和/etc/group文件的作用,以及如何修改主机名、设置和修改文件或目录权限、归属。此外,还提到了umask用于控制新建文件和目录的默认权限。
摘要由CSDN通过智能技术生成

目录

用户帐号

组帐号

UID和GID

程序用户和普通用户

用户账号文件/etc/passwd

etc/passwd/分段代码的含义

*和!!

useradd  

passwd

su

修改主机名

usermod

删除用户账户userdel

改配置文件

gpasswd

w who users

文件或者目录的权限管理

chown

设置文件和目录的权限chmod

​编辑

umask

本章总结


用户帐号

超级用户、普通用户、程序用户

组帐号

基本组(私有组)

 附加组(公共组)

UID和GID

UID (UserIDentity,用户标识号

 GID (Group IDentify,组标识号)

​​​​

uid是用户账号

gid就是组账号

uid是惟一的会给他默认分配一个gid

附加组需要手动添加

输入id +组名查看是什么用户

uid为0的才是超级管理员

基本组只要你创建了组默认就会分配组

默认uid是多少gid就是多少组就是多少

程序用户和普通用户

程序用户: 1-499( centos 6以前),1-999(centos 7以后)

对守护进程获取资源进行权限分配

普通用户: 500+ (centos6以前) ,1000+ (Centos7以后)

给用户进行交互式登录使用

root账户uid一定为0(切记)

用户账号文件/etc/passwd


保存用户名称、宿主目录、登录Shell等基本信息

文件位置: /etc/passwd

每一行对应一个用户的帐号记录

etc/passwd/分段代码的含义

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

  1. 用户名(Username):它的值为 root,表示该用户的名称为 root。

  2. 密码(Password):它的值为 x,表示该用户的密码已经被加密并存储在 /etc/shadow 文件中。

  3. 用户编号(UID):它的值为 0,表示该用户的 UID 为 0,即超级用户(root)。

  4. 组编号(GID):它的值为 0,表示该用户所属的主组的 GID 为 0,即超级用户组(root)。

  5. 用户注释(Comment):它的值为 root,表示该用户的注释信息为 root。

  6. 家目录(Home Directory):它的值为 /root,表示该用户的家目录为 /root 目录。

  7. Shell 程序(Shell Program):它的值为 /bin/bash,表示该用户在登录时默认使用的 Shell 程序为 Bash。

其中,前五个字段是必须的,而后两个字段可以省略。这些字段以冒号 : 作为分隔符,它们的顺序不可更改。

*和!!

当 /etc/passwd文件中看到

 

*和!!普通用户表示你创建了用户但没有设置密码(密码为空)

程序用户则表示不可登陆

  • 用户名:root
  • 加密后的密码:中间的乱码
  • 最后一次修改密码的时间:19307
  • 密码需要重新修改的最短天数:0
  • 密码需要重新修改的最长天数:99999
  • 密码过期前给出警告的天数:7

useradd  

常用选项:

-u:指定用户的 UID 号,要求该 UID 号码未被其他用户使用。

-d:指定用户的宿主目录位置(当与-M 一起使用时,不生效)。

-e:指定用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式

-g:指定用户的基本组名(或使用 GID 号),对应的组名必须已存在

-G:指定用户的附加组名 (或使用 GID 号),对应的组名必须已存在。

-M:不建立宿主目求。

-s:指定用户的登录 Shell(比如/bin/bash为可登陆系统,/sbin/nologin和/bin/false为禁止用户登陆系统)

默认情况下useradd+用户名剩下的系统会帮你设置

查看就是etc passswd

passwd

常用选项:

-d:清空指定用户的密码,仅使用用户名即可登录系统

-l:锁定用户账户,锁定的用户账号将无法再登录系统。#图形化界面可以登录,文字界面无法登录

-s:查看用户账户的状态 (是否被锁定) 

-u: 解锁用户账户

passwd + 用户名 等于更改用户密码

改密码时Linux密码默认不显示

echo 123456 | passwd--stdin dn

把123456当密码赋予dn用户

此方法主要用在批量添加用户上

su

从超级管理员切换到用户不需要密码

普通用户间切换需要密码

su 不完全退出

su - 完全切换用户

在超级管理员目录下su相当于刷新功能

在普通用户下输入su表示直接切回root用户

修改主机名

hostname 主机名--临时修改,重启失效

vim /etc/hostname ---永久修改

hostnamectl set-hostname 主机名 --永久修改

第二种改配置文件改名必须重启才能生效

第三种命令修改su刷新直接就好了

usermod

修改用户账号属性 usermod

-u:修改用户的 UID 号。usermod -u uid号 用户名

-d:修改用户的宿主目录位置

-e:修改用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式

-g:修改用户的基本组名 或使用 GID 号)

-G:修改用户的附加组名 (或使用 GID 号)

-s:指定用户的登录 shell

-L:锁定用户账户

-U:解锁用户账户

一种用passwd -l锁定密码

一种用usermod -L锁定用户

要记面试会问锁定用户的两种方式(仅限普通用户超级管理员不受影响)

修改uid不能改已存在的uid

usermod - s /nologin test 这是就无法登陆了这时超级管理员无法登录

usermod - L dn 这时root用户不受影响可以登录

删除用户账户userdel

既可以删普通用户也可以删程序用户

userdel -r 用户 连用户加家目录一并删除

改配置文件

source 在bash环境中读取并执行文件当中的命令

etc profile全局用户配置

bash profile个人定制配置文件

/.bash profile: 该文件是用户登录时被执行的脚本,可以用来设置环境变量和一些常用的命令别名等信息。通常用来为用户定制个性化的系统环境。

vim .bash profile

alias cat='cat -n'

source .bash profile

修改之后重新登录shell即可

需要注意的是,这些配置文件是在不同的环境下被执行的,执行的顺序也不同。
通常在登录系统时:
系统会首先执行/etc/profile文件(重要)
然后/.bash_profile文件会被执行,(重要)
然后再执行/.bashrc文件。
而在退出bash shell时,~/.bash_logout文件会被执行。exit退出时自动执行

gpasswd

添加删除组成员 gpasswd

常用选项:

-a: 向组内添加一个用户

-d: 从组内删除一个用户成员

-M: 定义组成员列表,以逗号分隔

useradd yht

useradd hcy

gpasswd -M yht,hcy,qzz dn #将用户yht、hcy和qzz加入到dn用户组中

cat /etc/group

一旦添加到组内后添加的用户就拥有了同等的权限

gpasswd -dtest zhangtaotao#test表示所在的组成员 #zhangtaotao 组名

删除完整格式组员组长都需要写

-M指定多个组员添加到组里

gpasswd -M dn ,test zhangtaotao

前面写组员后面最后是组长组员中间是,隔开

groupdel 删除时不能删除组员必须把用户从组里删出来单独删

也不能删组长因为里面还有组员

以用户方式创建的不可以删

1.当组账号是组员,或者组长,不能删除

2.基于用户创建的组,不能删除

3.只创建了组账号,没有关联用户,且不能是组员也不能说组长时才可以删除

用userdel -r 可以直接全部删除但也需要遵守有组员时删不掉

finger查询用户的详细属性(需要额外安装)

w who users

 

 w最全面的信息who和users简洁版

文件或者目录的权限管理

访问权限

读取r:允许查看文件内容、显示目录列表

写入 w:允许修改文件内容,允许在目录中新建删除文件或子目录。

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

归属(所有权)

属主: 拥有该文件或目录的用户帐号

属组:拥有该文件或目录的组帐号

查看文件/目录的权限和归属

chown

设置文件和目录的归属chown

chown命令
chown 属主 文件或目录
chown :属组 文件或目录
chown 属主:属组 文件或目录

设置文件和目录的权限chmod

常用选项:

-R:递归修改指定目录下所有子项的权限

 

递归就是当前目录下包含目录自己以及目录下所有的文件

加上chmod就是改变当前目录下包含目录自己以及目录下所有的文件的权限

chmod -R 777 test/

改变test文件夹下所有文件的权限

改变文件目录的归属

 

 即改了所在的组也改了用户

 只改变了组没改变用户

1.chown dn:dn +文件或目录名或者可以写成chown dn.dn同样的意思(即该所有者也改了所在组)

2.chown root +文件名或目录名(只改所有者)

3.chown :root +文件名或目录名(只改所在组)

4.chown -R dn:dn +文件名或目录名(修改当前目录和目录里面所有文件的所有者和所在组多个目录递归只会对最后一个目录及其文件生效)

umask

设置目录和文件的默认权限umask

umask作用

控制新建的文件或者目录的权限

默认权限去除umask的权限为新建的文件或者目录的权限

 

666-022得到644

在创建文件时默认不给执行权限

新建的目录无论umask怎么设置只要权限出现基数会自动变成偶数如果后续想要设定权限就要用chmod命令

目录默认自带执行权限

umask就是限制创建新文件的权限如果不做限制

文件默认就是666

目录就是777

666-umask

777-umask

文件:就是没有执行权限,必须要用chmod赋权

目录:就算不给执行权限也默认自带,要改也是用chmod改

本章总结

用户账号管理 (useradd、passwd、usermod、userdel)

组账号管理 (groupadd、gpasswd、groupdel)

用户账号文件与组账号文件

查询账号相关信息的命令 (groups、id、finger、w)

设置目录与文件权限 (chmod)

设置目录与文件归属 (chown)

注意用户账号文件与组账号文件要知道etc /passwd/

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值