12、Linux-用户管理

2019-09-24  本文已影响0人  唯老

一、概要

Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。
用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。
每个用户账号都拥有一个惟一的用户名和各自的口令。
用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。
实现用户账号的管理,要完成的工作主要有如下几个方面:

二、用户类别

1、分类

2、用户标识: UserID ,UID

三、用户操作

1、添加用户

作用

添加用户,用户在配置文件:/etc/passwd

语法

useradd 选项 用户名

常用选项

选项 说明
-g 常用 指定用户登录组的GID或组名 不指定为当前用户名
**-u ** 常用 uid 为账户指定一个唯一的UID
**-d ** 常用 为主目录指定一个名字(如果不想用登录名作为主目录名的话)
**-p ** 常用 passwd 为用户账户指定默认密码
-G 添加多个用户组

栗子

# 新建docker用户
useradd -g 1005 -u 1005 -d /home/docker docker
# 创建mysql用户例如root用户组和docker
useradd  -g group –G root,docker mysql

2、删除用户

作用

删除一个已有的用户账号

语法

userdel 选项 用户名

常用选项

选项 说明
-r 删除用户同时删除其家目录

栗子

userdel docker
# 删除用户同时删除其主目录
userdel -r mysql

3、修改用户

语法

usermod [options] LOGIN

常用选项

-g* 常用 指定用户登录组的GID或组名 不指定为当前用户名
**-u ** 常用 uid 为账户指定一个唯一的UID
**-d ** 常用 为主目录指定一个名字(如果不想用登录名作为主目录名的话)
**-p ** 常用 passwd 为用户账户指定默认密码
-G 添加多个用户组
-l 新的用户名

栗子

usermod -g 10006 -u 10006 -d /home/test -l test java

4、修改密码

作用

修改用户密码,如果不指定用户名默认修改当前用户的密码

语法

passwd [选项] [用户名]

常用选项

选项 说明
-l 锁定密码,即禁用账号
-u 口令解锁。
-d 使账号无口令。
-f 强迫用户下次登录时修改口令

栗子

# 修改当前用户密码
passwd
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
# 修改指定用户的密码
passwd java
# 修改密码为空
passwd -d java
# 禁用账号
passwd -l java
 # 解锁账号
passwd -u java

四、用户组

1、添加用户组

作用

若命令带有-r参数,则创建系统用户组,该类用户组的GID值小于500;若没有-r参数,则创建普通用户组,其GID值大于或等于500

语法

groupadd -g 用户组id 用户组名

常用选项

选项 说明
-g GID 指定新用户组的组标识号(GID)。
-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。

栗子

# 添加默认的 用户组
groupadd normal
# 指定编号 添加用户组
groupadd -g 1000 hello

2、删除用户组

语法

groupdel 用户组

栗子

groupdel normal

3、修改用户组

语法

groupmod 选项 用户组

常用选项

选项 说明
-g 为用户组指定新的组标识号。
-n 新用户组 将用户组的名字改为新名字

栗子

#将组g1的的ID修改成1008
groupmod -g 1008 g1
# 修改g1的标识号改为10009,组名修改为g2
groupmod -g 1009 -n g2 g1

五、其它相关命令

1、切换用户

作用

从一个用户切换到另一个用户

语法

su [选项] 用户名

常用选项

选项 说明
- 当前用户不仅切换为指定用户的身份,
同时所用的工作环境也切换为此用户的环境(包括 PATH 变量、MAIL 变量等),
使用 - 选项可省略用户名,默认会切换为 root 用户。

栗子

# 切换到root用户,环境不切换
su
# 切换到root用户 包括环境
su -root
# 切换到其它存在的用户
su -java

2、其它

  1. 退出当前用户
    exit
    
  2. 查看当前用户名
    whoami
    
  3. 查看所有已有的用户
    cat /etc/passwd
    
  4. 显示用户ID及其所属group的groupID
    id 用户名
    #例如
    id user
    
  5. 查看一个user的主group
    cat /etc/passwd
    user:x:1001:1000::/home/user:/bin/bash,而 cat /etc/group1 显示结果中有 group1:x:1000: ,这说明 user的主group就是group1
    
  6. 添加一个user到一个group
    gpasswd -a 用户名 用户组
    #例如
    gpasswd -a test grouptest
    
  7. 从一个group中删除user
    gpasswd -d 用户名 用户组
    # 例如
    gpasswd -d test grouptest
    
  8. 添加用户,并指定用户ID,同时添加到指定的group
    useradd -u 用户id -g 用户组id 用户名
    # 例如
    useradd -u 2001 -g 2000 test
    
上一篇下一篇

猜你喜欢

热点阅读