Linux——基础指令2 + 权限

news2024/11/28 3:13:51

目录

1.zip/unzip

2.tar

3.bc

4.uname –r 

5.重要的几个热键 

6.扩展命令

7.shell命令以及运行原理 

8.Linux权限的理解

关于权限的三个问题:

1.目录权限

2.缺省权限

3.粘滞位


1.zip/unzip

打包、压缩:使用特定的算法,文件进行合并或者压缩,减少体积。

打包/压缩作为一个整体。

原因:1)文件体积减少,节省资源、磁盘空间,减少网络传输成本

           2)多个文件转一个文件,可以提高文件传输的容错性

语法: zip 压缩文件.zip 目录或文件
功能: 将目录或文件压缩成zip格式
常用选项:
-r 递 归处理,将指定目录下的所有文件和子目录一并处理


举例:

可以得到结果如下:

 

再进行解压操作如下:

 

unzip XX.zip -d 路径   //解压到指定路径中

 那么怎样实现Linux 和 Windows 之间文件的互相传递呢?

1)将Linux中的文件传到Windows中

此时在桌面上(或者你所选择的位置上)就可以看见test.zip文件 

 

其中打开之后就可以看见你在文件中所填的内容

2)将Windows中的文件传到Linux中

可以直接进行拖拽,也可以用 rz 的命令。

2.tar

打包/解包,不打开它,直接看内容

-c :建立一个压缩文件的参数指令(create 的意思);
-x :解开一个压缩文件的参数指令!
-t :查看 tarfile 里面的文件!
-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
-C : 解压到指定目录 

这里我们举例压缩和解压的方法——

1)压缩

tar -czf dst.tgz src

 例如:

2)解压

tar -xzf XXX.tgz

例如:

 

若要展现压缩过程或者是解包压缩过程,只需要在选项中添加 v 即可,例如:

tar -cvzf test.tgz test
 tar -xvzf test.tgz

 若要解压缩到指定路径——

tar -xzvf XXX.tgz -C 指定路径

 在上述,我们知道了Linux和Windows之间文件的互传,那么Linux 和 Linux之间该怎样互传呢?

用 scp 指令(这里由于条件的限制,暂时省略)

3.bc

bc命令可以很方便的进行浮点运算

 例如:

4.uname –r 

语法:uname [选项]
功能: uname用来获取电脑和操作系统的相关信息。
补充说明:uname可显示linux主机所用的操作系统的版本、硬件的名称等基本信息。 

常用选项:
-a或–all 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称

 

5.重要的几个热键 

tab键进行命令或者路径的补齐

ctrl + c 终止当前的程序

上/下键可以翻阅历史的命令

ctrl + r 搜索历史命令 

通过上述的内容,我们可以知道,Linux 系统会记录历史命令

 

6.扩展命令

◆ 安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last;
◆ 文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln;
◆ 系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab;
◆ 网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup;
◆ 系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who;
◆ 其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。

7.shell命令以及运行原理 

从技术角度,Shell的最简单定义:命令行解释器(command Interpreter)主要包含:
将使用者的命令翻译给核心(kernel)处理。
同时,将核心的处理结果翻译给使用者。 

shell通常会进行创建子进程的方式进行命令行解析(进行命令行解析,同时保护内核) 

 

然而,在Linux中通常是bash ,那么bash 和Linux之间有什么联系呢?

bash是shell的一个称呼,所有的都可以成为shell(可以理解bash是shell中的一个) 

---这里是一个相对浅显的概念,在之后的学习中,我们将会进行深入的理解---

8.Linux权限的理解

权限:权限首先是限制特定身份角色的,目标事物的属性也会影响权限,所以,权限 = 角色 + 事物属性。

Linux下有两种用户:超级用户(root)、普通用户

超级用户:可以再linux系统下做任何事情,不受权限的约束
普通用户:在linux下做有限的事情,受到权限的约束
超级用户的命令提示符是“#”,普通用户的命令提示符是“$”

 当处于普通用户的时候,我们执行命令 ‘ su ’后,输入密码就可以转换到root中。再回退到普通账号,只需要输入 ctrl + d 或者 exit 就可以回到普通用户。

例如:

或者也可以使用“ su - ”命令,此时家目录也会发生变化。 

在普通用户时使用“ su ”也可以转换成其他的用户,不过要知道该用户下的登录密码,但是,在超级用户上时,不用输入密码。

在Linux安装软件时,一般是在root身份下安装的,所以,此时在普通用户的账号下时需要进行指令提权。

其中,文件类型如下:

d   目录

-    普通文件

c   字符设备文件

b   块设备文件

p   管道文件

l    链接文件 

其中,字符设备文件最常见的就是显示器和键盘。

块设备文件最常见的就是磁盘。

---管道文件和链接文件在后续的学习中会讲到--- 

Linux中角色可以分为三类:

1)文件拥有者

