Linux系统-账号和权限管理

目录

一.用户账号和组账号

1.用户账号

2.组账号

3.UID和GID

4.用户文件

4.1.用户账号文件    

4.2.用户密码文件    

二.添加用户账户

1.创建用户命令 useradd

1.1.基本用法

指定用户主目录

指定用户ID

指定用户组

创建用户并指定其Shell

1.2.常用选项

2.设置/更改用户口令 passwd

2.1.基本用法

更改当前用户密码

更改指定用户密码(需要超级用户权限)

2.2.常用选项

3.修改已存在的用户命令 usermod

3.1.基本用法

修改用户名

修改用户ID

3.2.常用选项

4.删除用户命令 userdel

4.1.基本用法

删除用户账户

删除用户账户及其主目录

4.2.常用选项

三.环境初始化配置

1.系统环境初始化配置文件

2.用户环境初始化配置文件

3.其他配置

3.1.设置用户每次登录时要执行的命令

3.2.设置切换shell环境时(包括登录系统时)要执行的命令

3.3.设置退出登录或shell环境时执行的命令

四.管理目录和文件属性

1.组账号文件

2.组账号管理

2.1.添加组账号命令 groupadd

基本用法

常用选项

2.2.管理组账号的成员命令 gpasswd

基本用法

常用选项

2.3.删除组账号 groupdel

基本用法

常用选项

2.4.查询用户所属的组 groups

基本用法

2.5.查询登录系统的用户

3.文件权限

4.设置权限

4.1.设置文件和目录的权限 chmod

基本用法

常用选项

4.2.设置文件和目录的归属chown

基本用法

常用选项

4.3.umask

作用

设置


一.用户账号和组账号

1.用户账号

超级账号:root用户是Linux操作系统中默认的超级用户账号,对本主机拥有最高的权限。系统中超

级用户是唯一的

普通用户:由root用户或其他管理员用户创建,拥有的权限会受到限制,一般只在用户自己的宿主

目录中拥有完整权限

程序用户:在安装Linux操作系统及部分应用程序,会添加一些特定的低权限用户账户,这些用户

一般不允许登录到系统,仅用于维持系统或某个程序的正常运行,如bin、daemon、ftp、mail等

2.组账号

基本组(私有组)

  • 建立账户时,若没有指定账户所属的组,系统会建立一个和用户名相同的组,这个组就是私有组,这个组默认只容纳了一个用户。只有当系统建立的和用户同名的组才是私有组

  • 在用户所属组中的第一个组称为基本组,基本组在 /etc/passwd 文件中指定

附加组(共有组)

  • 除了第一个组外的其他组为附加组或公共组,附加组在 /etc/group 文件中指定
  • 用户额外加入的除了基本组以外的组

3.UID和GID

UID(User IDentity,用户标识号)

GID(Group IDentify,组标识号)

  • root 用户账号UID和GID号为固定值 0
  • 程序用户的账号的UID和GID号默认为
  1.  Centos5、6:1~499
  2.  Centos7:1~999
  • 普通用户的UID和GID号默认为
  1.  Centos5、6:500~60000
  2.  Centos7:1000~60000

4.用户文件

4.1.用户账号文件    

/etc/passwd      

有7个字段  

用户名:x密码占位符:UID:GID:用户说明:家目录:登录shell

允许登录系统/bin/bash  不允许登录系统/sbin/nologin  /bin/false

4.2.用户密码文件    

/etc/shadow

有9个字段  

用户名:密码字符串:上一次修改密码的时间:密码最短有限期:密码最长有限期:密码过期提前告警的

时间:密码过期禁用用户的时间:账号失效的时间:空

从1970.1.1开始算起   默认为0不限制  默认为99999永不过期  默认为7                                

二.添加用户账户

1.创建用户命令 useradd

useradd [选项]… 用户名

1.1.基本用法

指定用户主目录
sudo useradd -d /home/newhome username
指定用户ID
sudo useradd -u uid username
指定用户组
sudo useradd -g groupname username
创建用户并指定其Shell
sudo useradd -s /bin/bash username

1.2.常用选项

-u指定用户的 UID 号,要求该 UID 号码未被其他用户使用
-d指定用户的宿主目录位置(当与-M 一起使用时,不生效)。只能用绝对路径指定目录,且不需要事先创建目录
-e指定用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式
-g指定用户的基本组名(或使用 GID 号),对应的组名必须已存在
-G指定用户的附加组名(或使用 GID 号),对应的组名必须已存在
-M不建立宿主目录
-s指定用户的登录Shell,(比如/bin/bash为可登陆系统,/sbin/nologin和/bin/false为禁止用户登陆系统)

2.设置/更改用户口令 passwd

passwd [选项]… 用户名

2.1.基本用法

更改当前用户密码
passwd
更改指定用户密码(需要超级用户权限)
passwd username

2.2.常用选项

