知识屋:更实用的电脑技术知识网站
所在位置:首页 > 操作系统 > linux

Linux学习笔记之用户管理

发布时间:2014-09-05 15:35:04作者:知识屋

Linux学习笔记之用户管理
 
用户管理  www.zhishiwu.com  
 1、用户管理配置文件
  用户数据文件:/etc/passwd
  [root@CentOS-Test software]# grep test /etc/passwd
   test:x:500:500:test:/home/test:/bin/bash
  用户账号包含的信息:
   test:用户名,用户登录时使用的用户名 x:密码位 500:UID,用户标识号 500:缺省组标识号
   test:注释性描述,例如存放用户全名等信息
   /home/test:用户的宿主目录
   /bin/bash:用户使用的shell,默认为bash
  linux用户账号的分类:
   分为三种:超级用户(root,UID=0) 具有一切操作权限
   普通用户(UID500-65536) 操作权限受到限制  
   伪用户(缺省用户):(UID 1-499)假用户或虚拟用户
   注意:用户的UID的取值,除0外,其它值不允许用户取相同的值,伪用户与系统和程序服务相关:bin、daemon、shutdown、halt等,任何Linux系统默认都有这些伪用户,伪用户没有登录密码和宿主目录
   每个用户都至少属于一个用户组,每个用户组可以包括多个用户,同一用户组的用户享有该组共有的权限  www.zhishiwu.com  
   
  用户口令文件:/etc/shadow
   保存了用户口令等重要信息,该文件只有root用户可以读写
  用户组文件:/etc/group
  用户组密码文件:/etc/gshadow
  用户配置文件:/etc/login.defs  /etc/default/useradd
  新用户信息文件:/etc/skel
  登录信息:/etc/motd
 2、用户账号维护命令
  创建用户(到指定组)并设定密码:
  [root@CentOS-Test ~]# useradd -g operator user3  //创建user3用户,并将其加入到operator组
  
  [root@CentOS-Test ~]# passwd user3   //设定user3的密码
  更改用户 user3 的密码 。
  新的 密码:
  重新输入新的 密码:
  passwd: 所有的身份验证令牌已经成功更新。
  显示useradd命令的默认值:当我们使用useradd命令添加用户时,若未指定参数将使用useradd的默认值,此默认值文件在/etc/default/useradd中,可以编辑此文件来修改useradd命令的默认参数;用命令显示为useradd -D
  
  usermod用于设置已有账号的登录属性,包括用户的宿主目录、私有组、登录的shell等内容
  改变用户账号名:user -l newname oldname
  //此命令是修改用户的登录名称,但是宿主目录并未更新,还需要修改新的宿主目录
  [root@CentOS-Test ~]# usermod -l user5 user1 
  修改宿主目录
  [root@CentOS-Test ~]# usermod -d /home/user5 user5
  修改用户的所属组信息
  [root@CentOS-Test home]# usermod -g operator ciscoserver
  锁定用户账号及接触锁定
  [root@CentOS-Test ~]# usermod -L user8  锁定的是密码
  [root@CentOS-Test ~]# passwd -l user8  锁定的是密码
  [root@CentOS-Test ~]# usermod -U user8 解锁的是密码
  [root@CentOS-Test ~]# passwd -u user8 解锁的是密码
  删除用户账号
  [root@CentOS-Test ~]# userdel user3  删除用户user3 但是其宿主目录并没有删除 /home/user3仍然存在
  [root@CentOS-Test ~]# userdel -r user3 将user3用户删除后其宿主目录也一起删除
  删除用户口令
  [root@CentOS-Test default]# passwd -d yangweiwei  删除的只是用的口令,如若恢复需使用passwd username重新设定密码
  清除用户的密码 yangweiwei。
  passwd: 操作成功
  设定用户的finger信息
  [root@CentOS-Test default]# chfn fangguo 
  Changing finger information for fangguo.
  Name []: 张搜索
  Office []: 销售部
  Office Phone []: 025689
  Home Phone []: 15455155
 3、组账号维护命令
  创建组:groupadd 组名  用于在系统中添加组账号,该组账号的GID大于500
  [root@CentOS-Test home]# groupadd ZBS
  删除组:groupdel 组名  用于删除组,删除组之前必须先删除该组下的用户,即不能删除含有用户的组
  [root@CentOS-Test ~]# groupdel operator
  组重命名:groupmod -n newgroupname  oldgroupname  此组下面由用户的话,修改后用户也隶属于新的组名下
  [root@CentOS-Test default]# groupmod -n yizhidui ZHBA
  添加用户到组:gpasswd -a 用户账号名  组账号名   此用户账号名必须先存在
  [root@CentOS-Test default]# useradd sunzhaohui
  [root@CentOS-Test default]# gpasswd -a sunzhaohui yizhidui
  Adding user sunzhaohui to group yizhidui
  当然此上述两条命令可以直接用useradd命令完成   useradd -g yizhidui sunzhaohui  前提是组账号必须存在,且创建的用户只属于yizhidui,而是用useradd sunzhaohui创建的用户还属于自己的私有组
  从组中删除用户:gpasswd -d 用户账号名  组账号名
  设置用户为组管理员:gpasswd -A 用户名  所属组
  [root@CentOS-Test default]# gpasswd -A sunzhaohui yizhidui
 4、维护命令
  显示系统可用的shell
  [root@CentOS-Test default]# chsh -l
  /bin/sh
  /bin/bash
  /sbin/nologin
  /bin/tcsh
  /bin/csh
  设置用户登录的shell
  [root@CentOS-Test default]# chsh -s /bin/bash root
 5、用户和组状态命令
  id:用于显示当前用户所属的uid、gid、和用户所属的组列表
  [root@CentOS-Test default]# id
  uid=0(root) gid=0(root) 组=0(root) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
  显示当前用户的名称
  [root@CentOS-Test default]# whoami
  root
  将当前用户转换为其它用户  su  用户名
  [root@CentOS-Test default]# su sunzhaohui
  如果转换为root用户:su - root
  用于显示指定用户所属组信息:groups  用户名
  [root@CentOS-Test ~]# groups sunzhaohui
  sunzhaohui : yizhidui
  使用RedHat用户管理器来管理用户:system-config-users
(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