专业编程教程与实战项目分享平台

网站首页 > 技术文章 正文

「Linux学习」账号管理 linux系统账户

ins518 2024-10-26 12:09:48 技术文章 10 ℃ 0 评论

一、用户组管理

1、groupadd 添加账号

语 法:groupadd [-g gid] [-o]] [-r] [-f] groupname

主要参数:

-g gid:指定组ID号。

-o:允许组ID号,不必惟一。

-r:加入组ID号,低于499系统账号。

-f:加入已经有的组时,发展程序退出。

应用实例:

建立一个新组,并设置组ID加入系统:

$groupadd -g 344 linuxso

2、groupmod 修改账号

功能说明:更改群组识别码或名称。

语 法:groupmod [-g <群组识别码> <-o>][-n <新群组名称>][群组名称]

补充说明:需要更改群组的识别码或名称时,可用groupmod指令来完成这项工作。

主要参数:

-g <群组识别码> 设置欲使用的群组识别码。

-o 重复使用群组识别码。

-n <新群组名称> 设置欲使用的群组名称。

应用实例:

将用户组名linuxso 改为 linux

$groupmod -n linux linuxso

3、groupdel 删除账号

功能说明:删除群组。

语 法:groupdel [群组名称]

说 明:需要从系统上删除群组时,可用groupdel指令来完成这项工作。倘若该群组中仍包括某些用户,则必须先删除这些用户后,方能删除群组

应用实例:

将删除用户组名linux

$groupdel linux

4、groups查询当前用户所属的组

newgrp 切换当前用户所属的组

一个用户可以有多个组。可以用命令id来查看当前id

二、用户管理

1、useradd 或者 adduser 添加用户

功能说明:建立用户帐号。

useradd命令用来建立用户帐号和创建用户的起始目录,使用权限是超级用户。

语 法:useradd [-mMnr][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-s ][-u <用户id>][-p <密码>] [用户帐号]

主要参数:

-c:加上备注文字,备注文字保存在passwd的备注栏中。

-d:指定用户登入时的启始目录。

-D:变更预设值。

-e:指定账号的有效期限,缺省表示永久有效。

-f:指定在密码过期后多少天即关闭该账号。

-g:指定用户所属的群组。

-G:指定用户所属的附加群组。

-m:自动建立用户的登入目录。

-M:不要自动建立用户的登入目录。

-n:取消建立以用户名称为名的群组。

-r:建立系统账号。

-s:指定用户登入后所使用的shell。

-u:指定用户ID号。

说明:

useradd可用来建立用户账号,它和adduser命令是相同的。账号建好之后,再用passwd设定账号的密码。使用useradd命令所建立的账号,实际上是保存在/etc/passwd文本文件中。

应用实例:

创建用户ppnie,所在组为users,家目录为 /home/ppnie,使用shell为/bin/bash

$ useradd ppnie -d /home/ppnie -g users -s /bin/bash

$ passwd ppnie

$ useradd -g oinstall -G dba -p password -d /home/oracle -s /bin/bash oracle

2、usermod 修改用户

功能说明:修改用户帐号。

语 法:usermod [-LU][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-l <帐号名称>][-s <shell>][-u <uid>][用户帐号]

补充说明:usermod可用来修改用户帐号的各项设定。

参 数:

-c<备注> 修改用户帐号的备注文字。

-d登入目录> 修改用户登入时的目录。

-e<有效期限> 修改帐号的有效期限。

-f<缓冲天数> 修改在密码过期后多少天即关闭该帐号。

-g<群组> 修改用户所属的群组。

-G<群组> 修改用户所属的附加群组。

-l<帐号名称> 修改用户帐号名称。

-L 锁定用户密码,使密码无效。

-s<shell> 修改用户登入后所使用的shell。

-u<uid> 修改用户ID。

-U 解除密码锁定。

应用实例:

将 newuser2 添加到组 staff 中

$ usermod -G staff newuser2

修改 newuser 的用户名为 newuser1

$ usermod -l newuser1 newuser

锁定账号 newuser1

$ usermod -L newuser1

解除对 newuser1 的锁定

$ usermod -U newuser1

使用户 chongpig 的密码在 2009-07-31 前失效

$ usermod -e '07/31/2009' ppnie

3、userdel删除用户

命 令: userdel

功能说明:删除用户帐号。

语 法:userdel [-r][用户帐号]

补充说明:userdel可删除用户帐号与相关的文件。若不加参数,则仅删除用户帐号,而不删除相关文件。

参 数:

-f, --force 强力删除

-r, --remove 删除用户登入目录以及目录中所有文件。

应用实例:

删除用户linuxso,但不删除其家目录及文件

$ userdel linuxso

删除用户linuxso,其家目录及文件一并删除

$ userdel -r linuxso

警告: 请不要轻易用-r参数;他会删除用户的同时删除用户所有的文件和目录,切记;如果用户目录下有重要的文件,在删除前请备份.

假如删除的时候忘记带r参数 以后想删除这个用户的文件 可以用下面这条命令

find / --nouser -exec rm - rf {} \

删除所有 用户不存在而遗留的文件(因为用户已被删除,其文件的拥有者为其UID,参数nouser用于删除此类文件)

4、chsh 修改用户的shell

chsh -l 起到的作用是列出当前系统的所有shell

chsh -s /bin/sh 为用户指定shell,先登录需要修改的用户

三、相关文件介绍

1、 /etc/passwd 用户信息

该目录存储的是操作系统用户信息,该文件为所有用户可见。使用shadow密码文件后,/etc/passwd文件中所有帐户的password域的内容为"x",如果password域的内容为"*",则 该帐号被停用。

每一行记录格式与含义:

用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell

给linux系统添加一个帐号:

useradd -g mysql -d /home/test -m test(:新建一个用户test, 属于mysql组,开始目录是/home/test)

然后进入 /etc/passwd,可以看到如下信息,在最后一行可以看到刚加的用户的信息。

2、 /etc/shadow用户密码

现代的Unix系统使用影子密码系统,它把密码从/etc/passwd文件中分离出来,真正的密码保存在/etc/shadow文件中,shadow文件只能由超级用户访问。

每一行记录格式与含义:

账号名称:密码:用户ID:组ID:描述信息:用户根目录

还有密码栏的第一个字符为“*”表示这个用户不用来登录,如果那个用户不想让他登录了,可以在他前面加个星;第一个字符为“!”号表示该用户被禁用,一般新创建的账号后还未设置密码该账号就是禁用状态,使用“!!”表示;第一个字符为“空”的话,代表该用户没有口令,登录时不需要口令。

例:more /etc/shadow

3、 /etc/group用户组信息

每一行记录格式与含义:

组名:口令:组标识号:组内用户列表

例:more /etc/group

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表