用户账户的权限管理

news2025/1/12 21:44:11

用户账户的权限管理

用户账号:

1、超级用户 :管理员账号 root 默认对本机拥有最高权限的账户,在系统中唯一。

2、普通用户:一般由管理员创建,拥有的权限是受限制的,一般只在自己的家目录中拥有完整的权限。

3、程序用户:普通用户的特殊形式。在安装软件时,部分应用程序需要创建一些账号,来保证程序的正常运行。就会创建一个程序账户(低权限账户)。

程序账户不能登录系统 作用:保证程序正常运行。

UID :用户的标识号,创建用户时候可以指定,可以用系统分配。唯一的,不能重复。

GID :组标识,创建用户的时候可以指定,也可以自动分配,也是唯一的,不能重复。

不同用户通过UID区分:

管理员用户UID:0

普通用户:1000

程序用户:1-999

判定一个用户是否为管理员,以uid为标准,uid=0的是管理员

fu:x:1000:1000:fu:/home/fu:/bin/bash

字段1:用户账号的名称

字段2:用户密码的占位符。无实意

字段3:用户的uid

字段4:用户的gid号

字段5:用户全名,一般和字段1一致

字段6:用户的家目录所在的位置

字段7:用户登录的shell,shell默认的解释器是bash,只有是/bin/bash才可以登录系统。

/sbin/nologin /bin/false,表示不可以登录系统。

一般程序用户的 shell 是/sbin/nologin/bin/false。

/etc/passwd 保存的是用户的信息

/etc/shadow 保存的是用户的密码和账户有效期(加密保存)

root: 6 6 6SuJ/b/.LajcTU7.1SVkuaSgemZKK2RGRB0472IYMTUkjFn.i0yoMKba8c.EcRzttYQEjo8G4ilThCTu/WgU3Pv9AMsJ5ewfL/3Wusp/::0:99999:7:::

字段1 :用户的账号名称

字段2 :用户密码 MD5加密方式 * 表示不能登录系统 !! 表示密码为空 不是真空,什么都没有才是空

字段3 : 上次修改密码的时间。时间是从1970-1-1到2024-5-21

字段4 : 密码的最短有效天数,0表示无限制

字段5 : 密码的最长有效天数 99999表示不限制

字段6 : 提前多少天告诉用户,密码将会过期,默认七天

字段7 : 密码过期之后多少天会禁用此用户

字段8 : 账号的失效时间,失效了多久,为空表示永不失效

字段9 : 保留字段,用户自定义,二次开发使用

如何添加用户、创建用户:

useradd

-u 指定 uid号。已被占用的uid不能被指定。

[root@localhost home]# useradd -u 666 qwe
45  qwe:x:666:2001::/home/qwe:/bin/bash    #cat /etc/passwd

-d 指定用户家目录位置。(一般不使用)

-e 指定用户的账户失效时间,格式yyyy-mm-dd

-M 创建用户时,不建立家目录

-s 创建用户时指定用户的登录shell

 [root@localhost ~]# useradd -u 888  -e 2024-9-9  -s /bin/bash  qaz  
 创建 uid为 888    过期时间为2024年9月9日   shell脚本路径/bin/bash

用户创建密码

passwd 用户名

-d 清空指定用户的密码。(慎用!)

-l 锁定用户,无法登录

[root@localhost ~]# passwd -l qaz
锁定用户 qaz 的密码 。
passwd: 操作成功

-u 解锁用户

[root@localhost ~]# passwd -u qaz
解锁用户 qaz 的密码。
passwd: 操作成功

-S 查看用户状态,用户是否被锁定

[root@localhost ~]# passwd -S qaz
qaz LK 2024-05-21 0 99999 7 -1 (密码已被锁定。)

修改密码的另一种方式:echo 要修改的密码 | passwd --stdin 要修改的用户名 (免交互式) 密码可视化

[root@localhost ~]# echo 1234 | passwd --stdin qaz
更改用户 qaz 的密码 。
passwd:所有的身份验证令牌已经成功更新。

修改账号属性

usermod

-u 修改用户的uid号

[root@localhost ~]# usermod -u 665  qaz

-d 修改用户的家目录地址(不用)

-e 修改账号失效时间 YYYY-MM-DD

root@localhost ~]# usermod -e 2024-9-5 qaz

-s 修改用户的登录shell

usermod -s shell路径 用户名

-L 锁定用户

[root@localhost ~]# passwd -S qaz
qaz LK 2024-05-21 0 99999 7 -1 (密码已被锁定。)

-U 解锁用户

[root@localhost ~]# usermod -U qaz
[root@localhost ~]# passwd -S qaz
qaz PS 2024-05-21 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)

删除账户

userdel 用户名 只删除用户不删除家目录

userdel -r 用户名 删除用户同时删除用户家目录

组账号

/etc/group 组账号信息

