Linux系统管理本地 Linux 用户和组

Linux系统管理本地 Linux 用户和组

Linux的用户UID

系统中的每个进程(运行程序)都作为一个特定用户运行。每个文件归一个特定用户所有。对文件和目录的访问受到用户的限制。与运行进程相关联的用户可确定该进程可访问的文件和目录。

用户的分类

  • root用户

用户系统中唯一,权限最大,可以操作任意命令

  • 普通用户

权限较低,只能编辑自己的用户家目录,由root账户创建

  • 虚拟用户

没有登录系统的权限,系统运行依赖于用户,如bin,ftp,mail,由系统创建

查看用户

  • id命令显示有关当前已登陆用户的信息
[root@localhost ~]# id
uid=0(root) gid=0(root) 组=0(root)
  • 在Linux中UID为0,就是超级用户,如要设置管理员用户,可以改UID为0,建议用sudo
  • 系统用户UID为1~999 Linux安装的服务程序都会创建独有的用户负责运行。
  • 普通用户UID从1000开始:由管理员创建(centos7),最大值1000~60000范围

Linux的用户组group

为了方便管理属于同一组的用户,Linux 系统中还引入了用户组的概念。通过使用用 户组号码(GID,Group IDentification),我们可以把多个用户加入到同一个组中,从而方 便为组中的用户统一规划权限或指定任务。

与用户一样,组也有名称和编号(GID)。本地组在/etc/group中定义。

用户和组的关系

  • 一对一,一个用户可以存在一个组里,组里就一个成员
  • 一对多,一个用户呆在多个组里面
  • 多对一,多个用户在一个组里,这些用户和组有相同的权限
  • 多对多,多个用户存在多个组里

查看用户信息配置文件

  • /etc/passwd 文件存储本地用户信息
  • /etc/shadow 用户密码信息
  • /etc/group 用户组信息
  • /etc/gshadow 用户组密码信息
  • /etc/skel 存放新用户需要的基础环境变量文件

/etc/passwd字段信息解释

Linux系统管理本地 Linux 用户和组
1. username 用户名,对应UID,是用户登录系统的名字,系统中唯一不得重复。
2. password 用户密码,存放在/etc/shadow文件中进行保护密码。
3. UID 用户ID号,即在最基本的级别标识用户的编号。
4. GID 是用户的主要组ID编号。
5. GECOS 用户注释,字段是任意文本。
6. /home/dir 用户家目录,是用户的个人数据和配置文件的位置。
7. shell 当前登录用户使用的解释器。centos/redhat系统中,默认的都是bash。若是禁止此用户登录机器,改为/sbin/nologin即可

用户管理

常用命令

命令作用
useradd创建用户
usermod修改用户信息
userdel删除用户及配置文件
passwd更改用户密码
chpasswd批量更新用户密码
chage修改用户密码属性
id查看用户UID、GID、组信息
su切换用户
sudo用root身份执行命令
visudo编辑sudoers配置文件

创建用户的流程

1.useradd 用户名
2.系统读取/etc/login.defs(用户定义文件),和/etc/default/useradd(用户默认配置文件)俩文件中定义的规则创建新用户
3.向/etc/passwd和/etc/group文件中添加用户和组信息,向/etc/shadow和/etc/gshadow中添加密码信息
4.根据/etc/default/useradd文件中配置的信息创建用户家目录
5.把/etc/skel中所有的文件复制到新用户家目录中

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/4471

(1)
郭靖的头像郭靖
上一篇 2022年6月11日 上午10:20
下一篇 2022年6月11日 上午11:54

相关推荐

  • rsync综合备份

    一.先看需求 客户端需求:1.客户端每天凌晨1点在服务器本地打包备份(/etc目录和/var/log目录)2.客户端备份的数据必须存放至以 “主机名ip地址当前时间” 命名的目录中3.客户端最后通过rsync推送本地已经打包好的备份文件至backup服务器4.客户端服务器本地保留最近7天的数据,避免浪费磁盘空间 服务端需求:1.服务端…

    2023年12月11日
    1.1K00
  • Centos下配置JDK环境-支持JDK所有版本(超详细过程)

    前言 配置jdk环境,本人写了两种方案进行配置,当然也最推荐第一种方案。 下载JDK都是免费的,JDK各个版本的下载地址为:https://www.oracle.com/java/technologies/javase-downloads.html 本文以JDK 8为例,操作系统以CentOS7.6为例,CentOS7的所有系统都是相同的操作。 一、环境 首…

    2022年6月17日
    2.5K00
  • 使用jenkins 打包前端私服代码失败的问题

    问题现象: jinekins 流水线在yarn 编译前端私服依赖包的时候,报错,提示 Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password). 【emm。。。之前的构建都是好好的,也不知道前端大哥啥时候去封装的前端代码,而且奇怪的是没有放在公共库里。。。。】 Pipeline 流…

    2023年1月31日
    93900
  • Docker配置指定IP(Ubuntu 16.04)

    应用场景 1. Docker网络模式概览 说明: 最常用的就是利用bridge,自定义虚拟网桥来固定IP。默认情况下,docker的容器重启之后,会自动分配IP,导致一次重启IP变化。所以需要对docker容器指定IP。由于docker默认的网络不能固定ip地址,我们创建自定义虚拟网桥,进行固定IP的分配 2. 创建自定义网络 3. 查看网络信息 创建网桥之…

    2023年2月28日
    1.3K00
  • Centos7升级内核后无法启动解决办法:mpt[23]sas驱动问题

    entOS 7.* 从内核 3.10.0 升级到 5.*.*后,重启不了,原因是 Linux 内核 4.4.x 版本之后,dracut 命令生成的 initramfs 默认不会自动加载 mpt3sas 驱动模块。因为没有对应的驱动程序,所以识别不了系统盘 1. 查询3.10.0 initramfs的驱动 可以看到在3.10内核的时候是mpt2sas…

    2023年5月6日
    1.5K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信