【测试开发学习历程】Linux用户管理+文件权限管理

目录

一、用户管理

(一)用户和用户组的基本概念

1.概念

2.设置原因

3.用户与用户组的关系

4.用户类型

(二)用户的创建、修改属性和删除用户

1.用户信息文件

2.创建用户

3.修改用户密码

4.修改用户信息

5.用户查询

6.用户删除

(三)用户之间的切换

(四)用户组的创建和删除

​​​​​​​二、文件权限管理

(一)Linux的文件访问权限和访问者种类

(二)修改Linux文件的访问权限

(三)修改Linux文件所属用户和用户组

1.chown命令

​​​​​​​2.chgrp命令


一、用户管理

(一)用户和用户组的基本概念

1.概念

Linux是一个多用户的操作系统

任何一个要使用系统资源的用户,必须登录进入系统

Linux用户属于一个或多个特定的组,称为用户组,即group

2.设置原因

  • 资源访问控制
    • 文件(泛义上的文件)
  • 所有文件都属于一个特定的用户,和一个特定的用户组
  • 每个文件都有一定的访问权限,用户限制不同用户和用户组的访问行为

3.用户与用户组的关系

Linux系统以组Group方式管理用户,用户和组的对应关系为多对多,即某个用户可属于一个或多个组,某个组可以有0个、1个或多个用户。

组的分类:从用户的角度,分为主组和附属组

  • 主组:也被称为primary group、first group或initial login group,用户的默认组,用户的gid所标识的组
  • 附属组:也被称为Secondary group或supplementary group,用户的附加组
  • 用户必须有且只能有一个主组,就可以有0个、1个或多个附属组,如我们一定会有一个用来安家的房子(类同主组),还可以有n个用于投资或其他打算的房子(附属组)

4.用户类型

  • root用户
    • 超级管理员用户,具有操作系统的最大权限
  • 普通用户
    • 由超级用户创建及授权,并且可以登录到Linux系统执行某些任务
  • 系统用户
    • 系统内创建了若干用户,如mail、ftp、bin等,默认情况下,系统用户都是无法登录的

(二)用户的创建、修改属性和删除用户

1.用户信息文件

Linux的/etc/passwd文件是用来记录用户的所有信息

  • 1-用户名:长度在1到32个字符之间
  • 2-密码:x加密密码存在/etc/shadow
  • 3-用户ID(UID):root用户的ID是0
  • 4-用户主组ID(GID):用户的主组ID,root组的ID是0
  • 5-用户ID说明
  • 6-用户家目录
  • 7-用户默认的shell

2.创建用户

命令:useradd

格式:useradd 用户名

root用户使用useradd命令创建用户,比如:useradd jim

参数:

  • -d:指明用户家目录,若该目录不存在则创建目录
  • -g:指明用户所属组,该用户组必须存在

该命令完成的事情:

  • 在/etc/passwd文件中增加一行数据,表示该用户的信息。
  • 为该用户创建用户组,将该用户标识符加在/etc/group文件中,如果有-g选项,则不创建用户组,而是将该用户加入指定组中。
  • 为该用户创建一个家目录(home directory),将家目录的拥有者改为该用户所有。

3.修改用户密码

命令:passwd 用户名

root用户使用下列命令为用户jim设置密码

[root@localhost ~]# passwd jim

Changing password for user jim.

New password:

Retype new password:

passwd: all authentication tokens updated successfully.

  • 创建了用户之后,其密码是随机的
  • 用户可以修改自己的密码(需要输入当前密码)
  • 只有root用户可以修改其他用户密码

4.修改用户信息

命令:usermod

修改用户所属的组举例:

  • groups jim  //查看jim用户所属的组
  • usermod -g root jim  //修改用户jim的主组为root
  • usermod -a -G g4 jim  //增加用户jim的附属组g4
  • usermod -G g2,g3 jim  //修改用户jim的附属组为g2、g3
  • usermod -L jim  //锁定jim用户,锁定后该用户不能再登录
  • usermod -U jim  //解锁jim用户,解锁后该用户可以再登录

5.用户查询

