Liunx基础——用户和用户组相关概念及命令

        在 Linux 中,用户和用户组是系统安全的重要组成部分。用户账户用于登录系统,并且每个用户都可以有自己的权限设置。用户组则用于组织多个用户,并为这些用户分配相同的权限。下面分别介绍用户和用户组的相关概念及命令。 

目录

用户和用户组的基本概念

常用命令

useradd

adduser

groupadd

 userdel

 groupdel

 usermod

 groupmod

添加/删除用户组成员

用户和用户组的基本概念

用户

        用户是登录到系统的一个实体,每个用户都有一个唯一的用户 ID(UID),用于标识该用户。UID 0 通常被保留给超级用户(root)。UID 1-999 通常为系统保留,用于某些服务或程序。是为了保证系统的稳定性和安全性。这些较低的 UID 值通常被分配给系统服务、守护进程或者不需要人类直接交互的服务账户UID 1000 及以上通常分配给普通用户。

        可以在 /etc/passwd文件中查看系统的UID分配,可以看到root用户的UID为0,而作为普通用户在1000及以后

root:x:0:0:root:/root:/bin/bash
//用户名:密码占位符(通常是 x):用户 ID (UID):组 ID (GID):用户描述:用户家目录:登录 shell

 用户组

         用户组是用来组织用户的集合。每个用户组也有一个唯一的组 ID(GID)。用户可以属于多个用户组。默认情况下,创建新用户时会同时创建一个同名的用户组作为该用户的主用户组。

 主用户组与附加用户组

        主用户组:用户登录时默认关联的用户组。

        附加用户组:除了主用户组外,用户还可以是其他用户组的成员。

常用命令

useradd

  useradd 是一个用于在 Linux 系统中创建新用户的命令。它可以用来创建一个新用户账户,并且允许指定一些参数来定制用户的配置。

        基本语法

useradd [参数] [用户名]

        参数选项

可用--help了解更多参数

-m, --create-home: 自动创建用户的家目录。这是默认行为

-d, --home-dir: 指定用户的家目录位置。

-s, --shell: 指定用户的登录 shell。

-u, --uid: 指定用户的 UID。请注意,此 UID 不应与其他用户冲突。

-g, --gid: 指定用户的主用户组的 GID。

-G, --groups: 指定用户的附加用户组。多个用户组之间可以用逗号 , 分隔。

-p, --password: 指定用户的加密密码。

-c, --comment: 指定用户的全名或注释。

-r, --system: 创建一个系统用户(默认 UID 在 1 到 999 之间)。

-U, --no-user-group: 不创建与用户名相同的用户组。

-l, --no-log-init: 不记录到 /var/log/lastlog/var/log/faillog

-e, --expiredate: 指定用户账户的有效期。

-f, --inactive: 指定用户账户过期后多少天内可以登录。

-M, --no-mail-forward: 不创建邮件转发文件。

-N, --no-create-home: 不创建用户的家目录。

        注意事项

  • 使用 useradd 通常需要 root 权限。不是 root 用户,需要在命令前加上 sudo 获取权限。
  • 如果在创建用户时没有指定 -m 选项,默认情况下 useradd 会创建用户的家目录。但是如果你指定了 -N 选项,则不会创建家目录。
  • 在创建用户的同时设置密码,可以使用 -p 选项,但是这不推荐。常见的方式是在创建用户之后单独设置密码。

        设置密码

创建用户后,你可以使用 passwd 命令来为新用户设置密码:

sudo passwd john

adduser

  adduser 命令是 useradd 的一个前端命令,被用来创建新的用户账户。adduser 提供了一个更友好的界面,它不仅创建用户,还会提示你设置密码,并且可以自动处理一些配置细节。下面是如何使用 adduser 命令创建新用户的步骤和选项。

        基本语法

adduser [参数] [用户名]

        注意事项

  • adduser的用法和参数与useradd类似,但是adduser具有界面友好性,建议新手使用
  • adduser 会在创建用户时提示你输入密码。在创建时不设置密码,可以使用 --disabled-password 选项。
  • adduser 还会询问一些其他信息,如用户的全名、房间号码等。你可以根据实际情况填写或者直接按回车键跳过。

groupadd

         创建一个新的用户组。        

groupadd [参数] [用户组名]

 userdel

         删除指定的用户账户

userdel [参数] [用户名]

 groupdel

  删除指定的用户组账户     

groupdel [参数] [用户名]

 usermod

         更改用户账号的属性

usermod [参数] [用户名]

 groupmod

         更改用户组的名称或 ID        

groupmod [参数] [用户名]

 查看用户和用户组信息

  1. 查看用户信息:

    id [用户名]:显示用户 ID 和所属的用户组。
  2. 查看所有用户列表:

    cat /etc/passwd:列出所有用户及其相关信息。
  3. 查看所有用户组列表:

    cat /etc/group:列出所有用户组及其相关信息。
  4. 查看用户所属的用户组:

    groups [用户名]:显示用户所属的所有用户组。

添加/删除用户组成员

  1. 添加用户到用户组:

    usermod -aG [用户组名] [用户名]:将用户添加到用户组。
  2. 删除用户组成员:

    gpasswd [选项] [用户名] [用户组名]:向用户组中添加或移除用户。

        这些命令提供了对用户和用户组进行管理的基础。使用这些命令时,可以使用--help查看参数的使用方式,请确保你有足够的权限(通常是 root 权限)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值