Linux用户管理

Linux用户管理

用户的定义

Linux是多用户多任务操作系统,在系统中可建立多个用户.所谓多用户多任务是指,多个用户可以在同一时间内登录同一个系统执行各自不同的任务,而互不影响.不同用户具有不同的权限,每个用户在权限允许的范围内完成各自的任务,Linux 正是通过这种权限的划分与管理,实现了多用户多任务的运行机制.

用户属性

  1. 用户名:账号,用来对应UID
  2. 口令:就是登录账号的密码
  3. 用户ID UID:用户UID是账户的标示符.当UID为0时,代表这个账号是系统管理员. 当UID为1~499,为系统保留账号.
  4. 用户主目录HOME:/home/用户名
  5. 用户shell:当名户登录系统后就会取得一个Shell来与系统核心沟通以进行用户的操作任务.

用户与组

用户组是具有相同特征的用户的集合体,通过用户组可以让多个用户具有相同的权限

用户和用户组的对应关系包括如下几种:

一对一,多对一,一对多,多对多.

相关配置文件

  1. /etc/passwd

    是系统能够识别的用户清单,当用户登录时,系统会查询这个文件,确定用户的UID并验证用户口令,列用:分开

    登录名:经过加密的口令:UID:默认的GID:个人信息:主目录:登录Shell

  2. /etc/shadow

    是加密的用户清单,只有超级用户可以访问这个文件,用来保护加密口令的安全.列用:分开.

    登录名:经过加密的口令:上次修改口令的时间:两次修改口令之间最少的天数:两次修改口令之间最多的天数:提前多少警告用户口令即将过期:在口令过期之后多少天禁用账号:账号过期的日期:保留字段空

  3. login defs文件

    该文件记录了生成一个新用户时所使用的参数

  4. pwconv文件

    该文件的作用是使shadow文件的内容和passwd文件的内容保持一致,即补上任何在passwd中新加的用户,同时从shadow删除不在passwd中列出的用户.

  5. /etc/group文件

    该文件包含了UNIX组的名称和每个组中的成员列表,每一行代表一个组.

    组名:加密的口令:GID号

管理命令

创建用户

  1. 添加用户
    adduser <username>

adduser命令的配置文件

/etc/adduser.conf

  1. 设置初始化口令
    passwd [-k][-l][u] [-f][-d][-S] username

  2. 添加新用户的过程

    1)系统

    编辑passwd和shadow文件,定义用户账号:

    设置一个初始口令;

    创建用户目录,用chown和chmod命令改变主目录的属主和属性.

  1. 为用户所进行的步骤
    将默认的启动文件复制到用户目录主目录中;
    设置用户的邮件主目录并建立邮件别名;
  2. 为管理员准备的步骤.
    将用户添加到/etc/group/中;
    配置磁盘限额
    核实账号是否设置正确.

删除用户

deluser <username>
deluser --remove-home user1

修改属性

usermod [-u uid [-o]] [-g group] [-G group ,....] [-d home [-m]] [-s Shell] [-c comment] [-l new_name] [-f inactive] [-e expire] [-p passwd] [-L|-U] name

-c <备注>

-d <登录目录> 修改用户登录时的目录

-e <有效期> 修改账号的有效期限

-f <缓冲天数> 修改在密码过期后多步天即关闭该账号

-g <群组> 修改用户所属的群组.

-G <群组> 修改用户所属的附加群组

-l <账号名称> 修改用户账号名称

-L 销定用户密码

-s 修改用户登录后所使用的shell

-u 修改用户ID

-U 解除密码锁定

组管理

每个用户都 有一个用户组,通过用户组系统对组中的所有用户进行集中管理,不同Linux系统对用户组的规定有所不同,Linux下用户属于和它同名的用户组,这个用户组在创建用户时肉中同时创建.用户组的管理涉及用户的添加\删除\修改.组的增加\删除\修改实除上就是对/etc/group文件的更新.

  1. 增加一个新用户组用groupadd命令
    groupadd [options] groupname
    -g --gid GID:
    -o 表示新用户组的GID可以和系统已存在的用户组GID相同
    groupadd -g 105 groupname
  1. 删除一个用户组使用 groundel
    groupdel groupname

  2. 修改用户组的属性使groupmod命令
    groupmod [options] groupname

    -g GID:为用户组指定新的组标识号

    -o 表示新的用户组的GID可以和系统已存在的GID相同

    -n 新用户组将用户组的名字改为新名字.

  3. 用户在登录后 使用命令 newgrp可以转换到其他用户组.

用户间通信

write 命令可以帮助传递信息给同时登录系统的另一个用户,输入EOF表示信息结束,write指令就会将信息传给对方.按Ctrl+c组合键可以结束会话,如果接收信息的用户不只登录本地主机一次,可能指定接收信息的终端机编号.若对方设定 mesg n,则此时信息将无法传递给对方.
write user [ttyname]

参数: 预备传信息的用户账号.

ttyname:如果使用者同时有两个以上的tty连线,可以自行选择合适的tty传信息.

磁盘配额

磁盘配额的概念

监视个人用户卷的使用情况,困此,每个用户对磁盘配额空间的利用都不会影响同一卷其他用户的磁盘配额.

磁盘配额一般是从一个用户占用磁盘大小和所有文件的数量两个方面来进行的,软限制,硬限制

相关推荐
盟接之桥1 分钟前
盟接之桥说制造:引流品 × 利润品,全球电商平台高效产品组合策略(供讨论)
大数据·linux·服务器·网络·人工智能·制造
忆~遂愿24 分钟前
ops-cv 算子库深度解析:面向视觉任务的硬件优化与数据布局(NCHW/NHWC)策略
java·大数据·linux·人工智能
湘-枫叶情缘28 分钟前
1990:种下那棵不落叶的树-第6集 圆明园的对话
linux·系统架构
Fcy6481 小时前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程
袁袁袁袁满1 小时前
Linux怎么查看最新下载的文件
linux·运维·服务器
代码游侠2 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
Gary Studio2 小时前
rk芯片驱动编写
linux·学习
mango_mangojuice2 小时前
Linux学习笔记(make/Makefile)1.23
java·linux·前端·笔记·学习
主机哥哥2 小时前
阿里云OpenClaw部署全攻略,五种方案助你快速部署!
服务器·阿里云·负载均衡
Harvey9032 小时前
通过 Helm 部署 Nginx 应用的完整标准化步骤
linux·运维·nginx·k8s