Linux---05---用户组权限

server/2024/9/20 7:10:58/ 标签: linux, 运维, 服务器

课程回顾

  • vim编辑器

本章重点

  • 文件权限

  • 用户管理

  • 用户组管理

    一、文件权限

由于Linux是一个多人多任务的系统,因此经常会出现同一台机器同时有多个人进行操作,为了考虑每个人的隐私权以及每个人喜好的工作环境,所以文件的权限归属就至关重要。

为了保障系统的安全性和文件的隐私性,一个文件针对不同权限的账户有着不同的权限,如下图

如图所示,文件权限是由一个字符串所表示,其所代表的含义为

其中,文档类型有如下表示方法:

  • d :目录,例如上表档名为『.gconf』的那一行;

  • -:文档,例如上表档名为『install.log』那一行;

  • l :连结档(link file);b :装置文件里面的可供储存的接口设备(可随机存取装置);

  • c : 装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。

权限由rwx三个字幕表示,分别表示为可读、可写、可执行,如果没有该权限,则用“ - ”表示,对于目录来说,必须有x权限,否则无法读取目录内容

如果文件名前面有“ . ”,则表示这个文档或目录是隐藏的

二、用户和用户组

2.1 分类

超级用户:root

普通用户

2.2 查看用户信息

当前系统中的用户组信息

vim /etc/group
或者
cat /etc/group

注意:  

  1. 当该组内只有一个用户,并且用户名和组名相同时,在组列表中,包含用户一列可以为空

  2. 系统中root分组的组编号一定为0

  3. 组号1~499为系统预留的组编号,一般是预留给系统安装的软件或者服务的编号,越早安装的软件或者服务的组编号约早。用户手动创建的用户组编号从500开始

  4. 组密码占位符,无一例外,全部用x表示

当前系统中用户组的密码信息

vim /etc/gshadow

注意:

  1. 如果组密码处为“*” “!”或者为空时候,则该组没有密码

  2. 如果组管理者为空,则表示该组内所有成员都可以管理该组

当前系统中所有的用户信息

/ect/passwd

注意:在linux中,超级管理员root的用户编号一定为0

当前系统中所有用户的密码信息

/ect/shadow

注意:密码是一个单向加密过的字符串

2.3 用户操作

2.3.1 创建用户

命令格式:

useradd [参数] 用户名

参数:

  • -d:设置该用户的home目录,默认在home/用户名

例如:useradd -d /home/helloworld hello //新建hello用户,并且将其home目录设置为/home/helloworld

  • -u:设置其userid,默认自动生成

例如:useradd -u 668 hello //新建一个hello用户,将他的id设置为668

  • -g:设置其主组,默认自动添加一个同名的用户组

例如:useradd -g root hello //新建一个hello用户,并将其假如root组

  • -m:生成home目录的文件夹

useradd zhangsan

注意:

  1. 会在/etc/passwd文件中添加xxx用户的信息

  2. 会在/etc/group文件中添加一个名为xxx的用户组信息

  3. 会在/home路径下创建一个同名的文件夹,作为家目录

        

2.3.2 修改用户信息

命令格式:

usermod [参数] 用户名

参数:

  • -l :修改新用户名

​ 例如:usermod -l helloworld hello 将hello用户名改为helloworld,但其home目录不改变

  • -u :修改用户的userid

​ 例如:usermod -u 888 hello 将hello的userid改为888

  • -d :修改用户的home目录,不声明,默认在/home/用户名

  • -g :修改用户的主用户组,不声明,创建同名的用户组

  • -L :锁定用户,使其不能登录

  • -U :解除锁定

2.3.3 删除用户

命令格式:

userdel [参数] 用户名

参数:

  • -r 删除用户的同时将其home目录也删掉

2.3.4 设置密码

passwd 用户名
[root@localhost ~]# passwd test1
Changing password for user test1.
New password: 
BAD PASSWORD: The password is shorter than 8 characters
Retype new password: 
passwd: all authentication tokens updated successfully.

2.3.5 切换用户

[root@localhost ~]# su 用户名

2.4 用户组操作

2.4.1 创建用户组

groupadd 组名

2.4.2 修改用户组

groupmod -n 新组名 旧组名   //修改组名
​
groupmod -g 新组id 旧组id 修改组ID

2.4.3 删除用户组

groupdel 组名

三、权限管理

root 0:root 0

sn 1000 :sn 1000

test2 1002 : sn 1000

test1 1001 :test1 1001

3.1 chmod命令

修改权限

  • 读:r | 4

  • 写:w | 2

  • 执行:x | 1

  • 没有:-

chmod 参数 文件名|文件夹名

可以使用如下方法直接设置文件的权限

使用rwx

用户|用户组|其他用户分别设置权限

chomd 用户+权限 文件
  • 所有者(u) ,组(g) ,其他用户(o) ,全部(a)

  • 新增(+), 撤销(-)

