【Linux篇】Linux的用户和权限

news2024/11/15 15:33:14

目录

1. 认识Linux的root用户(超级管理员)

1.1 介绍

1.2 su命令和exit命令

1.3 sudo命令

为普通用户配置sudo认证

2. 用户与用户组

2.1 用户组管理

2.2 用户管理

2.3 getent命令

3. 查看权限控制信息

3.1 认知权限信息

3.2 rwx含义

r:

w:

x:

3.3 chmod修改权限信息

权限的数字符号

3.4 chown命令修改所属用户用户组


1. 认识Linux的root用户(超级管理员)

1.1 介绍

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

在Linux系统中,拥有最大权限的账户名为:root(超级管理员)。

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

比如使用普通用户在根目录下创建文件夹是不允许的。使用su - root命令可以切换到root用户,此时可以进行该mkdir命令。

注意:

  • 普通用户的权限,一般在其HOME目录内是不受限的。
  • 一旦出了HOME目录,大多数地方,普通用户仅有只读和执行权限,无修改权限。

1.2 su命令和exit命令

su命令就是用于账户切换的系统命令,其来源自英文单词:Switch User

语法:su [-] [用户名]

比如:su - root,切换到root用户。

  • -符号是可选的,表示是否在切换用户后加载环境变量,建议带上。
  • 参数:用户名,表示要切换的用户,用户名也可省略,省略表示切换到root目录。
  • 切换目录后,可以通过exit命令退回到上一个用户,也可以使用快捷键:ctrl+d。
  • 使用普通用户切换到其他用户需要登录需要输入密码。
  • 使用root用户切换到其他用户,无需密码,可以直接切换。

1.3 sudo命令

在我们得知root用户密码时,可以通过su命令切换到root用户得到最大权限。但我们不建议长期使用root用户,避免带来系统的损坏。

我们可以使用sudo命令,为普通命令授权,临时以root用户执行。

语法:sudo 其他命令

  • 在其他命令之前,带上sudo,即可为这条命令临时授权赋予root权限。
  • 但并不是所有用户都有权力使用sudo,我们需要为普通用户配置sudo认证。
为普通用户配置sudo认证

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

在文件的最后添加:

用户名 ALL=(ALL)       NOPASSWD: ALL

最后通过:wq保存。

切换回普通用户。

2. 用户与用户组

Linux系统中可以:

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

如图:

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

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

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

2.1 用户组管理

以下命令需要root用户执行:

创建用户组:groupadd 用户组名

删除用户组:groupdel 用户组名

2.2 用户管理

以下命令需要root用户执行:

创建用户:

useradd [-g -d] 用户名

  • 选项:-g指定用户的组,不指定-g,会创建同名组并自动加入;指定-g需要组已经存在,如已存在同名组,必须使用-g。
  • 选项:-d指定用户HOME路径,不指定,HOME路径默认在:/home/用户名

删除用户:

userdel [-r] 用户名

  • 选项:-r,删除用户的HOME目录,不使用-r,删除用户时,HOME将保留。

查看用户所属组:

id [用户名]

  • 参数:用户名,被查看的用户不提供的话,则查看自身。

修改用户的所属组:

usernmod -aG 用户组 用户名

将指定的用户加入到用户组。

2.3 getent命令

getent passwd:查看系统全部用户信息。

getent group:查看系统全部组的信息。

3. 查看权限控制信息

3.1 认知权限信息

通过ll命令可以以列表的形式查看内容,并显示权限细节。

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

解析:

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

  • 第一位表示该是文件,还是文件夹,还是软连接(相当于快捷方式)。
  • 其次三位表示所属用户权限。
  • 再次三位表示所属用户组权限。
  • 最后三位表示其他用户的权限。

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

  • 这是一个文件夹,首字母d表示。
  • 所属用户的权限是有rwx。
  • 所属用户组的成员对其权限是xr-,即有读,执行权限,但无写权限。
  • 其他用户的权限是r-x,与上同。

3.2 rwx含义

那么rwx代表什么呢?

  • r表示读权限。
  • w表示写权限。
  • x表示执行权限。

