Linux用户和权限 —— 操作演示
Linux用户和权限——操作演示
- 认知root用户
- 用户、用户组管理
- 查看权限控制
- 修改权限控制- chmod
- 修改权限控制- chown
Linux系列:
Linux基本命令 —— 操作演示
认知root用户
root用户(超级管理员)
无论是Windows、MacOS、Linux均采用多用户的管理模式进行权限管理。
- 在Linux系统中,拥有最大权限的账户名为: root(超级管理员)
- 而在前期,我们一直使用的账户是普通的用户: rmzh
root用户拥有 最大的系统操作权限,而普通用户在许多地方的权限是受限的。
- 使用普通用户在根目录下创建文件夹
- 切换到root用户后,继续尝试

普通用户的权限,一般在其HOME目录内是不受限的
一旦出了HOME目录,大多数地方,普通用户仅有只读和执行权限,无修改权限。
su 和 exit 命令
su命令就是用于账户切换的系统命令,其来源英文单词:Switch User
语法: su [-] [用户名]
- -符号是可选的,表示是否在切换用户后加载环境变量,建议带上
- 参数: 用户名,表示要切换的用户,用户名也可以省略,省略表示切换到root
- 切换用户后,可以通过exit命令退回上一个用户,也可以使用快捷键: ctrl + d
- 使用普通用户,切换到其它用户需要输入密码,如切换到root用户
- 使用root用户切换到其它用户,无需密码,可以直接切换
sudo命令
在我们得知root密码的时候,可以通过su命令切换到root得到最大权限。
但是我们不建议长期使用root用户,避免带来系统损坏。
我们可以使用sudo命令,为普通的命令授权,临时以root身份执行。
语法: sudo其它命令
- 在其它命令之前,带上sudo,即可为这一条命令临时赋予root授权
- 但是并不是所有的用户,都有权利使用sudo,我们需要为普通用户配置sudo认证
为普通用户配置sudo认证
- 切换到root用户,执行visudo命令,会自动通过vi编辑器打开:/etc/sudoers
- 在文件的最后添加:(命令模式:
G跳到行尾,再按o进入输入模式 )

- 最后
esc进入命令模式,再输入:wq保存退出。 - 切回普通用户,执行的命令,均以 root运行

取消sudo认证
- 切换到root用户,执行visudo命令,跳到最后一行,按
dd删除,并保存退出。

- 再在根目录下创建,权限不足:

用户、用户组管理
Linux系统中可以:
- 配置多个用户
- 配置多个用户组
- 用户可以加入多个用户组中

Linux中关于权限的管控级别有2个级别,分别是:
- 针对用户的权限控制
- 针对用户组的权限控制
比如,针对某文件,可以控制用户的权限,也可以控制用户组的权限。
所以,我们需要学习在Linux中进行用户、用户组管理的基础命令,为后面学习权限控制打下基础。
用户组管理
以下命令需 root用户 执行:
- 创建用户组
groupadd 用户组名 - 删除用户组
groupdel 用户组名
用户管理
以下命令需 root用户 执行
- 创建用户
useradd [-g -d] 用户名- 选项: -g 指定用户的组,不指定-g,会创建同名组并自动加入,指定 -g 需要组已经存在,如已存在同名组,必须使用-g
- 选项: -d 指定用户HOME路径,不指定,HOME目录默认在: /home/用户名
(为后续演示,我们创建一个itcast用户组: groupadd itcast)

-
删除用户
userdel [-r] 用户名- 选项: -r,删除用户的HOME目录,不使用-r,删除用户时,HOME目录保留
-
查看用户所属组
id [用户名]- 参数:用户名,被查看的用户,如果不提供则查看==自身 ==

- 修改用户所属组
usermod -aG 用户组 用户名- 将指定用户加入指定用户组

getent
使用 getent 命令,可以查看当前系统中有哪些用户
语法:getent passwd

共有7份信息,分别是:
用户名:
密码(x):
用户ID:
组ID:
描述信息(无用):
HOME目录:
执行终端(默认bash)
使用getent命令,同样可以查看当前系统中有哪些用户组
语法: getent group

包含3份信息,
组名称:
组认证(显示为x):
组ID
查看权限控制
- 查看Linux文件的权限管控信息
认知权限信息
通过ls -l 可以以列表形式查看内容,并显示权限细节

- 序号1,表示文件、文件夹的权限控制信息。
- 序号2,表示文件、文件夹所属用户
- 序号3,表示文件、文件夹所属用户组
序号1: 权限细节总共分为10个槽位

