管理资源吧

当前位置:管理资源吧首页>>>tech>>>c1>>>服务器教程

Linux账户管理

  当用户登陆Linux系统时,Linux将做如下检查:

  1)在/etc/passwd文件里匹配输入的用户名,获取该用户名的UID和GID(其中GID和/etc/group关联)、Home目录和Shell设置

  2)在/etc/shadow里核对该用户的密码

  /etc/passwd文件结构

  这个文件的每一行代表一个账号,如下所示:oracle:x:501:501::/home/oracle:/bin/bash

  1. 用户名 2. 密码:早期的密码放在该字段,但如今的密码已单独放在/etc/shadow里,所以该字段已经没有意义,用'x'占位 3. UID: 0:root 1~499:系统账号,如bin,daemon,adm,nobody等 >=500:普通用户账号 4. GID:与/etc/group关联 5. 用户信息说明:一般没什么用,为空 6. 主文件夹 7. 默认shell

  /etc/shadow文件结构

  oracle:$6$AsOW5s9y$1JhRl0RYwGN48TVNMqF6sFrTKbo9.tvdHUR.xeFHzoFIqtzWnTrBE7oa99qlXOIRidfQyNPcGyS9eX2Ajy.Od0:16024:0:99999:7:::

  1. 用户名 2. 加密过的密码 3. 最近更改密码的日期:改日期是一个整数,表示从1970年1月1日开始累加的天数。 4. 密码不可被更改的天数(与第3个字段相比):0表示密码随时可被修改。 5. 密码需要更改的天数(与第3个字段相比):表示用户必须在这个天数内更改密码,否则将不可用,99999(273年)表示无需更改 6. 密码需要更改期限前的警告天数(与第5个字段相比) 7. 密码过期后的账号宽限天数(与第5个字段相比) 8. 账号失效日期 9. 保留字段

  /etc/group文件结构

  oinstall:x:501:

  dba:x:503:oracle

  1. 用户组名

  2. 用户组密码:已移至/etc/gshadow

  3. GID

  4. 属于该用户组的账号

  上面的例子中,oracle同时属于oinstall和dba两个组,但为什么oinstall的第4列为空呢?这是因为它是初始用户组(即oracle登陆后的用户组),而dba不是。

  下面我们再看看什么是有效用户组,虽然某个用户可以属于多个用户组,但同一时刻,只能有一个有效用户组(默认情况下为初始用户组),我们可以通过groups命令查看:

  [oracle@lx16 ~]$ groups

  oinstall dba如上所示,排在第一位的就是有效用户组,如果你想改变当前的有效用户组,可以通过newgrp命令:

  [oracle@lx16 ~]$ newgrp dba

  [oracle@lx16 ~]$ groups

  dba oinstall

  账号管理

  useradd

  useradd用于新建用户,它的默认值可以通过如下命令获得:

  # useradd -D

  GROUP=100

  HOME=/home

  INACTIVE=-1

  EXPIRE=

  SHELL=/bin/bash

  SKEL=/etc/skel

  CREATE_MAIL_SPOOL=yes也就是说,当你使用useradd username命令添加用户时,将采用以上的默认值。下面看几个例子:

  useradd zhuxj --创建一个默认的用户

  useradd -u 700 -g users zhuxj --指定uid为700,用户组为users

[Ok3w_NextPage]

  useradd -r zhuxj --创建一个系统用户

  passwd

  在用useradd创建了账户之后,默认情况下,该账户是被锁住的,需要通过passwd命令为该用户设置密码。

  passwd zhuxj --修改zhuxj的密码

  passwd --修改自己的密码

  usermod

  和useradd很像,用于修改用户

  userdel

  删除用户,其用法如下:

  userdel [-r] username

  -r:连同home目录一起删除

tech首页 更多tech