针对文件,文件夹的不同,rwx的含义有细微差别。

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

3.3 chmod修改权限信息

我们可以使用chmod命令,修改文件,文件夹的权限信息。

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

语法:chmod [-R] 权限 文件/文件夹

  • 选项:-R,对文件夹内的全部内容应用同样的操作。

示例:

chmod u=rwx, g=rx, o=x hello.txt 将文件权限修改为rwxr-x--x

其中,u表示所属用户权限,g表示group组权限,o表示other其他用户的权限。

chmod -R u=rwx, g=rx, o=x test  将文件夹test以及文件夹的所有内容权限

除此之外,还有快捷写法:chmod 751 hello.txt

那么751代表什么意思呢?

权限的数字符号

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

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

所以751表示rwxr-x--x权限。

3.4 chown命令修改所属用户用户组

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

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

语法:chown [-R] [用户] [:] [用户组] 文件或文件夹

  • 选项,-R,将文件夹的全部内容应用相同的规则。
  • 选项,用户,修改所属用户。
  • 选项,用户组,修改所属用户组。
  • :用于分隔用户和用户组。

示例:

chown root hello.txt 将hello.txt所属用户修改为root

chown :root hello.txt 将hello.txt的所属用户组修改为root。

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

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

相关文章

巴恩斯利蕨数学公式及源码实现——JavaScript版

为什么要写这篇文章 本篇接《张侦毅:巴恩斯利蕨数学公式及源码实现》。之前文章中源码的编程语言用的是Java,JDK的版本为8,现在我的JDK版本已经升级到22了,在新版本JDK中,原来的JApplet方法已经被废弃,不能…

云原生之全链路分布式跟踪系统 Zipkin和SkyWalking

贪多嚼不烂 Pinpoint 就不对比了 参考 APM系统简单对比(zipkin,pinpoint和skywalking) springcloud 看云 Zipkin和SkyWalking都是流行的分布式跟踪系统,但它们的设计和实现有明显的不同。 以下是它们之间的一些对比: 数据存储: Zipk…

Linux与Windows的文件与目录操作API汇总整理

文件和目录操作是编程中非常基础且常用的部分,涉及到文件的创建、读写、删除以及目录的创建、删除等功能。下面是文件和目录操作的汇总整理,包括常见的API及其用途: 文件操作 POSIX 系统(如 Linux 和 macOS) 打开文件…

Python二级知识点

在阅读之前,感谢大家的关注和点赞。祝你们都能心想事成、健健康康。 一.数据流程图 一般这道题是经常考的,有向箭头--->表示数据流。圆圈○表示加工处理。 二.字典如何比较大小 字典类型是如何比较大小的呢,是使用字典的键来比较大小&…

Python 使用everything的相关模块,创建极其快速的文件搜索和管理工具

在这篇博客中,我将分享如何使用 Python 的 everytools库构建一个简单的文件搜索和管理工具。这个工具允许用户搜索文件、查看文件路径、导出文件信息到 Excel,以及生成配置文件。 C:\pythoncode\new\everythingtools.py 项目概述 这个工具的主要功能包…

mysql binlog 全量与增量备份

mysql binlog 全量与增量备份 mysql binlog常用操作 https://blog.csdn.net/xyy1028/article/details/124446625 mysqldump mysqlbinlog 增量备份 mysql的增量备份 https://blog.51cto.com/u_16213572/10976496 mysql全量备份与增量备份 — vip https://blog.51cto.com/hehe1…

Java学习_20_File以及IO流

文章目录 前言一、FileFile中常见的成员方法判断和获取创建和删除获取和遍历 二、IO流IO流体系结构字节流字节输出流:FileOutputStream字节输入流FileInputStrea文件拷贝try……catch异常处理中文乱码现象 字符流字符流读取FileReader字符流输出FileWriter底层原理 …

堆《数据结构》