/etc/gshadow 保存组账号的额外信息

groupadd 添加组账号

groupdel 组名称

添加或者删除组成员 (添加可以一次性多个删除只能一个一个删除)

gpasswd

-a 向组内添加用户 gpasswd -a lzl hpc

-d 从组中删除用户 gpasswd -d hpc lzl

-M 向组中一次多个添加 gpasswd -M hpc,lzl2 lzl

配置文件:

ls -a 查看

[root@localhost ~]# ls -a
.   .bash_history  .bash_profile  .cache   .cshrc  .esd_auth      .lesshst  .tcshrc   .Xauthority
..  .bash_logout   .bashrc        .config  .dbus   .ICEauthority  .local    .viminfo

/etc/profile 全局配置 (对所有用户生效) source 文件名 (全局生效)/重启

~/.bash_profile 用户登录时会读取的配置,只对自己生效。

~/.bashrc 用户配置文件,只对自己生效,每次新打开一个shell就会读取这个文件

~/.bash_logout 用户退出当前shell的时候会执行的配置文件

每次登录都是shell的一个 子shell 每个之间互相隔离

读取顺序(优先级)

/etc/profile > ~/.bash_profile > ~/.bashrc > ~/.bash_logout

开机读取 登录读取 自定义读取 退出读取

权限管理

查询用户身份标识:

id 用户名 //查询uid gid 所属组

查询已经登录到主机的用户信息:W who users

U:所有者

G:所在租

O:其他用户

A:所有用户 a+x

r 4 读权限 w 2 写权限 x 1执行权限

赋权命令:

chmod 权限 文件名

递归赋权:

chmod -R 目录名

chmod -R 只有一层目录,目录当中的所有都会生效,级联目录只要最后一个会生效。

在这里插入图片描述

umask:用来设定文件和目录的默认权限。

文件默认权限:666

目录默认权限:777

创建文件,默认不给执行权限。

创建目录一定要有执行权限,没执行权限就不能切换,不能cd进入目录。

chown : 修改所有者和所有组

前提:用户和租都要存在,要先创建好。

chown 用户名 : 用户名 所有者和所在组一起变(可以不同)===== chown id.id

chown 用户名 文件名/目录名 只修改所有者

chown :用户名 只修改所在组 ========== chown .id

chown -R 目录名 第一层所有的生效,写到最后一层只有最后一层生效

创建用户 useradd

编写shell脚本 login.sh !#/bin/bash
echo " 欢迎你~ "

shell脚本赋权 chmod 777 login.sh

shell脚本更改所有者和所有组 chown nm.nm login.sh

进入用户家目录查看隐藏文件 cd /home/nm

修改隐藏文件中登录读取文件 vim .bash_profile 最后一行加入脚本路径

source 执行 隐藏文件 source .bash_profile

切换用户 su - nm

删除用户 userdel nm

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1691559.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【无标题】亚马逊5月24日宣布推出2024出口跨境物流加速器计划

亚马逊中国5月24日郑重宣布启动“2024亚马逊出口跨境物流加速器计划”,旨在依托其世界领先的物流网络和前沿技术,结合本土资源,不断优化跨境物流服务,以强化中国卖家在跨境物流供应链管理方面的能力,进而提升整体效率&…

DI-engine强化学习入门(四)DI-ZOO强化学习——MUJOCO环境搭建

上一章我们搭建了Atari的强化学习环境,这一期我们来搭建MUJOCO强化学习环境 那么我们为什么要“多此一举”呢? 一、概述 MuJoCo和Atari对比 Atari: 类型:Atari游戏是一系列的经典视频游戏。简单性:Atari游戏通常有相…

Leetcode—2769. 找出最大的可达成数字【简单】

2024每日刷题(139) Leetcode—2769. 找出最大的可达成数字 实现代码 class Solution { public:int theMaximumAchievableX(int num, int t) {return num t * 2;} };运行结果 之后我会持续更新,如果喜欢我的文章,请记得一键三连…

深入理解python列表遍历:两种方法详解与实例

新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一、引言 二、使用索引遍历列表 三、直接使用元素遍历列表 四、总结 一、引言 在编程过程…

【设计模式】JAVA Design Patterns——Callback(回调模式)

🔍目的 回调是一部分被当为参数来传递给其他代码的可执行代码,接收方的代码可以在一些方便的时候来调用它。 🔍解释 真实世界例子 我们需要被通知当执行的任务结束时。我们为调用者传递一个回调方法然后等它调用通知我们。 通俗描述 回调是一…

人生苦短,我学python之数据类型(上)

个人主页:星纭-CSDN博客 系列文章专栏:Python 踏上取经路,比抵达灵山更重要!一起努力一起进步! 目录 一.元组 (tuple) 二.集合(set) 三.字典(dict) 一.元组 &#…

科技前沿:IDEA插件Translation v3.6 带来革命性更新,翻译和发音更智能!

