Red Hat Enterprise Linux 6.4网络操作系统详解
上QQ阅读APP看书,第一时间看更新

4.6 任务6 使用常用的账户管理命令

账户管理命令可以在非图形化操作中对账户进行有效管理。

1.vipw

vipw命令用于直接对用户账户文件/etc/passwd进行编辑,使用的默认编辑器是vi。在对/etc/passwd文件进行编辑时将自动锁定该文件,编辑结束后对该文件进行解锁,保证了文件的一致性。vipw命令在功能上等同于“vi/etc/passwd”命令,但是比直接使用vi命令更安全。命令格式如下:

        [root@RHEL6~]#vipw

2.vigr

vigr命令用于直接对组群文件/etc/group进行编辑。在用vigr命令对/etc/group文件进行编辑时将自动锁定该文件,编辑结束后对该文件进行解锁,保证了文件的一致性。vigr命令在功能上等同于“vi/etc/group”命令,但是比直接使用vi命令更安全。命令格式如下:

        [root@RHEL6~]#vigr

3.pwck

pwck命令用于验证用户账户文件认证信息的完整性。该命令检测/etc/passwd文件和/etc/shadow文件每行中字段的格式和值是否正确。命令格式如下:

        [root@RHEL6~]#pwck

4.grpck

grpck命令用于验证组群文件认证信息的完整性。该命令检测/etc/group文件和/etc/gshadow文件每行中字段的格式和值是否正确。命令格式如下:

        [root@RHEL6~]#grpck

5.id

id命令用于显示一个用户的UID和GID以及用户所属的组列表。在命令行输入id直接按Enter键,将显示当前用户的ID信息。id命令格式如下:

        id  [选项]  用户名

例如,显示user1用户的UID、GID信息的实例如下所示:

        [root@RHEL6~]#id  user1
        uid=500(user1) gid=500(user1) groups=500(user1)

6.finger、chfn、chsh

使用finger命令可以查看用户的相关信息,包括用户的主目录、启动shell、用户名、地址、电话等存放在/etc/passwd文件中的记录信息。管理员和其他用户都可以用finger命令来了解用户。直接使用finger命令可以查看当前用户的信息。finger命令格式及实例如下:

        finger  [选项]用户名
        [root@RHEL6~]#finger
        Login    Name      Tty      Idle  Login Time      Office    Office Phone
        root     root      tty1        4  Sep 1 14:22
        root     root      pts/0         Sep 1 14:39 (192.168.1.101)

finger命令常用的一些选项如表4-9所示。

表4-9 finger命令选项

用户自己可以使用chfn和chsh命令来修改finger命令显示的内容。chfn命令可以修改用户的办公地址、办公电话和住宅电话等。chsh命令用来修改用户的启动shell。用户在用chfn和chsh修改个人账户信息时会被提示要输入密码。例如:

        [user1@Server~]$chfn
        Changing finger information for user1.
        Password:
        Name [oneuser]:oneuser
        Office []: network
        Office Phone []: 66773007
        Home Phone []: 66778888
        Finger information changed.

用户可以直接输入chsh命令或使用-s选项来指定要更改的启动shell。例如用户user1想把自己的启动shell从bash改为tcsh。可以使用以下两种方法:

        [user1@Server~]$chsh
        Changing shell for user1.
        Password:
        New shell [/bin/bash]: /bin/tcsh
        Shell changed.

        [user1@Server~]$chsh -s /bin/tcsh
        Changing shell for user1.

7.whoami

whoami命令用于显示当前用户的名称。whoami与“id-un”命令作用相同。

        [user1@Server~]$whoami
        User1

8.newgrp

newgrp命令用于转换用户的当前组到指定的主组群,对于没有设置组群口令的组群账户,只有组群的成员才可以使用newgrp命令改变主组群身份到该组群。如果组群设置了口令,其他组群的用户只要拥有组群口令也可以将主组群身份改变到该组群。应用实例如下:

            [root@RHEL6~]# id            //显示当前用户的gid
            uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),
        6(disk),10(wheel)
            [root@RHEL6~]# newgrp group1  //改变用户的主组群
            [root@RHEL6~]# id
            uid=0(root) gid=500(group1) groups=0(root),1(bin),2(daemon),3(sys),4
        (adm), 6(disk),10(wheel)
            [root@RHEL6~]# newgrp        //newgrp命令不指定组群时转换为用户的私有组
        [root@RHEL6~]# id
        uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),
        10(wheel)

使用groups命令可以列出指定用户的组群。例如:

        [root@RHEL6~]# whoami
        root
        [root@RHEL6~]# groups
        root bin daemon sys adm disk wheel