用户可以使用下列指令查询用户相关信息

  • who:查询当前在线的用户,只能查询在登录页面输入了用户名密码登录的用户,通过su命令切换的用户无法查询到
  • whoami:用户身份查询,当前所在的用户
  • groups:查询用户所属的组
    • [root@localhost ~]# groups jack
    • jack : user05 user03 user04
  • id:显示当前用户信息
    • [root@localhost ~]# id
    • uid=0(root) gid=0(root) groups=0(root)

6.用户删除

命令:userdel

格式:userdel 用户名

如果加参数-r,表示在删除用户的同时,一并把用户的家目录及本地邮件存储的目录或文件也一同删除

例子

  • userdel jim           //删除用户jim,但不删除其家目录及文件
  • userdel -r jack      //删除用户jack,其家目录及文件一并删除

(三)用户之间的切换

命令:su

例如:

  • 切换到用户jim:su - jim 或 su jim
  • 切换到root用户:su -  或 su

有没有“-”的区别:

有“-”会重新初始化环境,比如全新用户home目录,新的环境变量

举例:

[root@localhost ~]# su - jack

[jack@localhost ~]$ pwd

/home/jack

[root@localhost ~]# su jack

[jack@localhost root]$ pwd

/root

(四)用户组的创建和删除

用户组命令:

Linux系统中,每个用户账号至少属于一个组,每个组可以包括多个用户

管理组的常用命令有如下:

  • groupadd:创建组
  • groupdel:删除组
  • usermod:修改用户所属组

只有root用户可以操作

root用户创建用户组sales

  • groupadd sales

root用户删除用户组sales

  • groupdel sales

如果有用户属于这个组    --primary组不能删除。

创建用户的时候指定用户组:

root用户创建用户sa01,sa02用户,并把它们添加到sales组里

  • useradd -g sales sa01
  • useradd -g sales sa02

​​​​​​​二、文件权限管理

(一)Linux的文件访问权限和访问者种类

还是从ls -l说起:

文件必须有一个所属用户和一个所属组

不同类型的用户有不同的权限

三种访问权限:可读、可写、可执行。

权限

文件的存取权限

目录的存取权限

r

具有文件的权限

能查看文件夹里面的内容(比如:用ls命令能查看文件夹里的内容)

w

具有文件的权限

能创建和删除文件(比如:在文件夹下面,使用touch命令创建文件)

x

具有行文件的权限

能使用该目录下的文件(如cd命令),能进入该目录

对于一个文件来讲,把所有用户分成三类:

用户类型

说明

owner

文件的所有者(一般来说,谁创建了文件,谁就是所有者)

group

文件所属工作组(一般来说,创建文件的用户所在的工作组(主组))--touch file举例说明

other