堆《数据结构》 1. 堆排序1.1 建堆向上调整建堆向下调整建堆 1.2 利用堆删除思想来进行排序1.3Top-k问题 2.堆的时间复杂度 1. 堆排序 1.1 建堆 建大堆 建小堆 向上调整建堆 AdjustUp建堆 void AdjustUp(HPDataType* a, int child) {// 初始条件// 中间过程// 结束条件int p…

专利权和版权有什么区别?

专利权和版权有什么区别?

【IEEE】第四届智能通信与计算国际学术会议(ICICC 2024,10月18-20)

第四届智能通信与计算国际学术会议(ICICC 2024)将于2024年10月18-20日在中国郑州隆重举行。 会议旨在为从事智能通信与计算研究的专家学者、工程技术人员、技术研发人员提供一个共享科研成果和前沿技术,了解学术发展趋势,拓宽研究…

帆软报表,达梦数据库驱动上传失败

1、按照正常操作新建数据库连接,上传准备好的达梦驱动时,提示如图一需要修改SystemConfig.driverUpload为true才可以。 2、FineDB存储了数据决策系统中除平台属性配置以外的所有信息。详情请参见: FineDB 数据库简介。 3、因此管理员可通过…

都2024年了,你还在手动敲SQL吗?试试这款开源免费的AI数据库!

​ ✍️作为一名开发人员,基本上每天都要和数据库打交道,无论是设计表结构、执行查询还是调试应用中的数据问题。长期以来,我一直在使用诸如DBeaver、Navicat和DataGrip这样的数据库管理工具。尽管这些工具各有千秋,但在面对复杂的…

python怎么使用模块中的类

Chain.py是模块(Module),在代码里定义的Class Chain是在模块里定义的类。 一种方法是: from Chain import Chain 还有一种方法是: a Chain.Chain() 相当于从模块里索引出这个类,两种方法都可以。

3b1b自注意力机制讲解记录

本文是对视频【官方双语】直观解释注意力机制,Transformer的核心 | 【深度学习第6章】的整理 1 背景 要解决的问题:接收一段文本,预测下一个词 句子会被切成许多小块,这些小块称为token。token可以是单词也可以是词组。为了简单…

SpringBoot百万行Excel导入MySQL实践

在公司开发时,客户说需要支持大数据量excel导入,所以打算写一篇文章记录下思路和优化过程。 一、前期准备 首先我们选用的肯定是阿里出品的EasyExcel,对比poi和jxl占内存更少 easyexcel官方网站准备测试的数据库和excel文件,已经…

Zustand:让React状态管理更简单、更高效

Zustand 这个单词在德语里是状态的意思(发音:促stand) 1. 下载zustand npm i zustand 或者 yarn add zustand2.创建一个store import { create } from zustandconst useBearStore create((set) > ({bears: 0,increasePopulation: …

20240824给飞凌OK3588-C的核心板刷Ubuntu22.04并连接adb

20240824给飞凌OK3588-C的核心板刷Ubuntu22.04并连接adb 2024/8/24 15:56 缘起,由于我司对面积有极度的追求,所以将飞凌OK3588-C开发板使用的【9线】type-C接口(USB3.1?)降级为4线的USB2.0。 【micro USB/MINI USB。】 先决条件…

基于RK3588的多摄像头车辆与车道线检测系统(基于rk3588的车辆和车道线检测,可以带四个720p的摄像头,2个1080p的摄像头)

硬件配置: 处理器:Rockchip RK3588,这是一款高性能的嵌入式处理器,支持多路高清视频输入和处理。摄像头配置: 4个720p(1280x720)分辨率的摄像头2个1080p(1920x1080)分辨…

什么是持续集成(持续交付、部署)

文章目录 1 持续集成1.1 持续集成的好处1.2 持续集成的目的1.3 没有持续集成的状况 2 持续交付3 持续部署4 持续交付和持续部署的区别 1 持续集成 持续集成(Continuous integration,简称CI),简单来说持续集成就是频繁地&#xff…

拓扑排序,以及区间dp相关试题

目录 1.有向无环图(DAG图) 2.AOV网:顶点活动图 3.拓扑排序 4.实现拓扑排序 力扣.207课程表 牛客.最长回文子序列 1.有向无环图(DAG图) 入度:表示有多少条边指向它 出度:有多少条边向外指出他 2.AOV网:顶点活动图 3.拓扑排序 找到做事情的先后顺序 …