• 用户管理

    用户管理

    1. 创建和删除用户 - useradd / userdel

      1. [root home]# useradd hellokitty
      2. [root home]# userdel hellokitty
      • -d - 创建用户时为用户指定用户主目录
      • -g - 创建用户时指定用户所属的用户组
    2. 创建和删除用户组 - groupadd / groupdel

      说明:用户组主要是为了方便对一个组里面所有用户的管理。

    3. 修改密码 - passwd

      1. [root ~]# passwd hellokitty
      2. New password:
      3. Retype new password:
      4. passwd: all authentication tokens updated successfully.

      说明:输入密码和确认密码没有回显且必须一气呵成的输入完成(不能使用退格键),密码和确认密码需要一致。如果使用passwd命令时没有指定命令作用的对象,则表示要修改当前用户的密码。如果想批量修改用户密码,可以使用chpasswd命令。

      • -l / -u - 锁定/解锁用户。
      • -d - 清除用户密码。
      • -e - 设置密码立即过期,用户登录时会强制要求修改密码。
      • -i - 设置密码过期多少天以后禁用该用户。
    4. 查看和修改密码有效期 - chage

      设置hellokitty用户100天后必须修改密码,过期前15天通知该用户,过期后15天禁用该用户。

      1. chage -M 100 -W 15 -I 15 hellokitty
    5. 切换用户 - su

      1. [root ~]# su hellokitty
      2. [hellokitty root]$
    6. 以管理员身份执行命令 - sudo

      1. [hellokitty ~]$ ls /root
      2. ls: cannot open directory /root: Permission denied
      3. [hellokitty ~]$ sudo ls /root
      4. [sudo] password for hellokitty:

      说明:如果希望用户能够以管理员身份执行命令,用户必须要出现在sudoers名单中,sudoers文件在 /etc目录下,如果希望直接编辑该文件也可以使用下面的命令。

    7. 编辑sudoers文件 - visudo

      这里使用的编辑器是vi,关于vi的知识在后面有讲解。该文件的部分内容如下所示:

      1. ## Allow root to run any commands anywhere
      2. root ALL=(ALL) ALL
      3. ## Allows members of the 'sys' group to run networking, software,
      4. ## service management apps and more.
      5. # %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS
      6. ## Allows people in group wheel to run all commands
      7. %wheel ALL=(ALL) ALL
      8. ## Same thing without a password
      9. # %wheel ALL=(ALL) NOPASSWD: ALL
      10. ## Allows members of the users group to mount and unmount the
      11. ## cdrom as root
      12. # %users ALL=/sbin/mount /mnt/cdrom, /sbin/umount /mnt/cdrom
      13. ## Allows members of the users group to shutdown this system
      14. # %users localhost=/sbin/shutdown -h now
    8. 显示用户与用户组的信息 - id

    9. 给其他用户发消息 -write / wall

      发送方:

      1. [root ~]# write hellokitty
      2. Dinner is on me.
      3. Call me at 6pm.

      接收方:

      1. [hellokitty ~]$
      2. Message from root on pts/0 at 17:41 ...
      3. Dinner is on me.
      4. Call me at 6pm.
      5. EOF
    10. 查看/设置是否接收其他用户发送的消息 - mesg

      1. [hellokitty ~]$ mesg
      2. is y
      3. [hellokitty ~]$ mesg n
      4. [hellokitty ~]$ mesg
      5. is n