用户管理各命令的使用小结

用户和组管理的相关命令:
    useradd、usermod、passwd、userdel
    groupadd、groupmod、gpasswd、groupdel
    chage, chsh, chfn
    id, w, who, whoami
    su

useradd:创建用户

useradd [options] LOGIN
            useradd -D [options]
                -r: 创建系统用户
                -u UID: 指定UID;
                -g GID: 指定用户所属基本组,此组必须事先存在
                -c ‘COMMENT‘:
                -d /PATH/TO/SOMEWHERE:指定用户的主目录路径;此位置不能事先存在,否则,其用户相关配置文件将被复制;/etc/skel
                -s SHELL:设定用户的默认shell;
                    cat /etc/shells
                -G GID,...:指定所属的附加组;
                -M: 不给用户创建家目录;

示例:

[[email protected] ~] useradd tank                            #添加用户
[[email protected] ~] useradd -r zhangy                       #添加系统用户
[[email protected] ~] useradd -d /home/zhangying zhangying    #添加用户,并且指定,home目录
[[email protected] ~] useradd -g mytest -d /home/hao hao      #添加用户,指定组,并且设定home目录(此home目录不能事先存在)
[[email protected] ~] useradd -e 04/05/13 fxxk                #添加用户,并给用户设置有效期

练习:创建用户Oracle,所属附加组database和sql,ID号为400, 家目录为/home/database;

[[email protected] ~]  useradd -u 400 -G database,sql -d /home/database oracle

groupadd:创建组

groupadd [OPTIONS] GROUPNAME
        -g GID: 指明组ID;
        -r: 创建系统组;

示例:


添加一个用户组
[[email protected]ckghost ~] groupadd mytest

添加一个用户组,并指定GID

[[email protected] ~] groupadd -g 444 test

id:查看用户相关的id信息

id [OPTION]... [USER]
        -u: UID
        -g: GID
        -G: Groups
        -n: NAME

示例:

[[email protected] ~]# id                  #显示当前用户的信息
uid=0(root) gid=0(root) 组=0(root)

[[email protected] ~]# id zhangy           #显示zhangy的信息
uid=999(zhangy) gid=999(zhangy) 组=999(zhangy)

su:switch user, 切换用户或以其它用户的身份执行命令

切换方式:
        su USERNAME: 非完全切换;非登录式切换
        su - USERNAME或su -l USERNAME: 完全切换;登录式切换

仅以指定用户的身份执行指定的命令:
        su - USERNAME -c ‘COMMAND‘

示例:

[[email protected] ~] su zhangying              #切换用户,原用户环境变量
[[email protected] ~] su - zhangying		      #切换用户,新用户环境变量
[[email protected] ~] su -c ls root        #切换用户执行命令,执行后返回原用户

usermod:用户属性修改

usermod [OPTION]... LOGIN
                -u UID
                -g GID
                -G GID[,GID,...]:修改用户所属的附加组;同时使用-a选项为追加附加组;
                -s SHELL
                -c ‘COMMENT‘
                -d HOME: 修改用户的家目录为新位置时,用户原来的文件是不会被移动至新家;-m选项可实现同时将其迁至新的家目录;
                -l LOGIN:

-L:lock user
                -U: unlock user

示例:

[[email protected] ~] usermod -d /home/bak/ zhangying    #更改用户home目录
[[email protected] ~] usermod -e 05/06/13 zhangying      #给用户加个有效期
 
1、将 newuser2 添加到组 staff 中
# usermod -G staff newuser2

2、修改 newuser 的用户名为 newuser1

# usermod -l newuser1 newuser

3、锁定账号 newuser1

# usermod -L newuser1

4、解除对 newuser1 的锁定

# usermod -U newuser1
 
 

passwd:给用户添加密码

passwd [OPTION] [UserName]

-l: lock user
                -u: unlock user

-n mindays: 最短使用期限;
                -x maxdays:默认为99999天;
                -w warndays:
                -i inactivedays:

--stdin:从标准输出接收用户密码;

echo ‘centos‘ | passwd --stdin centos

示例:

[[email protected] ~] passwd zhangying     #给zhangying修改密码
 

userdel:删除用户

userdel [-r] USERNAME
                -r:删除用户的同时删除其家目录;

groupmod: 组属性修改
            groupmod [OPTION] GROUPNAME
                -n GROUP_NAME
                -g GID

示例:

[[email protected] ~] userdel fxxk       #删除用户
[[email protected] ~] userdel -r hao     #删除用户,并且删除用户home目录

gpasswd:设定组密码

用法:gpasswd[-a user][-d user][-A user,...][-M user,...][-r][-R]groupname参数:-a:添加用户到组-d:从组删除用户-A:指定管理员-M:指定组成员和-A的用途差不多-r:删除密码-R:限制用户登入组,只有组中的成员才可以用newgrp加入该组 gpasswd groupname:如系统有个peter账户,该账户本身不是groupname群组的成员,使用newgrp需要输入密码即可
 
示例:
 