-d清空指定用户的密码,仅使用用户名即可登录系统
-l锁定用户密码,锁定的用户账号无法再登陆系统
-u解开已锁定用户密码,允许用户自行修改
-S查看用户账户的状态(是否被锁定)
-e密码立即过期,下次登陆强制修改密码
-k保留即将过期的用户在期满后能仍能使用

3.修改已存在的用户命令 usermod

usermod [选项]… 用户名

3.1.基本用法

修改用户名
usermod -l new_username old_username
修改用户ID
usermod -u new_uid username

3.2.常用选项

-u修改用户的 UID 号
-d修改用户的宿主目录位置
-e 修改用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式
-g 修改用户的基本组名(或使用 GID 号)
-G 修改用户的附加组名(或使用 GID 号)
-s 指定用户的登录 Shell
-l 更改用户账户的登录名称
-L锁定用户账户
-U解锁用户账户

4.删除用户命令 userdel

userdel [选项]… 用户名

4.1.基本用法

删除用户账户
userdel username
删除用户账户及其主目录
userdel -r username

4.2.常用选项

-f强制删除用户账户,即使用户当前登录或用户的进程仍在运行中
-r同时删除用户的主目录及其相关文件
-Z删除用户的SELinux用户记录

三.环境初始化配置

1.系统环境初始化配置文件

/etc/profile      

/etc/bashrc

 对所有用户有效

2.用户环境初始化配置文件

~/.bash_profile	  

~/.bashrc     

~/.bash_logout

只对当前用户有效

3.其他配置

3.1.设置用户每次登录时要执行的命令

/etc/profile   

~/.bash_profile

3.2.设置切换shell环境时(包括登录系统时)要执行的命令

/etc/bashrc    

~/.bashrc

3.3.设置退出登录或shell环境时执行的命令

~/.bash_logout

四.管理目录和文件属性

1.组账号文件

 /etc/group
  •  有4个字段                             

 组账号名:x占位符:GID号:组账号成员

2.组账号管理

2.1.添加组账号命令 groupadd

groupadd [-g GID]  组名
基本用法

创建新用户组

groupadd groupname
常用选项
-g GID

指定新用户组的组ID(GID)

如果未指定,系统将自动分配一个未被使用的GID

-r

创建一个系统用户组

将为用户组分配一个低的GID

通常在500以下

2.2.管理组账号的成员命令 gpasswd

gpasswd [选项]… 组账号名
基本用法

设置用户组密码

gpasswd groupname

添加用户到用户组

gpasswd -a username groupname

从用户组中删除用户

gpasswd -d username groupname
常用选项
-A username

指定一个用户作为管理员

管理员可以添加或删除用户组成员,以及更改用户组密码

-M username1;username2直接设置用户组的成员列表,取代原有成员列表
-R 

指定用户组为只读模式

禁止普通用户修改用户组

2.3.删除组账号 groupdel

groupdel [选项]… 组账号名
基本用法

组账号名是要删除的用户组的名称

常用选项
-f强制删除组,即使仍有用户属于该组

2.4.查询用户所属的组 groups

groups  [用户名]
基本用法
  • 用户名 是要查询其所属用户组的用户名
  • 如果未指定用户名,则默认为当前登录用户

注意:groups命令仅显示当前用户的用户组列表,不会显示其他用户的信息

2.5.查询登录系统的用户

 w  who  users

3.文件权限

r读   w写   x执行文件/切换目录   - 
   4     2     1                    0

  • 读取r:允许查看文件内容、显示目录列表
  • 写入w:允许修改文件内容,允许在目录中新建、移动、删除文件或子目录
  • 可执行x:允许运行程序、切换目录

4.设置权限

4.1.设置文件和目录的权限 chmod

chmod [ugoa] [+-=] [rwx] 文件或目录
 
或
 
chmod nnn 文件或目录
  • u,g,o,a分别表示属主、属组、其他用户、所有用户
  • +,-,=分别表示添加,去除、设置权限
基本用法

设定文件权限

chmod permissions filename

设定目录权限

chmod permissions directory
常用选项
-R递归地应用权限修改,包括目录下的所有文件和子目录
-c若该文件权限确实已经更改,才显示其更改动作
-f若该文件权限无法被更改也不显示错误讯息
-v显示权限变更的详细资料

4.2.设置文件和目录的归属chown

chown 属主 文件或目录
chown:属主 文件或目录
chown 属主:属组 文件或目录
基本用法

改变文件的所有者和/或所属组

chown [options] owner[:group] file(s)

递归地改变目录及其下所有文件和子目录的所有者和/或所属组

chown -R [options] owner[:group] directory(s)
常用选项
-R递归地改变目录及其下所有文件和子目录的所有者和/所属组
-v显示每个文件的改变详细信息
--reference=ref_file从ref_file中复制文件所有者和/所属组的信息
-h不跟踪符号链接的目标

4.3.umask

作用
  • 控制新建的文件或者目录的权限
  • 默认权限去除umask的权限为新建的文件或者目录的权限
设置
  • 默认权限 umask 022
  • 文件最大默认权限为6 目录最大默认权限为7
  • 文件/目录的默认权限 最大默认权限-umask值
  • 29
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值