其他用户(非owner和非group

(二)修改Linux文件的访问权限

chmod命令

  • 谁可以改变文件访问权限?root和owner
  • 语法:chmod [who][op][permission] filename
  • 例如:chmod u+x file01
    • who项表示用户类型,它的内容为以下一项或多项
      • u                     拥有者(user --owner)
      • g                     与拥有者同一组的用户(group)
      • o                     其他人(other)
      • a                     所有人(all)​​​​​​​​​​​​​​
    • op项表示动作​​​​​​​
      • +                          表示要加上permission指定的权限
      • -                           表示要取消permission指定的权限
    • ​​​​​​​​​​​​​​permission项为存取权限,它的内容为以下一项或多项
      • r                         表示可读
      • w                        表示可写
      • x                         表示可执行

​​​​​​​​​​​​​​chmod命令举例

  • 第一种写法:
    • chmod ug+w file01                     拥有者和同组用户对file01“可写”
    • chmod a-x file02                          所有人对file02不可执行​​​​​​​
    • chmod u+rwx file03                    拥有者对file03“可读、可写、可执行”​​​​​​​​​​​​​​
  • 第二种写法:
    • chmod u=rwx file01                          拥有者对file01“可读可写可执行”
    • chmod u=rwx,g=rx,o=r file02          拥有者对file02“可读可写可执行”,  对同组用户“可读可执行”,对其他  用户“可读”
  • ​​​​​​​第三种写法
    • chmod 755 file01                         
    • 等价于​​​​​​​
    • chmod u=rwx,g=rx,o=rx file01

​​​​​​​​​​​​​​

(三)修改Linux文件所属用户和用户组

1.chown命令

谁可以改变文件的所有者和所属组?

只有root用户,owner都不行

语法:chown [选项]…[所有者]:[所属组] 文件

举例:

  • chown jack file01:把文件file01的所有者改成jack
  • chown jack:jack file02 :把文件file02的所有者改成jack,所属组改成jack
  • chown -R jack dir01:把目录dir01以及下面所有的子目录和文件的所有者改成jack
  • chown -R jack:jack dir02:把目录dir02以及下面所有的子目录和文件的所有者改成jack,所属组改成jack】

​​​​​​​2.chgrp命令

谁可以改变文件的所属组?

root,owner(只能改变到owner所在的组)​​​​​​​

语法:chgrp [选项]…[组] 文件

举例:chgrp jack file01  把file01的所属组改成jack

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Hive面经

hive原理 Hive 内部表和外部表的区别Hive 有索引吗运维如何对 Hive 进行调度ORC、Parquet 等列式存储的优点数据建模用的哪些模型?1. 星型模型2. 雪花模型3. 星座模型 为什么要对数据仓库分层?使用过 Hive 解析 JSON 串吗sort by 和 order by 的区别数据…

Windows®、Linux® 和 UNIX® 系统都适用的远程桌面工具 OpenText ETX

Windows、Linux 和 UNIX 系统都适用的远程桌面工具 OpenText ETX 为 Windows、Linux 和 UNIX 实施精益、经济高效的虚拟化;提供完整的远程 Windows 可用性;以类似本地的性能远程工作;安全地保护系统和知识产权(IP)&am…

PFMEA的输入输出和特殊特性

DFMEA輸入:技术条件、市场需求 DFMEA輸出:产品特殊特性、试验、样件CPPFMEA輸入:过往经验、流程图、DPMEA PFMEA輸出:CP、过程特殊特性、SIP、SOP1. PFMEA的输入包括:()过程流程图、DFMEA 、图样…

ElasticSearch 底层读写原理

ElasticSearch 底层读写原理 ​ 写请求是写入 primary shard,然后同步给所有的 replica shard;读请求可以从 primary shard 或 replica shard 读取,采用的是随机轮询算法。 1、ES写入数据的过程 1.选择任意一个DataNode发送请求&#xff0c…

Linux-gdb调试

文章目录 前言查看(显示)源代码 list/l运行程序run/r打断点b查看断点删除断点打开/关闭断点逐过程 逐语句查看变量常显示continuefinishuntil修改指定变量退出gdb 前言 GDB,即GNU调试器(GNU Debugger),是G…

云仓酒庄最新动态:渠道商小沙龙活动持续开展 业务持续稳健发展

原标题:2024年云仓酒庄小沙龙活动持续开展 业务持续稳健发展 在风起云涌的酒类市场中,云仓酒庄以其独特的经营模式和优质的服务,赢得了广大消费者的青睐。而在这背后,云仓酒庄各地小沙龙活动的频繁开展,无疑为其业务的…

命名空间多线程计时(C++基础)

命名空间 不要在头文件内使用using namespace,一定要确保实在一个足够小的作用域下使用,在哪个范围内,比如函数、if语句等,但一定不要在头文件中使用!!! 上述示例中,会调用orange中…

【位运算】【脑筋急转弯】2749. 得到整数零需要执行的最少操作数

作者推荐 视频算法专题 本文涉及知识点 2749. 得到整数零需要执行的最少操作数 给你两个整数:num1 和 num2 。 在一步操作中,你需要从范围 [0, 60] 中选出一个整数 i ,并从 num1 减去 2i num2 。 请你计算,要想使 num1 等于 …

【Spring云原生系列】SpringBoot+Spring Cloud Stream:消息驱动架构(MDA)解析,实现异步处理与解耦合

🎉🎉欢迎光临,终于等到你啦🎉🎉 🏅我是苏泽,一位对技术充满热情的探索者和分享者。🚀🚀 🌟持续更新的专栏《Spring 狂野之旅:从入门到入魔》 &a…

FreeRTOS学习笔记-基于stm32(5)列表和列表项

一、列表与列表项简介 列表是FreeRTOS中的一种数据结构,类似双向循环链表。用来跟踪FreeRTOS中的任务。列表项就是存放在列表中的项目。 二、列表 列表结构体: typedef struct xLIST {listFIRST_LIST_INTEGRITY_CHECK_VALUE //校验值c…

强化学习工具箱(Matlab)

1、Get Started 1.1、MDP环境下训练强化学习智能体 MDP环境如下图 每个圆圈代表一个状态每个状态都有上或下的选择智能体从状态 1 开始智能体接收的奖励值为图中状态转移的值训练目标是最大化累计奖励 (1)创建 MDP 环境 创建一个具有 8 个状态和 2 …

基于深度学习的番茄叶片病害检测系统(含UI界面、yolov8、Python代码、数据集)

项目介绍 项目中所用到的算法模型和数据集等信息如下: 算法模型:     yolov8 yolov8主要包含以下几种创新:         1. 可以任意更换主干结构,支持几百种网络主干。 数据集:     网上下载的数据集&#x…

03_渲染进程调用node

我们先创建一个文件夹及文件,并且在 html 引入 JS 文件。 在 render.js 里面输入以下内容: let fs require(fs) // let是在当前代码块有效console.log(fs) // 将fs对象的内容打印到控制台供调试和查看 fs 模块:对文件系统进行操作&#xf…

对GIS与游戏引擎(UE4 或 U3D)结合的看法

GIS与游戏引擎结合,这在6年前就已经很多公司在进行探索了,经过这几年的发展,结合当前的政策,从以下几方面说一下我的看法: 1.GIS客户都是特殊单位及领域。2018年后,国内已经对国产化有明确要求了&#xff0…

测试一下 Anthropic 宣称超过 GPT-4 的 Claude 3 Opus

测试一下 Anthropic 宣称超过 GPT-4 的 Claude 3 Opus 0. 引言1. 测试 Claude 3 Opus3. 试用 api key 限制 0. 引言 今天测试一下 Anthropic 发布的 Claude 3 Opus。 3月4日,Anthropic 宣布推出 Claude 3 型号系列,该系列在广泛的认知任务中树立了新的…

Java客户端调用elasticsearch进行深度分页查询 (search_after)

Java客户端调用elasticsearch进行深度分页查询 (search_after) 一. 代码二. 测试结果 前言 这是我在这个网站整理的笔记,有错误的地方请指出,关注我,接下来还会持续更新。 作者:神的孩子都在歌唱 具体的Search_after解…

keepalived原理以及lvs、nginx跟keeplived的运用

keepalived基础 keepalived的原理是根据vrrp协议(主备模式)去设定的 vrrp技术相关原理 状态机; 优先级0~255 心跳线1秒 vrrp工作模式 双主双备模式 VRRP负载分担过程 vrrp安全认证:使用共享密匙 keepalived工具介绍 keepal…

CSS 【详解】响应式布局(明天内容)

响应式布局: 同一页面在不同的屏幕上有不同的布局,即一套代码自适应不同的屏幕。 常用 单位: 像素(px):像素是最常用的长度单位,它表示屏幕上的一个物理像素点。例如,width: 200px; …

如何导入非同一级的py文件里的函数

我正在main_cnn.py里写代码,要到入models文件夹下的resnet50里的CustomResNet50函数。应该怎么导入。 如果 models 文件夹与我们main_cnn.py的主文件不在同一级目录下,而是在上一级目录,你可以这样导入: from ..models.resnet50…

【NR 定位】3GPP NR Positioning 5G定位标准解读(十二)-Multi-RTT定位

前言 3GPP NR Positioning 5G定位标准:3GPP TS 38.305 V18 3GPP 标准网址:Directory Listing /ftp/ 【NR 定位】3GPP NR Positioning 5G定位标准解读(一)-CSDN博客 【NR 定位】3GPP NR Positioning 5G定位标准解读(…