[[email protected] ~]# gpasswd -A peter test2  #将peter设为test2组管理员

[[email protected] ~]# gpasswd -a peter test2  #将用户peter加入到test2组

[[email protected] ~]# gpasswd -d peter test2  #将用户peter从test2组中移出
 
 

newgrp:切换基本组为指定的组

示例:

[[email protected] ~]# newgrp www  #登录到www群组
 

说明:newgrp指令类似login指令,当它是以相同的帐号,另一个群组名称,再次登入系统。欲使用newgrp指令切换群组,您必须是该群组的用户,否则将无法登入指定的群组。单一用户要同时隶属多个群组,需利用交替用户的设置。若不指定群组名称,则newgrp指令会登入该用户名称的预设群组。

groupdel:删除组

示例:

[[email protected] ~] groupdel test   #删除组test

chage:修改用户账号及密码的属性

chage [OPTION]... LOGIN

  参数意思:  -m 密码可更改的最小天数。为零时代表任何时候都可以更改密码。  -M 密码保持有效的最大天数。  -W 用户密码到期前,提前收到警告信息的天数。  -E 帐号到期的日期。过了这天,此帐号将不可用。  -d 上一次更改的日期  -I 停滞时期。如果一个密码已过期这些天,那么此帐号将不可用。  -l 例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期。
 
示例:
1
[[email protected] ~]# chage -l zhangy      #查看用户密码设定情况
最近一次密码修改时间                                    :  4月 27, 2013
密码过期时间                                    : 从不
密码失效时间                                    : 从不
帐户过期时间                                            : 从不
两次改变密码之间相距的最小天数          :-1
两次改变密码之间相距的最大天数          :-1
在密码过期之前警告的天数        :-1

[[email protected] ~]# chage -M 90 zhangy        #密码有效期90天

[[email protected] ~]# chage -d 0 zhangy       #强制用户登陆时修改口令

[[email protected] ~]# chage -d 0 -m 0 -M 90 -W 15 zhangy   #强制用户下次登陆时修改密码,并且设置密码最低有效期0和最高有限期90,提前15天发警报提示
 
2 
# chage -E ‘2014-09-30‘ test  # test这个账号的有效期是2014-09-30
 

其它命令:

chfn:改 变 你 的 finger 讯 息

chsh:用于 改变 用户的 登录 shell. 如果 没有在 命令行上 指定 shell, chsh 能够 做出 提示.

finger:用户信息查找

whoami:打印与当前生效的用户 ID 关联的用户名。与 id -un 相同。

who:显示当前已登录的用户信息

用法:who [选项]... [ 文件 | 参数1 参数2 ]
示例:
[[email protected] ~]# who    #显示目前登入系统的用户信息
tank     tty1         2013-05-10 08:29
tank     pts/0        2013-05-10 08:29 (192.168.56.1)

[[email protected] ~]# who -a   #显示目前登入系统的用户详细信息
           系统引导 2013-05-10 08:11
           运行级别 2 2013-05-10 08:11
登录     tty4         2013-05-10 08:11               814 id=4
登录     tty5         2013-05-10 08:11               825 id=5
登录     tty2         2013-05-10 08:11               842 id=2
登录     tty3         2013-05-10 08:11               845 id=3
登录     tty6         2013-05-10 08:11               852 id=6
tank     - tty1         2013-05-10 08:29 01:08        1395
tank     + pts/0        2013-05-10 08:29   .          1493 (192.168.56.1)

[[email protected] ~]# who -q #列出所有已登录用户的登录名与用户数量
tank tank
# 用户数=2

[[email protected] ~]# who -u  #列出已登录的用户
tank     tty1         2013-05-10 08:29 01:08        1395
tank     pts/0        2013-05-10 08:29   .          1493 (192.168.56.1)

[[email protected] ~]# who -r  #查看已登录的用户的级别
         运行级别 2 2013-05-10 08:11

[[email protected] ~]# who -b   #上次系统启动时间
         系统引导 2013-05-10 08:11
		 
 

w:显示目前登入系统的用户信息。


语法:w [-fhlsuV][用户名称]
-f  开启或关闭显示用户从何处登入系统。

-h  不显示各栏位的标题信息列。

-l  使用详细格式列表,此为预设值。

-s  使用简洁格式列表,不显示用户登入时间,终端机阶段作业和程序所耗费的CPU时间。

-u  忽略执行程序的名称,以及该程序耗费CPU时间的信息。
 
示例:
[[email protected] ~]# w     #示目前登入系统的用户信息
 09:30:39 up  1:19,  2 users,  load average: 0.00, 0.01, 0.05
USER     TTY      FROM              [email protected]   IDLE   JCPU   PCPU WHAT
tank     tty1                      08:29    1:01m  1.04s  0.91s -bash
tank     pts/0    192.168.56.1     08:29    0.00s  1.70s  0.13s sshd: tank [priv]  
时间: 2024-08-26 07:54:04

用户管理各命令的使用小结的相关文章

linux系统-用户管理-常用命令