博主猫头虎的技术世界 🌟 欢迎来到猫头虎的博客 — 探索技术的无限可能! 专栏链接: 🔗 精选专栏: 《面试题大全》 — 面试准备的宝典!《IDEA开发秘籍》 — 提升你的IDEA技能!《100天精通鸿蒙》 …

【论文速读】Transformer:Attention Is All You Need

Transformer:Attention Is All You Need 摘要模型架构注意力模型Scaled Dot-ProductMulti-Head Attention Position-wise Feed-Forward NetworksEmbeddings and SoftmaxPositional Encoding 摘要 我们提出了一种新的简单的网络架构,Transformer&#xf…

OSPF多区域组网实验(思科)

华为设备参考:OSPF多区域组网实验(华为) 技术简介 OSPF多区域功能通过划分网络为多个逻辑区域来提高网络的可扩展性和管理性能。每个区域内部运行独立的SPF计算,而区域之间通过区域边界路由器进行路由信息交换。这种划分策略适用…

如何构建基因单倍型网络

一. 单倍型网络 单倍型网络图通常是指在遗传学和进化生物学中使用的一种图形表示法,用于描述不同个体或群体之间的遗传关系。这种图形通常用于研究基因或DNA序列在不同个体之间的变化和传递。在单倍型网络图中,节点表示不同的单倍型,而边表示…

自己搭建ntp服务器

1、背景 终端在使用过程中,发现联网后进行NTP(network time protocol,网络时间协议)校时过程中,经常出现校时失败的问题,特别是本地环境,因此需要在自己这边搭建测试环境。 2、搭建步骤 2.1 安葬服务器 sudo apt-get…

Python项目:数据可视化_下载数据【笔记】

源自《Python编程:从入门到实践》 作者: Eric Matthes 02 下载数据 2.1 sitka_weather_07-2021_simple.csv from pathlib import Path import matplotlib.pyplot as plt import csv from datetime import datetimepath Path(D:\CH16\sitka_weather_0…

今日早报 每日精选15条新闻简报 每天一分钟 知晓天下事 5月25日,星期六

每天一分钟,知晓天下事! 2024年5月25日 星期六 农历四月十八 1、 气象台:未来三天,北方雷雨侵扰,南方暴雨大暴雨将成片出现,今年首个台风生成在即。 2、 人社部:拟增加网络主播等19个新职业&am…

“高考钉子户”唐尚珺决定再战2024年高考

“高考钉子户”唐尚珺决定在2024年再次参加高考,这个选择确实很特别也很有趣。十几年连续参加高考,他已经积累了大量的备考经验和应试技巧。这样的经验对于高考辅导机构来说无疑是非常宝贵的资源,他如果选择去辅导机构当老师,应该…

运算符重载(上)

目录 运算符重载日期类的比较判断日期是否相等判断日期大小 赋值运算符重载赋值运算符重载格式赋值运算符只能重载成类的成员函数不能重载成全局函数用户没有显式实现时,编译器会生成一个默认赋值运算符重载,以值的方式逐字节拷贝 感谢各位大佬对我的支持…

使用llama.cpp实现LLM大模型的格式转换、量化、推理、部署

使用llama.cpp实现LLM大模型的量化、推理、部署 大模型的格式转换、量化、推理、部署概述克隆和编译环境准备模型格式转换GGUF格式bin格式 模型量化模型加载与推理模型API服务模型API服务(第三方)GPU推理 大模型的格式转换、量化、推理、部署 概述 llama.cpp的主要目标是能够在…

微信小程序反编译/解包

微信小程序反编译/解包 环境与工具 操作系统:Windows 11 23H2 微信版本:3.9.10.19 Q:如何找到小程序文件位置? A:在微信的设置找到文件路径,小程序文件位于 \WeChat Files\Applet\。 Q:小程…

centos下yum -y install npm报没有可用软件包 npm

yum -y install npm安装报错 失败原因是因为缺少epel(epel是社区打造的免费开源发行软件包版本库,系统包含大概1万多个软件包),需要先安装epel-release 解决方法: 1、先安装epel-release yum -y install epel-releas…

1106 2019数列

solution 维护长度为4的数组&#xff0c;对于第四位之后的数字&#xff0c;为所维护数组的所有元素之和 的个位数 #include<iostream> using namespace std; int main(){int n, a[4] {2, 0, 1, 9}, cnt 0, d;scanf("%d", &n);for(int i 0; i < n; …

dmanywhere的docker制作

dmanywhere的docker制作 官网地址&#xff1a; http://www.dmanywhere.cn/ 下载相关执行文件。 Dockerfile的默认命名是“Dockerfile”&#xff0c; 在构建镜像时&#xff0c;如果没有指定Dockerfile文件&#xff0c;Docker通常会寻找名为“Dockerfile”的文件 1.Dockerf…