03-Linux权限

root用户

root用户(超级管理员)

无论是Windows、MacOS、Linux均采用多用的管理模式进行权限管理

  • 在Linux系统中,拥有最大权限的账户名为:root(超级管理员)
  • 刚开始学习的时候,大多时间都是用的普通用户模式下进行操作的

image-20240127110805964

root用户拥有最大的系统操作权限,而普通用户在许多地方的权限是受限的

  • 使用普通用户在根目录下创建文件夹

    image-20240127111133007

  • 切换到root用户后,继续尝试

    image-20240127111559139

  • 普通用户的权限一般在home目录下是不受限制的

  • 一旦出了home目录,普通用户只有只读和执行的权限,无权修改

suexit命令

su命令就是用于账户切换的系统命令

来源于英文单词:Switch User

语法

su [-] [用户名]
  • -符号是可选的,表示切换用户后是否加载环境变量,建议加上
  • 参数:用户名,表示要切换的用户,当用户名省略时切换到root
  • exitCtrl+d都可以回退上一个用户
  • 使用普通用户,切换到其他用户需要输入密码,如切换到root用户
  • 使用root用户切换到其他用户,无需密码,可以直接切换

sudo命令

使用su命令切换到root的最大权限,但是不建议长期使用root用户,避免带来系统损坏

可以使用sudo命令,为普通用户的命令授权,临时以root身份运行

sudo 其他命令
  • 在其他命令前加上sudo,即可为这一条命令临时赋予root授权
  • 但不是所有用户,都有权使用sudo需要为普通用户配置sudo认证

为普通用户配置sudo认证

  • 切换到root用户,执行visudo命令,会自动通过vi编辑器打开:/etc/sudoers

  • 在文件的最后添加:

    用户名 ALL=(ALL)	NOPASSWD:ALL
    
    • NOPASSWD:ALL表示使用sudo命令,无需输入密码

    image-20240127115156716

  • 最后:wq保存

  • 切换到普通用户

    image-20240127115339960

  • 执行的命令,均以root运行

用户、用户组管理

用户、用户组

Linux系统中可以

  • 配置多个用户
  • 配置多个用户组
  • 用户可以加入多个用户组中

image-20240127140528098

Linux中关于权限的管控级别有2个级别,分别是:

  • 针对用户的权限控制
  • 针对用户组的权限控制

比如,针对某个文件,可以控制用户的权限,也可以控制用户组的权限

用户组管理

以下命令需root用户执行

  • 创建用户组
groupadd 用户组名
  • 删除用户组
groupdel 用户组名

创建一个itcast用户组:groupadd itcast

image-20240127155053658

用户管理

以下命令需root用户执行

  • 创建用户

    useradd [-g -d] 用户名
    
    • 选项:-g指定用户的组,若不指定-g,则会创建同名组并自动加入,指定-g需要组已经存在,如果已经存在同名组,必须使用-g

    • 选项:-d指定用户home路径,若不指定,则home目录默认在:/home/用户名

  • 删除组

    userdel [-r] 用户名
    
    • 选项:-r,删除用户的home目录,若不使用-r,删除用户时,home目录保留
  • 查看用户所属组

    id [用户名]
    
    • 参数:用户名,被查看的用户,如果不提供则查看自身
  • 修改用户所属组

    usermod -aG 用户组 用户名
    
    • 将指定用户加入指定用户组

image-20240127160119805

getent

getent命令可以查看当前系统中有哪些用户

语法

getent passwd

image-20240127160447488

共有7分信息,分别是:

bowen:x:1001:1001::/home/bowen:/bin/bash
#用户名:密码(x):用户ID:组ID:描述信息(无用):home目录:执行终端(默认bash)

getent命令,查看当前系统中有哪些用户组

语法

getent group

包含3份信息

jiaqi:x:1000:jiaqi
itcast:x:1001:jiaqi
#组名称:组认证(显示为x):组ID

image-20240127161323856

查看权限控制

认知权限信息

通过ls -l /可以以列表形式查看内容,并显示权限细节

image-20240127171415594

  • 序号1,表示文件、文件夹的权限控制信息
  • 序号2,表示文件、文件夹所属用户
  • 序号3,表示文件、文件夹所属用户组

解析一下序号1,权限细节

权限细节总共分为10个槽位

image-20240127172016480

举例:drwxr-xr-x,表示:

  • 首字母d表示这是一个文件夹
  • 所属用户权限有:r、w、x(可读、可写、可执行)
  • 所属用户组权限有:r、x(可读、可执行)
  • 其他用户权限有:r、x(可读、可执行)

rwx

  • r读权限
  • w写权限
  • x执行权限