linux系统-用户管理-常用命令 一 用户 1 useradd 用户名 [-参数].. 2 passwd 改密码 3 usermod 修改用户的信息 [-G 添加用户到用户组] [-L禁用用户][-U恢复用户] 二 用户组 1 groupadd 组名 [-参数] 添加用户组 2 groupdel  删除用户组 3 groupmod 设置信息 三 用户与用户组 1 添加用户到用户组:gpasswd -a 用户组 用户 2 用户组删除用户:gpasswd -d 用户 3 设置用户组管理员:gpas

Linux用户管理类命令

Linux用户管理类命令详解 实验环境:RHEL6.5 ·用户管理命令 ->useradd 创建用户的命令,格式: useradd [options] USERNAME -u选项表示指定UID,ID号必须大于等于500,因为创建的是一般用户,且ID号不能重复 -g选项表示指定基本组,该指定的组必须事先存在 -g后面跟组名或GID均可 UID与GID不同的用户被称为特殊用户,我们在系统中新建用户的时候,如果不特意指定新建用户的ID号的话,那么我们新建用户的ID号默认为我们的/etc/passwd文

2015年8月25日课程作业(用户管理各命令的使用)-JY1506402-19+liuhui880818

学习内容:用户管理和命令的使用 系统环境:CentOS 6.7/7 x86_64 目录: 1.了解用户及组的管理 2.Linux用户及组相关配置文件 3.用户及组管理的命令使用 useradd,usermod,passwd,userdel groupadd,groumod,gpasswd,groupdel id,w,who,whoami su 一.了解用户及组的管理 Linux用户的分类: 1.管理员root:具有使用系统所有权限的用户,其UID为0. 2.普通用户:即一般用户,其使用系统的权限

用户管理实用命令(第二版)

用户管理实用命令 pwck #检测/etc/passwd文件 #如果对/etc/passwd进行了误操作,他就会提示 vipw #编辑/etc/passwd文件,他与VI的唯一不同,会锁定/etc/passwd文件 id #查看用户id和组信息 finger [username] #查看用户详细信息[有时需要自己安装] su 切换用户 #加了–同时会有环境变量与宿主目录的切换[加了- ,-左右都用空格],而su不会 passwd -S [username] #查看用户密码状态 passwd -d

Linux用户管理各命令的使用

一.首先我们来了解下用户管理和权限管理的机制 A:认证机制 identity(username/password)  用户名/密码 A:permission   权限 mode   模式 ownership   所有权 二.Linux下的用户和组的介绍 用户:USERNAME/password 用户的UID(user identity)从:0-65535 用户分为:管理员.普通用户>系统用户.登录用户. 管理员UID为:0 普通用户UID为:1-60000 组:GROUPNAME/GID 管理员

Linux学习-用户管理常用命令

用户管理常用命令 useradd 新建用户 userdel 删除用户 passwd 修改用户密码 usermod 修改用户属性 chage 修改用户属性 Linux 分为 root 用户和普通用户两种 当用户被添加后,底层做了什么 当用户被创建后,它的家目录是在 /home/用户名 这个下面 当用户被创建后,会被添加到 /etc/passwd 这个文件中,通过下面命令可以查询 # tail 10 /etc/passwd 可以找到新建的用户 当用户被创建后,会被添加到 /etc/shadow 这个

Linux学习笔记之常用用户管理类命令

开始这个话题之前应该先了解下/etc/shadow这个文件中的构造,对于列所代表的意思大体有个了解,先以ftpuser账户来介绍:后边会给出一些相应的例题来做使用说明补充(好吧我承认,这,又是一篇博客作业^_^万恶的标题党). ftpuser:$6$T9WUEls/$AK4hTO1bZ7MXW7VoMej8e7tVG1qqxPy5axVJAAIz4m6uuzZmoYDcQjUG2XlXx7klx/i8yJ1luZDtoKYwJAMa4.:16929:0:99999:7:5:: 总共有9个字段被"

Linux用户管理常用命令

这篇我们讲一讲用户管理的相关内容,涉及到/etc/passwd,/etc/shadow,/etc/group三个用户账号相关的文件以及以下用户管理相关的命令:useradd, usermod, userdel, passwd, groupadd, groupdel, id, su, chage, chfn, chsh, newgrp, gpasswd. 一.passwd文件 ①account:用户名 ②password:密码占位符 ③UID:用户ID号 ④GID:基本组ID号 ⑤GECOS:注释

关于linux用户管理各命令的备忘

这算是51CTO博客上的第一帖,先贴上笔记,然后慢慢来详解: 理一下后续的思路: 1.命令的用法 2.命令使用的场景 3.如果善于使用这些命令,提高系统的安全性. 用户管理和权限管理基础知识: 基本是基于3A原则(Authencattion/Authorzation/Accounting)认证/授权/审计或记账 Linux系统的用户认证一般采用用户名+密码方式. 用户:用户名/UID 每个用户都有一个唯一的UID 用户的UID:0-65535 管理员UID:0 普通用户:1-60000 系统用户