Ella_Wu

坚持你应该坚持的

linux命令格式及who、whoami、su和passwd命令

linux命令格式及who、whoami、su和passwd命令

 

1. Linux命令的格式

Linux命令的语法格式:

命令 【选项】 【参数】

命令格式中命令、选项、参数的具体含义:

命令:告诉Linux(UNIX)操作系统做(执行)什么。
选项:说明命令运行的方式(可以改变命令的功能)。选项部分是以“-”字符开始的。
参数:说明命令影响(操作)的是什么(如一个文件、一个目录或是一段正文文字)

2. whoami命令

whoami命令常用工具命令 whoami命令用于打印当前有效的用户名称,相当于执行id -un命令。

语法:

whoami(选项)

选项:

--help:在线帮助;

--version:显示版本信息。

实例:

[root@localhost ~]# whoami

root

[root@localhost ~]# id -un

root

 

3. who命令


who命令是显示目前登录系统的用户信息。执行who命令可得知目前有那些用户登入系统,单独执行who命令会列出登入帐号,使用的终端机,登入时间以及从何处登入或正在使用哪个X显示器。

语法:

who(选项)(参数)

选项:

-H或--heading:显示各栏位的标题信息列;

-i或-u或--idle:显示闲置时间,若该用户在前一分钟之内有进行任何动作,将标示成"."号,如果该用户已超过24小时没有任何动作,则标示出"old"字符串;

-m:此参数的效果和指定"am i"字符串相同;

-q或--count:只显示登入系统的帐号名称和总人数;

-s:此参数将忽略不予处理,仅负责解决who指令其他版本的兼容性问题;

-w或-T或--mesg或--message或--writable:显示用户的信息状态栏;

--help:在线帮助;

--version:显示版本信息。

参数:

文件:指定查询文件。

实例:

[root@localhost ~]# who

root pts/0 2013-08-19 15:04 (192.168.0.134)

root pts/1 2013-12-20 10:37 (180.111.155.40)

[root@localhost ~]# who -q

root root

# users=2

[root@localhost ~]# who -H

   NAME      LINE           time                    COMMENT

    root         pts/0    2013-08-19 15:04  (192.168.0.134)

    root         pts/1    2013-12-20 10:37  (180.111.155.40)

[root@localhost ~]# who -w

root   + pts/0   2013-08-19 15:04  (192.168.0.134)

root   + pts/1   2013-12-20 10:37  (180.111.155.40)

4.su命令

 

su命令用户和工作组管理 su命令用于切换当前用户身份到其他用户身份,变更时须输入所要变更的用户帐号与密码。

语法:

su(选项)(参数)

选项:

-c<指令>或--command=<指令>:执行完指定的指令后,即恢复原来的身份;

-f或——fast:适用于csh与tsch,使shell不用去读取启动文件;

-l或——login:改变身份时,也同时变更工作目录,以及HOME,SHELL,USER,logname。此外,也会变更PATH变量;

-m,-p或--preserve-environment:变更身份时,不要变更环境变量;

-s或--shell=:指定要执行的shell;

--help:显示帮助;

--version;显示版本信息。

参数:

用户:指定要切换身份的目标用户。

实例:

变更帐号为root并在执行ls指令后退出变回原使用者:

su -c ls root

变更帐号为root并传入-f选项给新执行的shell:

su root -f

变更帐号为test并改变工作目录至test的家目录:

su -test

5.passwd命令

 

passwd命令用于设置用户的认证信息,包括用户密码、密码过期时间等。系统管理者则能用它管理系统用户的密码。只有管理者可以指定用户名称,一般用户只能变更自己的密码。

 

语法:

passwd(选项)(参数)

选项:

-d:删除密码,仅有系统管理者才能使用;

-f:强制执行;

-k:设置只有在密码过期失效后,方能更新;

-l:锁住密码;

-s:列出密码的相关信息,仅有系统管理者才能使用;

-u:解开已上锁的帐号。

参数:

用户名:需要设置密码的用户名。

 

与用户、组账户信息相关的文件

存放用户信息

/etc/passwd

/etc/shadow

存放组信息

/etc/group

/etc/gshadow

用户信息文件分析(每项用:隔开)

例如:jack:X:503:504:::/home/jack/:/bin/bash

jack  //用户名

X     //口令、密码

503  //用户id(0代表root、普通新建用户从500开始)

504  //所在组

:      //描述

/home/jack/  //用户主目录

/bin/bash  //用户缺省Shell

组信息文件分析

例如:jack:$!$:???:13801:0:99999:7:*:*:

jack    //组名

$!$     //被加密的口令

13801  //创建日期与今天相隔的天数

0      //口令最短位数

99999  //用户口令

7  //到7天时提醒

*  //禁用天数

*  //过期天数

 

实例:

如果是普通用户执行passwd只能修改自己的密码。如果新建用户后,要为新用户创建密码,则用passwd用户名,注意要以root用户的权限来创建。

 

[root@localhost ~]# passwd linuxde   //更改或创建linuxde用户的密码;

Changing password for user linuxde.

New UNIX password: //请输入新密码;

Retype new UNIX password: //再输入一次;

passwd: all authentication tokens updated successfully. //成功;

 

普通用户如果想更改自己的密码,直接运行passwd即可,比如当前操作的用户是linuxde。

[linuxde@localhost ~]$ passwd

Changing password for user linuxde. //更改linuxde用户的密码;

(current) UNIX password: //请输入当前密码;

New UNIX password: //请输入新密码;

Retype new UNIX password: //确认新密码;

passwd: all authentication tokens updated successfully. //更改成功;

 

比如我们让某个用户不能修改密码,可以用-l选项来锁定:

[root@localhost ~]# passwd -l linuxde //锁定用户linuxde不能更改密码;

Locking password for user linuxde. passwd: Success //锁定成功;

[linuxde@localhost ~]# su linuxde //通过su切换到linuxde用户;

[linuxde@localhost ~]$ passwd //linuxde来更改密码;

Changing password for user linuxde.

Changing password for linuxde (current) UNIX password: //输入linuxde的当前密码;

passwd: Authentication token manipulation error //失败,不能更改密码;

 

 

再来一例:

[root@localhost ~]# passwd -d linuxde //清除linuxde用户密码;

Removing password for user linuxde. passwd: Success //清除成功;

[root@localhost ~]# passwd -S linuxde //查询linuxde用户密码状态;

Empty password. //空密码,也就是没有密码;

注意:当我们清除一个用户的密码时,登录时就无需密码,这一点要加以注意。

 

 

 

 

posted @ 2017-09-02 16:59  Ella_Wu  阅读(1891)  评论(0编辑  收藏  举报