针对文件、文件夹的不同

  • r,针对文件可以查看文件内容
    • 针对文件夹,可以查看文件夹内容,例如ls命令
  • w,针对文件表示可以修改此文件
    • 针对文件夹,可以在文件夹内:创建、删除、改名等操作
  • x,针对文件表示可以将文件作为程序执行
    • 针对文件夹,表示可以更改工作目录到此文件夹,即cd进入

修改权限控制-chmod

chmod命令

使用chmod命令,修改文件、文件夹的权限信息

注意:只有文件、文件夹的所属用户或root用户可以修改

语法

chmod [-R] 权限 文件或文件夹
  • 选项:-R,对文件夹内部的全部内容应用同样的操作

示例

#将hello.txt文件权限修改为:rwxr-x--x
chmod u=rwx,g=rx,o=x hello.txt
  • 其中:u表示user所属用户权限,g表示group组权限,o表示other其他用户权限
#将文件夹test以及文件夹内的全部内容的权限设置为:rwxr-x--x
chmod -R u=rwx,g=rx,o=x test

image-20240128144736926

权限的数字序号

权限可以用3位数字来代表,第一位数字表示用户权限,第二位表示用户组权限,第三位表示其他用户权限。

数字的细节如下:r记为4,w记为2,x记为1,可以有:

  • 0:无任何权限,即---
  • 1:仅有x权限,即--x
  • 2:仅有w权限,即-w-
  • 3:有wx权限,即-wx
  • 4:仅有r权限,即r--
  • 5:有rx权限,即r-x
  • 6:有rw权限,即rw-
  • 7:有全部权限,即rwx

所以751表示:rwx(7)r-x(5)--x(1)

image-20240128150721834

修改权限控制-chown

chown命令

使用chown命令,可以修改文件、文件夹的所属用户和用户组

普通用户无法修改所属为其他用户或组,所以此命令只适用于root用户执行

语法

chown [-R] [用户][:][用户组] 文件或文件夹
  • 选项,-R,同chmod,对文件夹内全部内容应用相同规则
  • 选项,用户,修改所属用户
  • 选项,用户组,修改所属用户组
  • :,用于分隔用户和用户组

示例

  • 将hello.txt所属用户改为root
chown root hello.txt
  • 将hello.txt所属用户组修改为root
chown :root hello.txt
  • 将hello.txt所属用户改为root,所属用户组改为jiaqi
chown root:jiaqi hello.txt
  • 将文件夹test的所属用户修改为root并对文件夹内容应用相同规则
chown -R root test

image-20240128152712985

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

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

相关文章

曲线生成 | 图解B样条曲线生成原理(附ROS C++/Python/Matlab仿真)

目录 0 专栏介绍1 控制点计算之插值2 控制点计算之近似3 仿真实现3.1 ROS C实现3.2 Python实现3.3 Matlab实现 0 专栏介绍 🔥附C/Python/Matlab全套代码🔥课程设计、毕业设计、创新竞赛必备!详细介绍全局规划(图搜索、采样法、智能算法等)&a…

用于模拟颗粒流的直接强迫浸没边界法 An immersed boundary method with direct forcing 笔记

原文:Uhlmann, Markus. “An immersed boundary method with direct forcing for the simulation of particulate flows.” Journal of computational physics 209.2 (2005): 448-476. 目录 概述引言问题表述固体对流体的作用欧拉和拉格朗日变量的空间离散体积力的表…

【Leetcode】235. 二叉搜索树的最近公共祖先

文章目录 题目思路代码结果 题目 题目链接 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度…

Python爬虫-爬取B站番剧封面

本文是本人最近学习Python爬虫所做的小练习。如有侵权,请联系删除。 页面获取url 代码 import requests import os import re# 创建文件夹 path os.getcwd() /images if not os.path.exists(path):os.mkdir(path)# 当前页数 page 1 # 总页数 total_page 2# 自动…

基于ELFBoard开发板的车牌识别系统

本项目采用的是ElfBoard ELF1开发板作为项目的核心板,主要实现的功能为通过USB 摄像头对车牌进行识别,如果识别成功则会亮绿灯,并将识别的车牌号上传到手机APP上面,车牌识别的实现是通过百度OCR进行实现,手机APP是用Ja…

五种多目标优化算法(MOCS、MOFA、NSWOA、MOAHA、MOPSO)性能对比(提供MATLAB代码)

一、5种多目标优化算法简介 多目标优化算法是用于解决具有多个目标函数的优化问题的一类算法。其求解流程通常包括以下几个步骤: 1. 定义问题:首先需要明确问题的目标函数和约束条件。多目标优化问题通常涉及多个目标函数,这些目标函数可能…

Linux基础命令—系统服务