举例: drwxr-xr-x表示:
- 这是一个文件夹,首字母d表示
- 所属用户(上角图序号2)的权限是: 有r有w有x, rwx
- 所属用户组(上角图序号3)的权限是:有r无w有x,r-x(-表示无此权限)
- 其它用户的权限是:有r无w有x,r-x
r 读 、 w 写 、 x 执行 三种权限
r表示读权限w表示写权限x表示执行权限
针对文件、文件夹的不同,rwx的含义有细微差别
r:针对文件可以查看文件内容
针对文件夹,可以查看文件夹内容,如ls命令w: 针对文件表示可以修改此文件
针对文件夹,可以在文件夹内:创建、删除、改名等操作x: 针对文件表示可以将文件作为程序执行
针对文件夹,表示可以更改工作目录到此文件夹,即cd进入
修改权限控制- chmod
chmod命令
我们可以使用chmod命令,修改 文件、文件夹的权限信息。
- 注意,只有文件、文件夹的 所属用户 或 root用户 可以修改。
语法: chmod [-R] 权限 文件或文件夹
- 选项:
-R,对 文件夹内的全部内容应用同样的操作
示例:
chmodu=rwx,g=rx,o=xhello.txt,将文件权限修改为:rwxr-x--x- 其中:
u表示user所属用户权限,g表示group组权限 ,o表示other其 它用户权限
- 其中:
chmod-Ru=rwx,g=rx,o=xtest,将文件夹test以及文件夹内全部内容权限设置为:rwxr-x--x

建议使用:
快捷写法: chmod 751 hello.txt
- 将hello.txt的权限修改为
751
权限的数字序号 ( 可以理解为3位二进制,有权限记为:
1,无权限记为:0;再用十进制表示 )
权限可以用3位数字来代表,第一位数字表示用户权限,第二位表示用户组权限,第三位表示其它用户权限。数字的细节如下:r记为4,w记为2,x记为1,可以有:
0 : 无任何权限, 即 - - -
1 : 仅有 x 权限,即 - -x
2 : 仅有 w 权限,即 -w-
3 : 有 w 和 x 权限,即-wx
4 : 仅有 r 权限,即r - -
5 : 有 r 和 x 权限, 即r-x
6 : 有 r 和 w 权限, 即rw-
7 : 有 全部 权限,即rwx
所以751表示 :rwx(7) r-x(5) - -x(1)

案例
- 将
hello.txt的权限修改为:r-x- -xr-x,数字序号为:chmod515hello.txt - 将
hello.txt的权限修改为:-wx-w-rw-,数字序号为:chmod326hello.txt
修改权限控制- chown
chown命令
使用chown命令,可以修改 文件、文件夹 的 所属用户 和 用户组
- 普通用户无法修改所属为其它用户或组,所以此命令只适用于 root用户 执行

语法: chown [-R] [用户] [:] [用户组] 文件或文件夹
- 选项,
-R,同chmod,对文件夹内全部内容应用相同规则 - 选项,
用户,修改所属用户 - 选项,
用户组,修改所属用户组 :用于分隔用户和用户组
示例:
chownroothello.txt,将hello.txt所属 用户 修改为root.chown:roothello.txt,将hello.txt所属 用户组 修改为rootchownroot:rmzhhello.txt,将hello.txt所属 用户 修改为root,用户组 修改为rmzhchown-Rroottest,将文件夹 test 的所属 用户 修改为root并对文件夹内全部内容应用同样规则

