CentOS初步学习记录用户和用户组管理

Posted Azure沫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS初步学习记录用户和用户组管理相关的知识,希望对你有一定的参考价值。

一、前言

Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。

用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。

每个用户账号都拥有一个惟一的用户名和各自的口令,以及每个用户的独有文件夹,Root用户的目录比较特殊,在 /ROOT。

用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。

二、用户管理

2.1 用户创建

1)基本语法

useradd 选项 用户名

2)选项

  • -c:加上备注文字,备注文字保存在 passwd 的备注栏中
  • -d:指定用户登入时的启始目录
  • -D:变更预设值
  • -e:指定账号的有效期限,缺省表示永久有效
  • -f:指定在密码过期后多少天即关闭该账号
  • -g:指定用户所属的起始群组
  • -G:指定用户所属的附加群组
  • -m:自动建立用户的登入目录
  • -M:不要自动建立用户的登入目录
  • -n:取消建立以用户名称为名的群组
  • -r:建立系统账号
  • -s:指定用户登入后所使用的 Shell
  • -u:指定用户 ID 号

3)实例

useradd –d /usr/txl -m txl

此命令创建了一个用户 txl,其中 -d 和 -m 选项用来为登录名 txl 产生一个主目录 /usr/txl(/usr为默认的用户主目录所在的父目录)。

2.2 用户删除

1)基本语法

userdel 选项 用户名

2)选项

  • -r:把用户的主目录一起删除

3)实例

userdel -r txl

此命令删除用户txl在系统文件中(主要是 /etc/passwd, /etc/shadow, /etc/group等)的记录,同时删除用户的主目录。

2.3 用户口令管理

用户管理的一项重要内容是用户口令的管理。用户账号刚创建时没有口令,但是被系统锁定,无法使用,必须为其指定口令后才可以使用,即使是指定空口令。
指定和修改用户口令的 Shel 命令是 passwd。超级用户可以为自己和其他用户指定口令,普通用户只能用它修改自己的口令。

1)基本语法

passwd 选项 用户名

普通用户修改自己的口令时,passwd命令会先询问原口令,验证后再要求用户输入两遍新口令,如果两次输入的口令一致,则将这个口令指定给用户;而超级用户为用户指定口令时,就不需要知道原口令

2)选项

  • -l 锁定口令,即禁用账号。
  • -u 口令解锁。
  • -d 使账号无口令。
  • -f 强迫用户下次登录时修改口令。

3)实例

例如,假设当前用户是 txl,则下面的命令修改该用户自己的口令:

$ passwd 
Old password:****** 
New password:******* 
Re-enter new password:*******

如果是超级用户,可以用下列形式指定任何用户的口令:

# passwd txl 
New password:******* 
Re-enter new password:*******

4)用户修改

修改用户账号就是根据实际情况更改用户的有关属性,如用户号、主目录、用户组、登录Shell等。

1)基本语法

usermod 选项 用户名

2)选项

  • -c<备注>:修改用户帐号的备注文字
  • -d登入目录>:修改用户登入时的目录
  • -e<有效期限>:修改帐号的有效期限
  • -f<缓冲天数>:修改在密码过期后多少天即关闭该帐号
  • -g<群组>:修改用户所属的群组
  • -G<群组>:修改用户所属的附加群组
  • -l<帐号名称>:修改用户帐号名称
  • -L:锁定用户密码,使密码无效
  • -s<shell>:修改用户登入后所使用的shell
  • -u<uid>:修改用户ID
  • -U:解除密码锁定

常用的选项包括 -c, -d, -m, -g, -G, -s, -u 以及 -o 等,这些选项的意义与 useradd 命令中的选项一样,可以为用户指定新的资源值。

另外,有些系统可以使用选项:-l 新用户名,这个选项指定一个新的账号,即将原来的用户名改为新的用户名,如:

usermod -s /bin/ksh -d /home/z –g developer txl

此命令将用户 txl 的登录 Shell 修改为 ksh,主目录改为 /home/z,用户组改为 developer。

3)实例

usermod -s /sbin/nologin txl

此命令禁止用户 txl 进行 Shell 登录。

5)文件 /etc/passwd

以上是关于CentOS初步学习记录用户和用户组管理的主要内容,如果未能解决你的问题,请参考以下文章

linux初步学习之用户和用户组及权限管理浅谈

CentOS初步学习记录Python + Shell

CentOS初步学习记录iptables

CentOS初步学习记录Wget文件下载和Sed文件处理

Linux学习之CentOS--初识linux的文件系统以及用户组等概念

学习记录CentOS建立Git服务器