Linux用户和组管理的常用命令

2023年 10月 19日 17.2k 0

图片[1]-Linux用户和组管理的常用命令-不念博客

  • 用 root 用户登录,首先创建一个 bunian 用户。
  • useradd -m bunian

    -m 用于创建用户主目录,默认是不创建的。此外用 -d 参数可以自定义主目录(感觉很少用)。

  • 创建 bunian 用户的密码,该命令也可以用于修改密码。回车后可输入密码。
  • passwd bunian
  • 在 Linux 中,当创建了一个用户,系统会自动为其新建一个与用户名相同的主用户组名。可用下列命令查询 bunian 用户所属组(包括主组和辅助组):
  • groups bunian
    # bunian : bunian

    本次将 bunian 用户改到自己所需要的用户组中。

    # 新增以下组
    usermod -aG adm,cdrom,sudo,dip,plugdev,lxd bunian

    查询 bunian 用户和主用户组的信息。

    id bunian
    # uid=1001(bunian) gid=1001(bunian) groups=1001(bunian),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),117(lxd)

    ❝uid 和 gid 是由 Linux 系统分配给每个用户和主用户组的数字,从而允许系统识别用户和用户组。

    默认情况下系统会自动为新的用户按照数字顺序从 1000 开始分配 uid 和 gid。前 1000 个账户号码通常被保留给系统账户、服务和其他特殊账户。uid 和 gid 分别存储在 /etc/passwd 和 /etc/groups 目录中。❞

    上述查到的各个组的定义如下:

    adm # 此组的成员可以查看许多日志文件
    cdrom # 此组的成员可以访问 CD-ROM 驱动器和其他光驱
    sudo # 此组的成员可以使用 sudo 命令来执行需要 root 权限的命令
    dip # 此组的成员可以使用 ppp 和 dip 命令来拨号和使用PPP连接
    plugdev # 此组的成员可以通过 pmount 挂载和卸载可移动设备
    lxd # 此组的成员可以管理 LXD 容器
  • 此时可以切换到 bunian 用户。
  • su bunian

    切换到 bunian 用户后发现终端只显示 $ 符号。这是因为没有设置登录 shell,导致命令默认使用 /bin/sh。使用以下命令进行修改:

    usermod -s /bin/bash bunian
  • 以上 wang 用户配置完毕。但在使用 sudo 命令时,需要输入 bunian 用户的密码,相对比较麻烦。可编辑 /etc/sudoers 文件进行修改:
  • sudo vim /etc/sudoers
    # 找到下列行:
    # Allow members of group sudo to execute any command
    %sudo   ALL=(ALL) :ALL
    # 修改为:
    # Allow members of group sudo to execute any command
    %sudo   ALL=(ALL) NOPASSWD:ALL

    再次使用 sudo 命令无需输入密码。

    如果在上述第 3 步中,没有为 bunian 用户分配为 sudo 用户组,也可以单独为 bunian 用户设置使用 sudo 命令的权限,即通过编辑 /etc/sudoers 文件进行修改:

    注意由于没有为 bunian 用户分配为 sudo 用户组,因此下列命令需要在 root 用户下执行。❞

    # 需要在 root 用户下执行 !!!
    # 新增 /etc/sudoers.d/bunian 文件并编辑
    vim /etc/sudoers.d/bunian
    # 在文件中添加以下内容:
    wang ALL=(ALL) NOPASSWD:ALL
  • 进入 authorized_keys 目录,将自己的公钥复制到目录中。以后使用私钥登录即可。
  • mkdir -p ~/.ssh && vim ~/.ssh/authorized_keys

    在有密钥登录的前提下,可顺便将密码登录关闭。

    # 修改配置文件
    sudo vim /etc/ssh/sshd_config
    # 将以下内容进行修改
    PermitRootLogin no # 关闭 root 用户直接登录
    PasswordAuthentication no # 关闭密码登录

    修改上述配置后重新加载 ssh:

    sudo systemctl reload sshd
  • 如果要删除 bunian 用户,则在 root 用户下执行以下命令:
  • # 删除用户 bunian, 但保留了其主目录
    userdel bunian
    # 删除 bunian 同时删除了主目录
    userdel -r bunian

    相关文章

    服务器端口转发,带你了解服务器端口转发
    服务器开放端口,服务器开放端口的步骤
    产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
    如何使用 WinGet 下载 Microsoft Store 应用
    百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
    百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

    发布评论