【Linux】权限的管理和Linux上的一些工具

CSDN 2024-07-19 08:37:01 阅读 66

文章目录

权限管理chgrpchownumaskfile指令sudo指令

目录权限粘滞位Linux中的工具1.软件包管理器yum2.rzsz

Linux开发工具vim

总结

在这里插入图片描述

权限管理

chgrp

功能:修改文件目录的所属组

格式:chgrp [参数] 用户组名 文件名

常用选项:-R 递归修改文件或目录的所属组

示例:

在这里插入图片描述

可以看见上面的new目录的所属组原本是root,但是用chgrp修改之后就变为了指定修改后的用户。

chown

功能:修改文件的拥有者

格式:chown [参数] 用户名 文件名

示例:

在这里插入图片描述

可以看见:原本所有者是root,修改之后所有者就变成了newuser了。

umask

功能:

查看或修改文件掩码

新建文件夹默认权限=0666

新建目录默认权限=0777

但实际上你所创建的文件和目录,看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到umask的影响。假设默认权限是mask,则实际创建的出来的文件权限是: mask & ~umask

格式:umask 权限值

说明:将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限。超级用户默认掩码值为0022,普通用户默认为0002。

示例:

可以看见,超级用户的umask是0022。

在这里插入图片描述

file指令

功能说明:辨识文件类型。

语法:file [选项] 文件或目录

常用选项

-c 详细显示指令执行过程,便于排错或分析程序执行的情形。

-z 尝试去解读压缩文件的内容.

示例:

在这里插入图片描述

sudo指令

sudo可以对普通用户进行提权。

目录权限

可执行权限: 如果目录没有可执行权限, 则无法cd到目录中.可读权限: 如果目录没有可读权限, 则无法用ls等命令查看目录中的文件内容.可写权限: 如果目录没有可写权限, 则无法在目录中创建文件, 也无法在目录中删除文件.

示例:

可以看见,当目录没有r权限的时候,我们可以进入目录,但是没有权限查看目录中的文件。

在这里插入图片描述

可以看见,没有w权限我们可以查看该文件下的文件,但是没有权限进行创建文件或者目录

在这里插入图片描述

可以看见,没有x权限,我们没有权利进入这个目录下。

在这里插入图片描述

粘滞位

粘滞位(Sticky Bit)是一种文件权限位,通常用于目录。它的作用是限制对目录中文件的删除和重命名操作。具体来说,当一个目录设置了粘滞位时,只有文件的所有者、目录的所有者或超级用户(root)才有权删除或重命名该目录中的文件,即使该目录对其他用户是可写的。

当一个目录被设置为"粘滞位"(用chmod +t),则该目录下的文件只能由

一、超级管理员删除

二、该目录的所有者删除

三、该文件的所有者删除

如何设置粘滞位?

在这里插入图片描述

这里有一个叫做shared-file的文件,设置粘滞位:

在这里插入图片描述

可以看见,other后面的x权限变成了t,就证明这个目录的粘滞位已经设置好了。

Linux中的工具

1.软件包管理器yum

什么是软件包

在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序.但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安

装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装.软件包和软件包管理器, 就好比 “App” 和 “应用商店” 这样的关系.yum(Yellow dog Updater, Modified)是Linux下非常常用的一种包管理器. 主要应用在Fedora, RedHat,

Centos等发行版上.

yum的用法:

yum list | grep lrzszyum remove

第一个可以用来查看软件,就类似于你手机上的应用商店一样,你可以查看你想查看的软件包。

第二个可以用来删除软件。

2.rzsz

rzsz是用于Windows和Linux上传输文件的。

**rz指令 **

在这里插入图片描述

可以看见,当我们输入rz之后就弹出一个Windows窗口,让我们选择文件进行传送。

sz指令

在这里插入图片描述

这里我们随便压缩一个文件,然后进行Windows和Linux的传输。

在这里插入图片描述

可以看见,传输完成之后Windows桌面上多了一个.zip的文件

Linux开发工具

vim

如果Linux上没有vim可以用下面指令先把vim装好。

yum install -y vim

装好vim之后就可以用vim打开一个文件来编写代码。

但是注意:vim只是一个单纯的代码编辑器,并不是我Windows系统中vs2022一样。vs2022是集成开发环境,调试运行编写全在一个软件上集成了,但是vim不一样,vim上面只负责编写代码,不负责其他任何事情。

进去之后是这样:

在这里插入图片描述

这是vim的默认模式,vim的默认模式是命令模式。

首先我们来讲讲最常见的三种模式:命令模式、插入模式,底行模式

正常/普通/命令模式(Normal mode)

控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode

插入模式(Insert mode)

只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁

的编辑模式。

末行模式(last line mode)

文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift+: 即可进入该模

式。要查看你的所有模式:打开vim,底行模式直接输入

三种模式的转换:

在这里插入图片描述

首先我们转换为命令插入模式:

在这里插入图片描述

先写好一个hello world

如何保存退出呢?

我们只需要进入底行模式:

进入底行模式shift+;,然后输入wq就可以退出vim

在这里插入图片描述

可以看见我们刚刚写的代码还在。

接下来我们来讲讲命令模式的具体命令:

删除:

「x」:每按一次,删除光标所在位置的一个字符

「#x」:例如,「6x」表示删除光标所在位置的“后面(包含自己在内)”6个字符

「X」:大写的X,每按一次,删除光标所在位置的“前面”一个字符

「#X」:例如,「20X」表示删除光标所在位置的“前面”20个字符

「dd」:删除光标所在行

「#dd」:从光标所在行开始删除#行

移动光标:

vim可以直接用键盘上的光标来上下左右移动,但正规的vim是用小写英文字母「h」、「j」、「k」、

「l」,分别控制光标左、下、上、右移一格

按「G」:移动到文章的最后

按「 $ 」:移动到光标所在行的“行尾”

按「^」:移动到光标所在行的“行首”

按「w」:光标跳到下个字的开头

按「e」:光标跳到下个字的字尾

按「b」:光标回到上个字的开头

按「#l」:光标移到该行的第#个位置,如:5l,56l

按[gg]:进入到文本开始

按[shift+g]:进入文本末端

按「ctrl」+「b」:屏幕往“后”移动一页

按「ctrl」+「f」:屏幕往“前”移动一页

按「ctrl」+「u」:屏幕往“后”移动半页

按「ctrl」+「d」:屏幕往“前”移动半页

复制:

「yw」:将光标所在之处到字尾的字符复制到缓冲区中。

「#yw」:复制#个字到缓冲区

「yy」:复制光标所在行到缓冲区。

「#yy」:例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字。

「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与“y”有关的复制命令都必须与“p”配合才能完

成复制与粘贴功能。

总结

通过本篇博客,我们详细探讨了Linux系统中权限管理的基本概念和常用命令。从文件权限的表示方法到如何使用chmod、chown、chgrp等命令对权限进行管理,我们逐一进行了讲解。掌握这些基本操作不仅有助于提高系统安全性,也能更高效地管理文件和用户。Linux作为一个强大而灵活的操作系统,其权限管理机制为我们提供了丰富的控制手段。希望通过这篇文章,读者能够更好地理解和应用这些工具,为自己的Linux使用之旅增添助力。



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。