基础知识 centos系统的开机流程 1)通电 2)BIOS硬件检查 3)MBR引导记录 mbr的引导程序 加载引导程序 让硬件加载操作系统内核 MBR在第一个磁盘第一个扇区 总大小512字节 mbr: 1.引导程序: 占用446字节用于引导硬件,加载引导程序 2.分区表: 总共占…

数学建模【插值与拟合】

一、插值与拟合简介 在数学建模过程中,通常要处理由试验、测量得到的大量数据或一些过于复杂而不便于计算的函数表达式,针对此情况,很自然的想法就是,构造一个简单的函数作为要考察数据或复杂函数的近似。插值和拟合就可以解决这…

GitHub上的GCN

在GitHub上下载GCN代码,可以跑通 https://github.com/tkipf/pygcn

【精简版】Ubuntu/Linux Anaconda 命令行终端安装

网上重复内容很多,大都啰里啰嗦,特作此笔记。 【精简版】Ubuntu/Linux Anaconda 命令行安装 1 下载安装包1.1 寻找适配版本安装包1.2 下载 2 运行安装程序3 设置安装路径4 添加环境变量并运行4.1 环境变量4.2 运行 5 验证安装成功感谢及参考博文 1 下载…

【设计模式】5种创建型模式详解

创建型模式提供创建对象的机制,能够提升已有代码的灵活性和复用性。 常用的有:单例模式、工厂模式(工厂方法和抽象工厂)、建造者模式。不常用的有:原型模式。一、单例模式 1.1 单例模式介绍 1 ) 定义 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一,此模…

自定义搭建管理系统

最近使用自己搭建的脚手架写了一个简易管理系统,使用webpackreactantd,搭建脚手架参考: 使用Webpack5搭建项目(react篇)_babel-preset-react-app-CSDN博客 搭建的思路: 1. 基建布局,使用antd的…

Spring ReflectionUtils 反射工具介绍和使用

一、ReflectionUtils 在 Java 中,反射(Reflection)是一种强大的机制,允许程序在运行时动态地检查类、获取类的信息、调用类的方法、访问或修改类的属性等。Java 的反射机制提供了一组类和接口,位于 java.lang.reflect…

光伏预测 | Matlab基于CNN-SE-Attention-ITCN的多特征变量光伏预测

光伏预测 | Matlab基于CNN-SE-Attention-ITCN的多特征变量光伏预测 目录 光伏预测 | Matlab基于CNN-SE-Attention-ITCN的多特征变量光伏预测预测效果基本描述模型简介程序设计参考资料 预测效果 基本描述 Matlab基于CNN-SE-Attention-ITCN的多特征变量光伏预测 运行环境: Matla…

轻量级模型,重量级性能,TinyLlama、LiteLlama小模型火起来了,针对特定领域较小的语言模型是否与较大的模型同样有效?

轻量级模型,重量级性能,TinyLlama、LiteLlama小模型火起来了,针对特定领域较小的语言模型是否与较大的模型同样有效? 当大家都在研究大模型(LLM)参数规模达到百亿甚至千亿级别的同时,小巧且兼具高性能的小…

多目标追踪概述

1. 目标跟踪分类 单目标跟踪:在视频的初始帧画面上框出单个目标,预测后续帧中该目标的大小与位置多目标跟踪:追踪多个目标的大小和位置,且每一帧中目标的数量和位置都可能变化 2. 多目标跟踪目前的主要问题 形态变化&#xff1a…

Android 获取USB相机支持的分辨率有多少

直接上代码 private fun getCamera() {// 获取系统相机服务val cameraManager requireContext().getSystemService(Context.CAMERA_SERVICE) as? CameraManagerif (cameraManager ! null) {// 在这里进行相机管理器的操作// 获取相机设备的 ID(这里假设使用第一个相…

小封装高稳定性振荡器新系列(2.0 x 1.6 mm) 用于光学应用

小封装高稳定性振荡器新系列(2.0 x 1.6 mm) 用于光学应用,兼容OIF标准 Sg2016egn / sg2016vgn, sg2016ehn / sg2016vhn 来自光模块市场的需求爱普生提供SG2016系列解决方案SG2016系列:高稳定性,低抖动晶体振荡器规格尺寸,框图,引…

Java零基础 - 关键字 instanceof

哈喽,各位小伙伴们,你们好呀,我是喵手。 今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一个人虽可以走的更快,但一群人可以走的更远。 我是一名后…

无限创意之旅:深度挖掘Sora AI视频模型的可能性【文章底部添加可得内推码汇总表】

目录 引言 第一部分:Sora AI视频模型的特性 第二部分:Sora在创意领域的应用 第三部分:Sora对影视产业的影响 【文章底部添加可得内推码汇总表】 引言 21世纪,随着AI人工智能的迅猛发展,AI视频模型正成为数字创意领…