Linux系统用户及组管理详解

Linux系统用户及组管理详解

在Linux系统中,用户和组的管理是系统管理的基础,它涉及到用户权限的分配、文件访问控制等多个方面。本文将详细介绍如何在Centos7系统中管理用户和组,包括相关配置文件、用户和组的创建、删除及密码管理等关键技术点。

用户账号

用户的分类

Linux系统中用户分为三种角色:

  1. 超级用户:通常指root用户,拥有系统最高管理权限,UID为0。
  2. 普通用户:包括系统用户和本地用户,系统用户UID范围为1-999(Centos7/8版本)或1-499(Centos6版本),本地用户UID范围为1000+(Centos7/8版本)或500+(Centos6版本)。
  3. 虚拟用户:也称为伪用户,一般不用于登录系统,主要用于维持服务运行,如ftp、apache。

配置文件

  • 用户配置文件/etc/passwd,记录了每个用户的一些基本属性,对所有用户可读。
  • 用户组文件/etc/group,存放用户组信息,组名不能重复。
  • 用户密码信息文件/etc/shadow,存储密码信息,只有root用户有读权限,以保证密码安全性。

用户管理

用户命令

使用useradd命令可以添加新用户,并通过参数指定用户ID(-u)、主目录(-d)、初始组(-g)、附加组(-G)和默认登录shell(-s)。

6添加登录用户

例如,添加一个名为harry的用户,并使用bash作为登录shell:

useradd harry

此命令会自动创建harry组,并成为harry用户的默认主组,同时默认的登录shell是bash。

指定用户UID

使用useradd -u 用户ID命令可以指定用户的UID:

useradd -u 1100 oracle

指定用户主目录

使用useradd -d 主目录路径 用户名命令可以指定用户的主目录:

useradd -d /opt/ftp ftp1

指定用户的主组

使用useradd -g 主组 用户名命令可以指定用户的主组:

useradd -g xuegod xuegod2

指定用户的附加组

使用useradd -G 附加组 用户名命令可以指定用户的附加组:

useradd -G xuegod,oracle,root xuegod3

创建用户的另一个命令

adduseruseradd的软链接,两者功能相同:

adduser xuegod4

删除用户

使用userdel命令可以删除用户,选项-r表示同时删除用户的家目录和/var/mail目录:

userdel -r xuegod3

密码管理

  • passwd命令用于给用户添加或修改密码:
passwd oracle
  • 非交互式设置用户密码:
echo 123456 | passwd --stdin xuegod

修改用户信息

usermod命令用于修改用户信息,包括UID、主目录、主组、附加组和登录shell。

解决模板文件被删后显示不正常的问题

如果用户的bash配置文件被删除,可以复制/etc/skel/中的配置文件到用户家目录,并更改所有权:

cp /etc/skel/.bash* /home/xuegod88/
chown xuegod88:xuegod88 /home/xuegod88/.bash*

切换用户

  • su命令切换用户,不切换工作目录。
  • su -命令切换用户,并切换工作目录。

创建和删除组

  • 创建组:groupadd 组名
  • 删除组:groupdel 组名

总结

通过本章的学习,您可以掌握Linux系统中用户和组的管理,包括用户和组的创建、删除、密码设置以及用户信息的修改等操作,这些都是确保系统安全性和访问控制有效实施的关键技术点。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值