2)文件所属组

3)other 

 

其中,r 表示读,w 表示写,x 表示可执行。(当有时表示可以,否则不可以)

也可以改变拥有者/所属组/other的权限,例如:

chmod u-r test.txt   //拥有者
chmod g-r test.txt   //所属组
chmod o-r test.txt   //other
chmod u-r,g-rw,o-w test.txt
chmod u+rw,g+r,o+w test.txt
chmod a+r test.txt   //修改所有具有读的权限

需要注意的是:

1)要修改权限,必须为拥有者,或者是超级用户。

2)并不是有权限就可以执行,Linux下能够执行的条件是:

     真的是一个可执行文件 + 可执行权限。

3)在user,group,other 和我自己之间进行身份对比的时候,是依次只对比一次。

其中,命令中的760,777 是用八进制来进行转换

 

 修改角色——>可以使用以下的命令:

chown (user name) test.txt
sudo chown (user name) test.txt//强制更改

改变时,需要有root 权限或者是提权。

修改所属组——>

sudo chgrp (user name) (文件名)

对于一个文件,没有 r 权限,那么用任何工具都不行。(权限限制的是用户/操作者)

关于权限的三个问题:

1.目录权限

r 对于目录的意义:是否有权查看指定目录下的文件信息

w对于目录的意义:是否有权在指定目录内部新建、删除、修改文件名等修改文件的操作。

x 对于目录的意义:是否具有进入目录的权限 

2.缺省权限

 

1)根据图片可以看出,文件的起始权限是固定的 

2)umask 权限掩码

     

     修改权限掩码,达到修改Linux文件缺省权限的问题!

3)最终权限(缺省权限)

      结论:最终权限(默认)= 起始权限 & (~umask)

      umask可以进行改变

      umask设置的目的是为了增加灵活性

这里有个图片来进行解释——

3.粘滞位

1)Linux多用户下,对于文件的访问,是隔离的。

2)需求:我们想让Linux下不同的账号共享文件,则该文件不能再任何一个普通账号的家目录里。

3)存在的问题:

      1. 在共享目录下,可以执行文件的删除操作。(因为存在 w 权限)

      2.粘滞位:任何用户,在设置了粘滞位的目录下,自己只能删除自己的文件,其他人无法删               除。

      3.粘滞位只用给目录设置,不需要给普通用户设置。 

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

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

相关文章

摄像机视频分析软件下载LiteAIServer视频智能分析软件抖动检测的技术实现

在现代社会中,视频监控系统扮演着至关重要的角色,其可靠性和有效性在很大程度上取决于视频质量。然而,由于多种因素,如摄像机安装不当、外部环境振动或视频信号传输的不稳定,视频画面常常出现抖动问题,这不…

Pandas | 数据分析时将特定列转换为数字类型 float64 或 int64的方法

类型转换 传统方法astype使用value_counts统计通过apply替换并使用astype转换 pd.to_numericx对连续变量进行转化⭐参数:返回值:示例代码: isnull不会检查空字符串 数据准备 有一组数据信息如下,其中主要将TotalCharges、MonthlyC…

Fish Agent V0.13B:Fish Audio的语音处理新突破,AI语音助手的未来已来!

近日,Fish Audio公司发布了一款全新的语音处理模型——Fish Agent V0.13B,这款模型以其高效、精确的语音生成和处理能力,尤其是在模拟或克隆不同声音方面的表现,引起了广泛关注。这不仅意味着我们在拥有一个声音自然、反应迅速的A…

稀疏视角CBCT重建的几何感知衰减学习|文献速递-基于深度学习的病灶分割与数据超分辨率

