Liunx中用户与用户组详解

目录

一.添加用户

二.修改用户信息

三.删除用户

四.密码

五.新建组

六.删除组

七.gpasswd与groupmod

八.文件路径


账户为分三类:
超级用户(管理员):享有最高权限,具备系统中的所有权限(一般为root),UID为0
系统用户 :别称“伪用户”,无法登录系统,其主要作用是支撑系统运行,方便系统管理。uid号码小于1000.
普通用户:有权限限制,只能对自己目录下的文件进行操作,可以登录系统。uid 大于1000,登陆shell是bin/bash。
任何一个账户在创建的同时都会在系统里面创建一个同名的组。
系统上的每个进程(运行的程序)都是作为特定用户运行的
每个文件是由一个特定的用户拥有 
访问文件和目录受到用户的限制

一.添加用户

useradd  [name]

-u为用户设定 UID。

-g 为用户指定初始用户组

-G 为用户指定附加用户组

-M 选项表示系统在创建新用户时不会创建主目录

-s 为用户指定默认的 shell

-d 为创建的用户设置 home 目录

-p 表示为新增用户设置密码

-c 为新用户添加注释。通常用于添加用户的全名或其他详细信息。

-e 设置账户的过期日期。日期格式为YYYY-MM-DD

-f 设置用户账户密码过期后多少天内未登录,该账户将被禁用

注意:使用useradd一次只能创建一个用户,且普通用户之间不能切换,只可用root用户切换。

二.修改用户信息

usermod  [name]

-a, --append :与-G选项一起使用,将用户添加到补充的组中而不删除用户从其他组的会员资格。

-c, --comment :更改用户的注释信息,这通常是用户的全名。

-d, --home HOME_DIR :更改用户的主目录。

-e, --expiredate EXPIRE_DATE :以YYYY-MM-DD格式设置帐户的过期日期。

-g, --gid GROUP:更改用户的初始登陆组。

-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:将用户添加到其他一组或多组,单独使用会覆盖原有的附属组。

-l, --login NEW_LOGIN :更改用户名(登录名)。

-L, --lock :锁定用户的密码,使用户无法登录。

-m, --move-home :如果使用了-d选项,那么使用这个选项会将用户的家目录内容移到新的位置。

-p, --password PASSWORD:更改用户的密码。

-s, --shell SHELL :更改用户的登录shell。

-u, --uid UID :更改用户的UID(用户ID)。

-U, --unlock:解锁用户的密码,使用户可以登录。

注意:usermod命令需要超级用户(root)权限才能运行。

三.删除用户

userdel  [name]

-r 或 --remove:使用这个选项可以删除用户的主目录以及该目录下的所有文件和子目录。它还会尝试删除邮件邮箱。

-f 或 --force:这个选项会强制删除用户,即使用户仍然在登录。它还会强制修改用户组文件,即使文件不能被打开。

注意:userdel命令需要超级用户(root)权限才能运行。

userdel username
作用:删除指定的用户帐户。
行为:该命令仅删除用户帐户本身,包括其在 /etc/passwd 中的条目和相关的组信息(如果设置了主组)。 
      然而,用户的主目录、邮件文件和其他个人数据不会被删除。
应用场景:在需要保留用户数据时,例如迁移或备份数据。

userdel -r username
作用:删除指定的用户帐户,并递归删除用户的主目录和相关文件。
行为:与 userdel 不同,该命令在删除用户帐户的同时,还会删除用户的主目录以及可能存在的邮件文件等。 
      这样可以确保与用户相关的所有个人数据都被移除。
应用场景:在删除用户并确保清理所有与该用户相关的个人数据时。

四.密码

passwd  [name]

-l 或 --lock:锁定用户账号,使其不能登录。这个操作并不会改变密码,而是在密码之前加上一个不可能匹配的值。

-u 或 --unlock:解锁已锁定的用户账号,使其能够登录。

-d 或 --delete:将用户的密码删除,使得用户可以无密码登录。

-e 或 --expire:立即使用户的密码失效,迫使用户在下次登录时更改密码。

-S 或 --status:显示用户的密码状态,包括它是否被锁定,最后一次更改日期,密码到期日期等信息。

注意:普通用户只能给自己修改密码并且必须为强密码,而且必须提供原密码;使用passwd根据作用对象需要root权限

五.新建组

groupadd  [name]

-g--gid:手动指定新建用户组的组ID(gid)。如果没有指定,系统会自动分配一个唯一的gid。

-K--key:覆盖/etc/login.defs配置文件中的默认值。

-o--non-unique:允许创建gid相同的用户组。

-p--password:为用户组设置密码。

-r--system:创建一个新的系统用户组。

六.删除组

groupdel  

groupdel [name]

注意:执行删除用户组的命令之前,一定要确认该组已不再被任何用户作为默认组,并且没有任何进程是以该组的组ID运行。否则,该操作会失败,并可能会导致系统不稳定或数据丢失。

七.gpasswd与groupmod

gpasswd命令主要用于用户组的密码和成员管理。你可以使用它来更改用户组的密码,或者向用户组中添加或删除用户。它主要修改/etc/group/etc/gshadow两个文件。

常用的gpasswd选项包括:

-a 或 --add: 将用户添加到指定的组。

-M :同时将多个用户添加到指定的组,多个用户用逗号分隔。

-d 或 --delete:从指定的组中删除用户。

-r 或 --remove-password:移除指定组的密码。

groupmod命令主要用于修改现有用户组的属性,比如用户组的名称和组ID。它主要修改/etc/group/etc/gshadow两个文件。

常用的groupmod选项包括:

-n 或 --new-name:用于更改用户组的名称。

-g 或 --gid:用于更改用户组的gid。