# 文件所有者新增写的权限
chmod u+w 1.txt
​
# 文件所有者撤销写的权限
chmod u-w 1.txt
​
# 其他用户新增读的权限
chmod o+r 1.txt
​
# 所有都新增读的权限
chmod a+r 1.txt

使用数字

  • 读:4

  • 写: 2

  • 执行: 1

0~7:0(没权限),1(执行),2(写),3(写执行),4(读),5(读执行),6(读写),7(读写执行)

chmod 123 文件
  • 1:所有者的权限

  • 2:组的权限

  • 3:其他用户的权限

# 所有者执行权限,组写权限,其他用户写执行权限
chmod 123 1.txt
​
chmod 755 1.txt
​
chmod 777 1.txt

                3.2 chown命令

change owner 的缩写

改变文档所有者,可使用参数 -R使得其子目录也同时修改

chown username 文件名
​
# 同时修改文档或目录的拥有者和所在组
chown username:group 文件名 

3.3 chgrp命令

change group的缩写

改变文档所有组,可使用参数 -R使得其子目录也同时修改

chgrp 组的名字 文件名

修改文件的所属组 以及对应的子目录的所属组

四、sudo命令

4.1 作用

一般用在非root用户下,临时提升非root用户的权限。

sudo 是一个在 Linux 系统中用于执行特权命令的超级用户工具。sudo 命令默认安装在大多数 Linux 发行版中,它可以允许用户以 root 用户权限执行某些命令,只需在 linux 系统/etc/sudoers文件中配置用户和组执行 sudo 命令的权限,root 用户默认配置 sudo 权限。

4.2 sudo 命令的使用

sudo 命令

普通用户使用 sudo 命令需要输入 password 确认是否执行特权命令,而 root 用户使用 sudo 命令不需要输入 password, 因为在 /etc/sudoers 文件中默认配置,允许 root 用户可以在系统任何地方执行任何命令。

# 查看版本信息
sudo -V
​
# 以root身份使用useradd命令创建cat用户
sudo -u root useradd cat
​
# 更改用户密码:
sudo passwd user
​
# 更改用户组:
sudo usermod -G group user
​
# 更改用户主目录的权限:
sudo chown -R user:group /home/document
​
# 更改文件所有者和所属组
sudo chown user:group /home/file
​
# 更改文件权限
sudo chmod -R 755 /home/file

4.3 普通用户

普通用户不能直接使用

# 方法1:使用 root 用户编辑 /etc/sudoers 文件,将用户名添加到 %wheel 组中。
# 例如:%hzk  ALL=(ALL) ALL
%用户名 ALL=(ALL) ALL
​
# 方法2:使用 root 用户编辑 /etc/sudoers 文件,将用户添加到 %wheel 组中,设置不需要密码。
# 例如:%hzk  ALL=(ALL) NOPASSWD: ALL
%用户名 ALL=(ALL) NOPASSWD: ALL

 

让所有的用户都可以使用sudo的命令


http://www.ppmy.cn/server/102054.html

相关文章

50Kg大载重六旋翼无人机技术详解

50Kg大载重六旋翼无人机的机体结构设计是确保其高承载能力和飞行稳定性的基础。该机体通常采用轻质高强度的材料如碳纤维、铝合金或复合材料构建,以在保证结构强度的同时减轻整机重量。设计过程中,需考虑空气动力学原理,优化机臂布局、机身形…

Leetcode面试经典150题-189.轮转数组