Title 题目 Geometry-Aware Attenuation Learning forSparse-View CBCT Reconstruction 稀疏视角CBCT重建的几何感知衰减学习 01 文献速递介绍 稀疏视角锥形束计算机断层扫描(CBCT)重建的几何感知学习方法 锥形束计算机断层扫描(CBCT&a…

Docker入门系列——Docker-Compose

Docker Compose 是 Docker 官方编排工具,用于定义和运行多容器 Docker 应用程序。它是一个轻量级的工具,用于快速配置和启动应用程序的不同服务。 Docker Compose 是什么 Docker Compose 最初是由 Docker 公司开发,并于 2014 年 6 月首次发布…

[运维][Nginx]Nginx学习(1/5)--Nginx基础

Nginx简介 背景介绍 Nginx一个具有高性能的【HTTP】和【反向代理】的【WEB服务器】,同时也是一个【POP3/SMTP/IMAP代理服务器】,是由伊戈尔赛索耶夫(俄罗斯人)使用C语言编写的,Nginx的第一个版本是2004年10月4号发布的0.1.0版本。另外值得一…

GIN:逼近WL-test的GNN架构

Introduction 在 图卷积网络GCN 中我们已经知道图神经网络在结点分类等任务上的作用,但GIN(图同构神经网络)给出了一个对于图嵌入(graph embedding)更强的公式。 GIN,图同构神经网络,致力于解…

ReactPress与WordPress:一场内容管理系统的较量

ReactPress Github项目地址:https://github.com/fecommunity/reactpress WordPress官网:https://wordpress.org/ ReactPress与WordPress:一场内容管理系统的较量 在当今数字化时代,内容管理系统(CMS)已成为…

红日靶机(七)笔记

VulnStack-红日靶机七 概述 在 VulnStack7 是由 5 台目标机器组成的三层网络环境,分别为 DMZ 区、第二层网络、第三层网络。涉及到的知识点也是有很多,redis未授权的利用、laravel的历史漏洞、docker逃逸、隧道、代理的搭建、通达OA系统的历史漏洞、ms…

【bat】自动生成指定层级文件夹

🌅 一日之计在于晨,启航新程 ⭐ 本期特辑:自动生成指定层级文件夹 🏆 系列专题:BAT脚本工坊 文章目录 前言批处理脚本介绍脚本执行过程总结 前言 在日常的计算机使用过程中,我们经常需要创建文件夹来组织和…

45.第二阶段x86游戏实战2-hook监控实时抓取游戏lua

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 本次游戏没法给 内容参考于:微尘网络安全 本人写的内容纯属胡编乱造,全都是合成造假,仅仅只是为了娱乐,请不要…

ISAAC SIM踩坑记录--ROS2相机影像发布

其实这个例子官方和大佬NVIDIA Omniverse和Isaac Sim笔记5:Isaac Sim的ROS接口与相机影像、位姿真值发布/保存都已经有详细介绍了,但是都是基于ROS的,现在最新的已经是ROS2,这里把不同的地方简单记录一下。 搭建一个简单的场景&a…

MySQL技巧之跨服务器数据查询:基础篇-A数据库与B数据库查询合并

MySQL技巧之跨服务器数据查询:基础篇-A数据库与B数据库查询合并 上一篇已经描述:借用微软的SQL Server ODBC 即可实现MySQL跨服务器间的数据查询。 而且还介绍了如何获得一个在MS SQL Server 可以连接指定实例的MySQL数据库的链接名: MY_ODBC_MYSQL 以…

问:MySQL主从同步的机制梳理?

MySQL主从复制是一种数据库复制技术,通过将一个MySQL数据库服务器(主节点)的数据复制到一个或多个其他MySQL数据库服务器(从节点),实现数据的自动同步。这种技术不仅提高了数据的可用性,还能通过…

物联网低功耗广域网LoRa开发(一):LoRa物联网行业解决方案

一、LoRa的优势以及与其他无线通信技术对比 (一)LoRa的优势 1、164dB链路预算 、距离>15km 2、快速、灵活的基础设施易组网且投资成本较少 3、LoRa节点模块仅用于通讯电池寿命长达10年 4、免牌照的频段 网关/路由器建设和运营 、节点/终端成本低…

【Linux】sudo make install 命令往系统中安装了什么 指定目录进行安装

前情提要 假如我们通过源码安装的方式,安装一个动态库,风格往往是这样的: # 克隆仓库 git clone https://github.com/xxx.git# 进入仓库目录 cd xxx编译 # ... 可能有一些校验代码完整性的sh命令# 构建 mkdir build cd build cmake ..# 编…

基于YOLOv5的人群密度检测系统设计与实现

大家好,本文将介绍基于改进后的YOLOv5目标检测模型,设计并实现人群密度检测系统。 使用YOLOv5的源代码,在此基础上修改和训练模型, 数据集选用crowdhuman数据集。对yolov5源码中的文件进行修改,更换主干网络、改进损失…

zabbix搭建钉钉告警流程

目录 zabbix实验规划 zabbix实验步骤 1 使用钉钉添加一个自定义的机器人 ​编辑2在zabbix-server上编写钉钉信息发送脚本,设置钉钉报警媒介 设置钉钉报警媒介​编辑​编辑 在添加消息模板​编辑​编辑​编辑 3设置动作条件 触发后的行为:重新添加一…

在 Oracle Linux 8.9 上安装Oracle Database 23ai 23.5

在 Oracle Linux 8.9 上安装Oracle Database 23ai 23.5 1. 安装 Oracle Database 23ai2. 连接 Oracle Database 23c3. 重启启动后,手动启动数据库4. 重启启动后,手动启动 Listener5. 手动启动 Pluggable Database6. 自动启动 Pluggable Database7. 设置开…

vxe-table 3.10+ 进阶高级用法(一),根据业务需求自定义实现筛选功能

vxe-table 是vue中非常强大的表格的,公司项目中复杂的渲染都是用 vxe-table 的,对于用的排序。筛选之类的都能支持,而且也能任意扩展,非常强大。 默认筛选功能 筛选的普通用法就是给对应的列指定参数: filters&#…