注:仅供学习参考,如有不足,欢迎指正!
相关文章:
Linux用户和权限 —— 操作演示
Linux用户和权限——操作演示认知root用户用户、用户组管理查看权限控制修改权限控制- chmod修改权限控制- chownLinux系列: Linux基本命令 —— 操作演示 认知root用户 root用户(超级管理员) 无论是Windows、MacOS、Linux均采用多用户的管理模式进行权限管理。…...
【华为OD机试真题2023 JAVA】单核CPU任务调度
华为OD机试真题,2023年度机试题库全覆盖,刷题指南点这里 单核CPU任务调度 知识点队列优先级队列 时间限制:1s 空间限制:256MB 限定语言:不限 题目描述: 现在有一个CPU和一些任务需要处理,已提前获知每个任务的任务ID、优先级、所需执行时间和到达时间。 CPU同时只…...
News乐鑫科技亮相德国嵌入式展 Embedded World 2023!
3 月 14 日,德国纽伦堡嵌入式展 Embedded World 2023 火热启幕。本届 Embedded World 主题为 “embedded. responsible. sustainable”,乐鑫科技 (688018.SH) 携众多 AIoT 科技成果亮相展会,致力于打造更智能、更互联、更绿色的物联网未来。…...
java如何创建线程
java如何创建线程1. java如何创建线程1.1 通过继承Thread类来创建线程1.2 通过实现Runnable接口来创建线程1.3 通过匿名内部类来创建线程1.4 lambda表达式1.5 通过实现Runnable接口的方式创建线程目标类的优缺点1. java如何创建线程 一个线程在Java中使用一个Thread实例来描述…...
要是早看到这篇文章,你起码少走3年弯路,20年老程序员的忠告
文章目录前言一、程序员的薪资是怎么样的?二、我现在的情况适合做程序员吗?三、大学期间到底应该学些什么?四、工作还是考研?五、总结前言 我是龙叔,一名工作了20多年的退休老程序员。 如果你在工作之前看到这篇文章…...
IP地址的分类
1. 前言 最初设计互联网络时,为了便于寻址以及层次化构造网络,每个IP地址包括两个标识码(ID),即网络ID和主机ID。 同一个物理网络上的所有主机都使用同一个网络ID,网络上的一个主机(包括网络上工…...
win10下使用docker运行部署nginx,mysql
一、docker的步骤:1.进入docker官网下载安装包2.打开控制面板 - 程序和功能 - 启用或关闭Windows功能,勾选Hyper-V,然后点击确定即可,如图:3.重新启动电脑4.启动Docker在桌面找到Docker for Windows快捷方式࿰…...
sprinboot车辆充电桩
sprinboot车辆充电桩演示录像2022开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7(一定要5.7版本) 数据库工具:Navicat11 开发软件:ecli…...
仿京东放大镜效果的实现
仿京东放大镜 (1) 整个案例可以分为三个功能模块 (2) 鼠标经过小图片盒子, 黄色的遮挡层 和 大图片盒子显示,离开隐藏2个盒子功能 (3)黄色的遮挡层跟随鼠标功能。 (4&…...
ESP32设备驱动-LM35温度传感器驱动
LM35温度传感器驱动 文章目录 LM35温度传感器驱动1、LM35介绍2、硬件准备3、软件准备4、驱动实现1、LM35介绍 LM35 系列是精密集成电路温度传感器,其输出电压与摄氏(摄氏度)温度成线性比例。 因此,LM35 优于以开尔文校准的线性温度传感器,因为用户无需从其输出中减去较大…...
基于深度学习的犬种识别软件(YOLOv5清新界面版,Python代码)
摘要:基于深度学习的犬种识别软件用于识别常见多个犬品种,基于YOLOv5算法检测犬种,并通过界面显示记录和管理,智能辅助人们辨别犬种。本文详细介绍博主自主开发的犬种检测系统,在介绍算法原理的同时,给出Py…...
【IDEA插件开发】环境搭建
基础信息 GRADLE 7.5.1 IDEA IntelliJ IDEA 2020.1.1 (Ultimate Edition) Build #IU-201.7223.91, built on April 30, 2020 Licensed to https://zhile.io You have a perpetual fallback license for this version Subscription is active until July 8, 2089 Runtime ve…...
【蓝桥杯专题】 DP(C++ | 洛谷 | acwing | 蓝桥)
菜狗现在才开始备战蓝桥杯QAQ 文章目录【蓝桥杯专题】 DP(C | 洛谷 | acwing | 蓝桥)AcWing 1205. 买不到的数目Acwing 1216. 饮料换购【模拟】01背包271. 杨老师的照相排列最长公共上升子序列PPPPPPPP总结【蓝桥杯专题】 DP(C | 洛谷 | acwi…...
咪咕MGV3201_ZG_GK国科6323_UWE5621DS_免拆卡刷固件包
咪咕MGV3201_ZG_GK国科6323_UWE5621DS_免拆卡刷固件包 特点: 1、适用于对应型号的电视盒子刷机; 2、开放原厂固件屏蔽的市场安装和u盘安装apk; 3、修改dns,三网通用; 4、大量精简内置的没用的软件,运行…...
重构数据-Change Value to Reference将实值对象改为引用对象三
重构数据-Change Value to Reference将实值对象改为引用对象三 1.将实值对象改为引用对象 1.1.实值对象和引用对象区别 下面通过客户Customer和订单Order两个对象介绍下它们的区别 值对象:当一个客户Customer下了多个订单Order后,每个订单类都将创建一…...
计算机网络——通信专业面试问题学习笔记
文章目录1、计算机网络这门课学了什么?目录里有多少章?2、Internet的概念与发展史3、什么是交换?三种交换方式4、OSI的七层协议, TCP/IP的四层协议, 五层协议5、WAN 、LAN 、MAN、PAN这些能分的清楚吗?全称分别都是什么࿱…...
代码随想录算法训练营第三十天 | 332.重新安排行程 51. N皇后 37. 解数独 总结
打卡第30天,回溯算法第二刷。 今日任务 332.重新安排行程51.N皇后37.解数独总结 332.重新安排行程 给你一份航线列表 tickets ,其中 tickets[i] [fromi, toi] 表示飞机出发和降落的机场地点。请你对该行程进行重新规划排序。 所有这些机票都属于一个从…...
Windows权限提升—MySQL数据库提权
Windows权限提升—MySQL数据库提权1. 前言2. 数据库提权介绍2.1. 常见数据库端口2.2. MySQL数据库提权条件2.3. MySQL数据库提权类型3. MySQL中UDF提权3.1. UDF提权介绍3.2. UDF提权思路3.3. UDF提权步骤3.3.1. 获取外连数据库3.3.1.1. 外连数据库3.3.1.2. 连接数据库3.3.1.3. …...
使用旧电脑玩Linux
今天给大家讲讲使用旧电脑玩Linux,大家应该都知道旧电脑的硬件一般比较落后,特别是一些非常老的电脑,目前还在使用的是机械硬盘,如是要跑windows可想而知,但是Linux系统对硬件性能的要求可比windows低的多了࿰…...
Linux安装EMQX(简洁版)
安装目录 mkdir /opt/emqx && cd /opt/emqx 安装包下载 yum -y install wget && wget https://www.emqx.com/zh/downloads/broker/5.0.20/emqx-5.0.20-el7-amd64.tar.gz 注意:https://www.emqx.com/zh/downloads/broker获取下载链接并替换(后缀&…...
简易版抽奖活动的设计技术方案
1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...
多场景 OkHttpClient 管理器 - Android 网络通信解决方案
下面是一个完整的 Android 实现,展示如何创建和管理多个 OkHttpClient 实例,分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...
系统设计 --- MongoDB亿级数据查询优化策略
系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log,共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题,不能使用ELK只能使用…...
Mac软件卸载指南,简单易懂!
刚和Adobe分手,它却总在Library里给你写"回忆录"?卸载的Final Cut Pro像电子幽灵般阴魂不散?总是会有残留文件,别慌!这份Mac软件卸载指南,将用最硬核的方式教你"数字分手术"࿰…...
VTK如何让部分单位不可见
最近遇到一个需求,需要让一个vtkDataSet中的部分单元不可见,查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行,是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示,主要是最后一个参数,透明度…...
PL0语法,分析器实现!
简介 PL/0 是一种简单的编程语言,通常用于教学编译原理。它的语法结构清晰,功能包括常量定义、变量声明、过程(子程序)定义以及基本的控制结构(如条件语句和循环语句)。 PL/0 语法规范 PL/0 是一种教学用的小型编程语言,由 Niklaus Wirth 设计,用于展示编译原理的核…...
站群服务器的应用场景都有哪些?
站群服务器主要是为了多个网站的托管和管理所设计的,可以通过集中管理和高效资源的分配,来支持多个独立的网站同时运行,让每一个网站都可以分配到独立的IP地址,避免出现IP关联的风险,用户还可以通过控制面板进行管理功…...
MFE(微前端) Module Federation:Webpack.config.js文件中每个属性的含义解释
以Module Federation 插件详为例,Webpack.config.js它可能的配置和含义如下: 前言 Module Federation 的Webpack.config.js核心配置包括: name filename(定义应用标识) remotes(引用远程模块࿰…...
嵌入式学习之系统编程(九)OSI模型、TCP/IP模型、UDP协议网络相关编程(6.3)
目录 一、网络编程--OSI模型 二、网络编程--TCP/IP模型 三、网络接口 四、UDP网络相关编程及主要函数 编辑编辑 UDP的特征 socke函数 bind函数 recvfrom函数(接收函数) sendto函数(发送函数) 五、网络编程之 UDP 用…...
react菜单,动态绑定点击事件,菜单分离出去单独的js文件,Ant框架
1、菜单文件treeTop.js // 顶部菜单 import { AppstoreOutlined, SettingOutlined } from ant-design/icons; // 定义菜单项数据 const treeTop [{label: Docker管理,key: 1,icon: <AppstoreOutlined />,url:"/docker/index"},{label: 权限管理,key: 2,icon:…...