解法都在代码里,不懂就留言或者私信 class Solution {public void rotate(int[] nums, int k) {/**向右轮转 1 步: [7,1,2,3,4,5,6]向右轮转 2 步: [6,7,1,2,3,4,5]向右轮转 3 步: [5,6,7,1,2,3,4]....向右轮转 7 步: [1,2,3,4,5,6,7] *//**既然反转数组的倍数是不需…

oracle使用sql生成表结构文档

oracle使用sql生成表结构文档 背景 客户要求数据资产盘点,需要提供相关表字段的说明文档,指定具体格式。手动是不可能手动的, 使用SQL实现。 要求 实现 生成脚本sql 查询所有非临时表 SELECT table_name FROM all_tables WHERE temporary N;--默认…

sp-eric靶机

端口扫描 靶机ip地址为192.168.7.46 目录扫描 访问80端口 拼接访问 /admin.php 发现登录框 测试sql注入,弱口令等,无结果 扫描目录发现了.git文件,存在源码泄漏 将其下载到kali上读取 python2 GitHack.py -u http://192.168.7.180/.git/…

深入探索CANoe的CAPL语言

概述 在汽车电子和嵌入式系统开发领域,仿真和测试是确保功能正确性和性能标准的关键步骤。Vector公司的CANoe软件是这一领域的佼佼者,它提供了一个强大的平台,用于模拟、测试和分析汽车网络,特别是CAN网络。今天,我们…

无人机电池详解!!!

娱乐型和玩具型无人机 这类无人机的电池容量通常较小,以满足短时间娱乐飞行的需求。电池容量范围一般在500mAh至3000mAh之间,轻便、易携带,适合初学者和休闲玩家。 航拍无人机 普通航拍无人机追求高续航能力,电池容量一般在500…

玩转单例模式

目录 1. 饿汉式 2. 懒汉式 3. volatile解决指令重排序 4. 反射破坏单例模式 5. 枚举创建单例模式 所谓单例模式,就是是某个类的实例对象只能被创建一次,单例模式两种实现:饿汉式和懒汉式。 1. 饿汉式 所谓饿汉式,顾名思义…

Lambda表达式与流式编程

一、Lambda表达式 1.1 什么是lambda表达式 Lambda表达式是 jdk1.8 引入的一个新特性,它是函数式编程在Java中的一种体现。也是1.8最值得学习的新特性。 1. Lambda表达式实际上就是匿名内部类的简化版本。 2. Lambda表达式是jdk1.8引入的一个最重要的新特性&…

VUE(一)——nextTick

DOM更新循环结束后执行延迟回调,在数据修改以后立即使用该方法可获取更新后的DOM。 (*问题1)DOM更新循环? VUE中使用异步执行DOM更新,在修改数据之后视图不会立即更新,而是等同一事件循环中的所有数据变化…

Java后端面试题(mq相关)(day9)

目录 为什么用MQ? 异步 、削峰、解耦1. 异步处理2. 解耦3. 削峰填谷 Exchange类型什么是死信队列?如何保证消息的可靠性?RabbitMQ中如何解决消息堆积问题?RabbitMQ中如何保证消息有序性?如何防止消息重复消费?(如何保证消息幂等…

ARM——体系结构

计算机体系结构:冯诺伊曼 哈佛 冯诺依曼结构 冯诺依曼结构,也称冯诺依曼模型或普林斯顿结构,是根据冯诺依曼提出的存储程序概念设计的计算机体系结构。其主要特点包括: 存储程序:指令与数据都…

嵌入式 | 嵌入式 Linux 系统使用摄像头

点击上方"蓝字"关注我们 01、引言 >>> 在嵌入式 Linux 系统使用摄像头 俗话说“眼见为实”,这或许是为什么近年来摄像头在嵌入式系统上快速增长的原因。它们被用于不同的场景,如: 远程监控:典型的例子是闭路电视,监控人员在监视环境(或许你所在的大楼…

web开发环境搭配与创建javaee项目

一.web开发 (1)web开发指的是前端,后端,以及数据库进行交互,前端发送请求到后端,后端经过程序处理后到达数据库,最后在进行后端处理响应回前端。 (2)一次三端交互的doget或者dopost简单请求流程 (3)web开发除了需要前端,后端,数据库开发工具…

C#垃圾处理机制相关笔记

C#编程中的垃圾处理机制主要通过垃圾回收器(Garbage Collector,GC)实现自动内存管理。C#作为一种托管语言,其垃圾处理机制显著减轻了程序员的内存管理负担,与C语言等非托管语言形成鲜明对比。具体介绍如下:…

ElasticSearch相关知识点

ElasticSearch中的倒排索引是如何工作的? 倒排索引是ElasticSearch中用于全文检索的一种数据结构,与正排索引不同的是,正排索引将文档按照词汇顺序组织。而倒排索引是将词汇映射到包含该词汇的文档中。 在ElasticSearch中,倒排索…

ArrayList 和 LinkedList 的区别是什么

数据结构实现:ArrayList 是动态数组的数据结构实现,而 LinkedList 是双向链表的数据结构实现。随机访问效率:ArrayList 比 LinkedList 在随机访问的时候效率要高,因为 LinkedList 是线性的数据存储方式,所以需要移动指…

greenplum授权

1. 表空间(Tablespace) CREATE:创建表空间权限USAGE:使用表空间权限 在Greenplum数据库中,表空间(Tablespace)是用于存储数据库对象的物理位置。以下是表空间相关的授权和相应的语法&#xff…

精武杯的部分复现

标红的为答案 计算机手机部分 1、请综合分析计算机和⼿机检材,计算机最近⼀次登录的账户名是?admin 2.请综合分析计算机和⼿机检材,计算机最近⼀次插⼊的USB存储设备串号是?S3JKNX0JA05097Y 3.请综合分析计算机和⼿机检材,谢弘…

《数据中心网络架构与技术》第七章构建数据中心的逻辑网络

Overlay网络 ,Overlay网络即通过在现有Underlay网络上叠加一个软件定义的逻辑网络,解决数据中心网络中诸如大规模虚拟机之间二层互通的问题。 Overlay网络和Underlay网络完全解耦,将网络虚拟化并构建出面向应用的自适应逻辑网络&#xff0c…

Isaac Sim 11 粒子

注意:omni.particle.system.core 目前正在进行大量更改。使用现有扩展构建的系统需要在 USD Composer 2023.2 版本中。 1.打开粒子扩展 2. 设置透明度 如果材质中使用的图像具有一定范围的透明度,需要启用Fractional Cutout Opacity(位置在第…