总的来说,gpasswdgroupmod都是管理用户组的工具,但gpasswd更加侧重于群组内部的管理,如密码和成员管理,而groupmod则更侧重于群组本身的属性修改,如群组名和GID的修改。

八.文件路径

/etc/group  ----->查看组的文件
/etc/passwd  ---->查看账户是否存在的文件
/home/  ---->用户的家目录,每创建一个用户会在/home目录下面创建对应的家目录
/etc/shadow   --->用户的密码文件


group中分隔符信息介绍:
第一列:这是组的名称。这个名字是唯一的,每个组都有一个不同的名字。
第二列:这是组的密码。在大多数系统中,这个字段通常是不使用的,或者会显示为一个x字符。密码实际上是存储在/etc/gshadow文件中。
第三列:这是组的识别码,或者说是组ID。就像用户ID一样,组ID也是一个用于识别组的数字。
第四列:这是属于该组的用户列表。用户名以逗号 (,) 分隔。

passwd中分隔符信息介绍:
第一列:用户名
第二列:密码
第三列:用户标识号--->(uid)是一个整数,系统内部用它来标识用户。通常用户标识号的取值范围是0~65535。0是超级用户root的标识号
第四列:gid
第五列:描述信息。
第六列:家目录
第七列:是用户登陆到界面的第一个命令,开启一个shell。登陆shell


1.判断用户是否存在:
[root@localhost ~]# id user01   //查看用户的uid、gid、和所在组
uid=1001(user01) gid=1003(user01) groups=1003(user01)
                    主属组                    附属组
uid 系统用来识别账户的user identify
gid 系统用来识别组的group identify

2.查看现在所使用的的账户:
[root@localhost ~]# whoami 查看我现在所使用的账户

相关文章:Liunx中禁止普通用户切换root的解决方法-CSDN博客

  • 38
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: groupadd命令是Linux系统用于创建新用户组的命令。它的语法格式为: groupadd [选项] 组名 其,选项包括: -g GID:指定新用户组的GID(组ID)。 -K KEY=VALUE:设置用户组的默认属性。 -o:允许创建GID相同的用户组。 -r:创建系统用户组。 -f:如果用户组已经存在,则强制创建。 使用groupadd命令创建新用户组时,可以指定用户组的名称和GID。如果不指定GID,则系统会自动分配一个未被使用的GID。如果需要创建系统用户组,则需要使用-r选项。 除了上述选项外,groupadd命令还支持一些其他的选项,如-d、-s、-p等,可以根据实际需要进行使用。 总之,groupadd命令是Linux系统管理用户组的重要命令之一,它可以帮助管理员方便地创建和管理用户组,提高系统的安全性和管理效率。 ### 回答2: groupadd命令是Linux的一个命令,用于创建新的用户组。该命令需要root权限才能使用。使用groupadd命令可以在系统创建一个新的用户组,该用户组可以包含一个或多个用户,从而实现对用户的分组管理。下面是groupadd命令的详细介绍: 命令格式: groupadd [选项] 组名 命令选项: -g GID:指定新创建的组的组ID。如果不指定,则系统会自动分配一个未被使用的组ID。 -K KEY=VALUE:指定要设置的键/值对,例如-T max_members=50,表示限制该组的最大成员数为50。 -o:允许新组的GID与已有组的GID重复。 -r:创建一个系统组而非普通用户组。 命令参数: 组名:指定要创建的新组的名称。 常用实例: 1.创建一个名为test_group的新组: # groupadd test_group 2.创建一个组并指定组ID为520: # groupadd -g 520 test_group 3.创建一个系统组: # groupadd -r system_group 注意事项: 1.使用groupadd命令创建的组是存储在/etc/group文件的,该文件记录了系统所有的组和其对应的成员。 2.使用groupadd命令时需要注意组名是否已经存在,避免重复创建。 3.使用groupadd命令创建的组只是一个组名的定义,并没有包含任何成员,需要使用usermod或者用户管理工具将用户添加到组才能实现真正的用户分组。 ### 回答3: groupadd命令是一个Linux命令,用于创建新的用户组。每个用户都可以属于一个或多个用户组,它们决定了用户在系统访问和控制某些共享资源的权限。通过groupadd命令可以创建一个新的用户组,并将用户添加到该用户。 groupadd命令的语法格式如下: groupadd [-f] [-g gid [-o]] [-K key=value] [-p password] [-r] [-R root_dir] [-P] group_name 其,group_name是必须的参数,表示新创建的用户组的名称。其他选项如下: - -f:若要创建的组名称已经存在,则不提示任何信息。 - -g gid:指定新组的组标识号(GID)。默认情况下,groupadd将分配下一个可用的GID。 - -o:与-g一起使用,允许使用一个不唯一的GID。 - -K key=value:设置新组的键值对,其“key”是属性名,而“value”是属性值。 - -p password:设置新组密码。该选项已被弃用,因为密码存储在/etc/gshadow文件。此外,强烈建议不要在组密码使用明文。 - -r:创建一个系统组。 - -R root_dir:指定chroot的根目录。 - -P:如果文件/etc/gshadow和/etc/group权限不一致,则拒绝创建组。 例如,要创建一个名为“sales”的新组,可以使用以下命令: $ sudo groupadd sales groupadd命令还可以与gpasswd命令一起使用来为新组分配密码。例如,要为“sales”组创建一个密码,请使用以下命令: $ sudo groupadd sales $ sudo gpasswd sales 在Linux系统用户组是一种非常有用的概念。使用groupadd命令,可以轻松创建新的用户组,并将用户添加到该组。这个命令非常灵活,可以设置许多不同的属性和选项,以更好地满足个人或组织的需求。建议在使用groupadd命令时,对选项和语法有充分的理解,以避免潜在的错误和安全漏洞。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值