走进linux

1、为什么要使用linux

稳定性和可靠性

Linux内核以其稳定性而闻名,能够持续运行数月甚至数年而不需要重新启动。这对于服务器来说至关重要,因为它们需要保持长时间的稳定运行,以提供持续的服务

安全性

Linux系统的安全性得到了广泛认可。开源的自然属性使得漏洞可以很快被发现和修复,从而降低了受到安全威胁的风险

资源利用效率

Linux在资源管理方面表现出色,可以高效地利用服务器硬件资源,使得服务器能够同时处理大量的请求

开源和免费:

Linux是开源的,因此不需要为操作系统本身付费。这使得它在经济上具有明显的优势,特别是对于企业或组织需要部署大量服务器的情况

Linux文件目录结构

  • linux的存储结构是树形结构
  • 以一个一个的目录来挂在根目录下
  • linux是没有盘符概念的,linux一切皆文件
  • linux的目录层级是以右上左下的斜杠来表示‘
  • wndows是以左上右下的斜杠来表示
  • 每个用户都有自己的家目录,在/home/用户名

 

/根目录,每个目录的起点,所有的目录都在根目录下
home创建的用户都会在home下有自己的目录
rootroot也就是管理员用户,保存管理员的个人信息
bin以前二进制文件,现在是脚本目录
sbin高级命令启动停止类似于进程的启动和停止
etc环境变量
var日志
opt装软件,软件的安装包
tmp临时文件,会自动清除的,重要文件不要放在该目录

 

2、Linux常用命令

所有命令格式:命令本身+选项+参数

command: 命令本身 -options:[可选,非必填]命令的一些选项,可以通过选项控制命令的行为细节 parameter:[可选,非必填]命令的参数,多数用于命令的指向目标等

2.1、文件操作命令:

命令本身选项参数命令作用
pwd打印当前所在目录
ls-a,-l打印当前所在目录的所有文件和目录,-a是all    -l是list
cd目录,~, .进入到参数的目录中
mkdir-p目录创建新的目录        -p是创建多级目录
touch文件创建文件
cp-r目录复制所选文件到目录,  -r是递归复制整个目录的所有文件
rm-r,-f文件,目录删除文件或目录   -r是递归删除目录的所有文件,-f强制删除
mv文件,目录移动或重命名文件,
cat-n文件查看文件的所有内容,-n是显示文件的行号
tail-n ,-f文件输出尾部内容,-n是输出n行数据,-f是实时监控
more文件查看文件,支持查找和分页查看

2.2、文本编辑相关

在命令行界面下,最常用的文本编辑器就是Vi/Vim。其中Vi 是 Linux操作系统中最通用的文本编辑器。 Vim编辑器是Vi的增强版,相较于Vi,提供了代码高亮等功能。两者用法完全兼容。下面介绍Vim的用法。

Vim模式介绍

Vim文编辑器有不同的工作模式,在不同模式下,可执行不同的操作,主要模式有

  • 普通模式(Normal Mode):用于删除、复制、粘贴等基本操作。

  • 编辑模式(Insert Mode):用于编辑文本。

  • 命令行模式(Command Mode):用于执行命令,如保存、退出等。

当用vim命令打开文件时,文件不存在时,自动创建

vim的命令模式,输入:或/进入命令模式      /+文本进行查找,输入n进行查找下一个,N为上一个

set nu 和set nonu 显示和取消行号

vim常用命令:

快捷键快捷键含义
yy复制当前行
dd删除当前行
p粘贴
命令模式:命令命令含义
:wq保存并退出
/文本全文进行查找内容
:set nu显示行号
:set nonu取消显示行号
:s/old/new/g`将所有的old内容换成new内容

2.3、文件权限相关

Linux中的所有文件均有严格的访问权限控制,只有当用户拥有某个文件的相关权限时,才可对文件执行相关操作

文件的权限:分为读(read)写(wirte)执行(execute)

权限字符串

在Linux系统中,文件和目录的权限用一组字符来表示,通常以rwxr-xr--的形式呈现,其中rwx分别表示读、写和执行权限。以下是权限字符的含义:

  • 第1-3位确定属主(该文件的所有者)拥有该文件的权限。

  • 第4-6位确定属组(所有者的同组用户)拥有该文件的权限。

  • 第7-9位确定其他用户拥有该文件的权限。

常用命令

命令命令含义
chmod(change mode)修改文件或目录权限
chown(change owner)修改文件或目录的所有者

 示例  :chmod [选项] [u/g/o/a][+/-/=][r/w/x] 文件或目录

  • 修改文件使其所属主用户具有执行权限

[root@localhost ~]# chmod u+x hello.cfg
  • 修改文件使其所属组用户具有执行权限

[root@localhost ~]# chmod g+x hello.cfg
  • 修改文件所属主用户执行权限,并使其他用户具有执行权限

[root@localhost ~]# chmod u-x,o+x hello.cfg

示例:chown [选项] 用户[:用户组] 文件或目录

  • 修改文件所有者

[root@localhost ~]# chown atguigu helle.cfg 
  • 递归改变文件所有者和所有组

[root@localhost ~]# chown -R atguigu:atguigu hello/

2.4、进程相关

操作系统中正在运行的一个程序称为一个进程。

命令选项命令含义
ps-a -u -x-a显示所有进程,-u以友好方式打印,-x显示后台进程

ps

-e -f-e显示所有进程,-f显示详细信息
kill-9终止程序 -9代表强制终止

2.5、压缩解压打包相关

zip/unzip可用于压缩和解压缩zip文件

命令选项参数命令含义
zip-r压缩包名,文件压缩文件为压缩包,存储到当前目录,-r为压缩目录
unzip-d压缩包解压缩到当前目录,-d为解压到指定目录
tar-c,-x,-f文件对文件进行打包,-c打包,-x解包,-f命名

 基本语法

打包:tar [选项] -c -f 包名 文件1 文件2 文件3 ...

解包:tar [选项] -x -f 包名 -C 指定目录

2.6、安装应用相关

2.6.1、rpm离线安装

RPM(RedHat Package Manager),RedHat软件包管理工具,在基于 RedHat 的 Linux 发行版中广泛使用。常见软件包如下Apache-1.3.23-11.i386.rpm,类似于Windows系统中的exe文件

命令选项参数
rpm-i,-v,-h软件包路径 -i是install安装,-v显示详细信息,-h显示进度
rpm-q.-a查询所有安装的rpm软件包
rpm-e软件包名,-e卸载软件

2.6.2、yum在线安装

YUM(全称为 Yellowdog Updater Modified)是一个Linux软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,并且可以自动处理依赖关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装,该功能类似在JAVA中使用Maven工具从远程仓库中下载依赖一样,可以自动处理依赖关系。

基本语法

yum [选项] install 软件包名

命令本身选项参数含义
yum [选项]install 参数-y软件名在线下载软件,-y是对所有请求都默认yes
yum remove软件名卸载软件

2.7、其他关键的命令

命令本身选项参数含义
grep-n文件从文件中通过关键字过滤关键行,-n在结果中显示行数
wc-m,-l,-w文件统计文件的数据-m字符数,-l行数,-w单词数
echo各种文本直接打印文本,若反引号则当命令使用
|管道符,与其他命令进行使用
 systemctl服务用来服务的启用和停止,开机自启等

管道符|将符号左边的值作为右边输入,支持嵌套行为

grep "dog"  anmals.txt|wc

重定向符:>:将左侧命令的结果,覆盖写入到文件,进行覆盖

                >>写入到文件,进行追加 

使用管道   ps -ef |grep java       |是管道符           将左边输出的数据,当作右边条件的数据源

在使用命令时,若有不知道的选项和参数要进行灵活使用,使用help和man命令查看

灵活使用  命令 --help

man命令     查看命令的完整介绍

3、LINUX的网络

3.1、桥接:虚拟出一个交换机,将虚拟机的虚拟网卡连接到交换机上,共用一个网络,公用同一个DHCP和NAT,所以每次新的连接都会分配不同的IP地址

3.2、NAT:虚拟出一个路由器(DHCP,NAT)创建一个局域网,

虚拟路由器通过主机的物理网卡连接到主机所在的网络

另在主机上虚拟出一个虚拟网卡也加入到这个路由器上,实现同一局域网的相互通信,虚拟机和主机通信。

3.3、仅主机:虚拟出一个路由,但没有NAT,不能连接到主机的网络,只能实现互通

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

[Vulnhub] Simple CuteNews-CMS+Kernel权限提升

信息收集 IP AddressOpening Ports192.168.8.104TCP:80 $ nmap -p- 192.168.8.104 --min-rate 1000 -sC -sV PORT STATE SERVICE VERSION 80/tcp open http Apache httpd 2.4.7 ((Ubuntu)) |_http-title: Please Login / CuteNews |_http-server-header: Apache/2.4.7…

【matlab】大数据基础与应用实例

目录 引言 线性回归模型 基本形式 最小二乘法 多元线性回归 线性回归的假设 模型评估 应用 独热编码 原理 应用场景 优点 缺点 数据收集 数据可视化 数据处理与分析 完整代码 引言 线性回归模型 线性回归模型是一种用于预测连续值输出(或称为因变…

一文了解MySQL的表级锁

文章目录 ☃️概述☃️表级锁❄️❄️介绍❄️❄️表锁❄️❄️元数据锁❄️❄️意向锁⛷️⛷️⛷️ 介绍 ☃️概述 锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外&#xff0…

【PVE】新增2.5G网卡作为主网卡暨iperf测速流程

【PVE】新增2.5G网卡作为主网卡暨iperf测速流程 新增网卡 新增网卡的首先当然需要关闭PVE母机,把新网卡插上,我用淘宝遥现金搞了个红包,花了26元买了块SSU的2.5G网卡。说实话这个价位连散热片都没有,确实挺丐的。稍后测下速度看…

Spring源码十九:Bean实例化流程二

上一篇我们在Spring源码十八:Bean实例化流程一 中,主要讨论了Spring在实例化前的两重要准备工作,1、获取我们前面注册好的BeanDefinition,将GenericBeanDefinition封装为RootBeanDefinition如果Bean Definition只存在父容器中&…

iNavFlight飞控固件学习-1《开发环境搭建》

目录 文章目录 目录摘要1.官网2.形成Linux开发环境工具2.1 简介2.2 相关工具2.2.1 Ubuntu / Debian系统配置命令2.2.2 Fedora系统配置命令2.2.3 Fedora系统配置命令 2.3 克隆存储库2.4 构建工具2.5 使用cmake2.6 构建固件2.7 清除2.8 cmake 缓存维护2.9 编译通过ninja2.10 更新…

面试内容集合

用例设计方法 (一)等价类划分  常见的软件测试面试题划分等价类: 等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的.并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试.因此,可以把全部输入数据合理…

自注意力简介

在注意力机制中,每个查询都会关注所有的键值对并生成一个注意力输出。如果查询q,键k和值v都来自于同一组输入,那么这个注意力就被称为是自注意力(self-attention)。自注意力这部分理论,我觉得台大李宏毅老师…

FFmpeg开发环境搭建

FFmpeg是音视频开发必备的库,也是唯一的库。本文主要讲解在ubuntu22和macOS14环境下的编译安装。 为什么要自己编译呢?其中一个很重要的原因就是ffmpeg在编译时可以加入很多插件,这种特定的库网络上可能找不到编译好的版本,另外如…

在linux中查找 / 目录下的以.jar结尾的文件(find / -name *.jar)

文章目录 1、查找 / 目录下的以.jar结尾的文件 1、查找 / 目录下的以.jar结尾的文件 [rootiZuf6332h890vozldoxcprZ ~]# find / -name *.jar /etc/java/java-1.8.0-openjdk/java-1.8.0-openjdk-1.8.0.342.b07-1.el9_0.x86_64/lib/security/policy/limited/US_export_policy.ja…

Spring MVC 中 HttpMessageConverter 转换器

1. Spring MVC 中 HttpMessageConverter 转换器 文章目录 1. Spring MVC 中 HttpMessageConverter 转换器2. 补充:什么是 HTTP 消息3. 转换器3.1 转换器转换的是什么 4. Spring MVC中的 AJAX 请求5. ResponseBody 将服务器端的 return 返回值转化为“字符串(JSON格式…

RIP路由协议概述

RIP【Routing Information Protocol】 RIP是为TCP/IP 环境中开发的第一个路由选择协议标准 RIP是一个【距离——矢量】路由选择协议 当路由器的更新周期为30s到来时,向邻居发送路由表 RIP以跳数作为唯一度量值 RIP工作原理 RIP路由协议向邻居发送整个路由表信息RI…

Linux 复现Docker NAT网络

Linux 复现Docker NAT网络 docker 网络的构成分为宿主机docker0网桥和为容器创建的veth 对构成。这个默认网络命名空间就是我们登陆后日常使用的命名空间 使用ifconfig命令查看到的就是默认网络命名空间,docker0就是网桥,容器会把docker0当成路由&…

JavaDS —— 单链表 与 LinkedList

顺序表和链表区别 ArrayList : 底层使用连续的空间,可以随机访问某下标的元素,时间复杂度为O(1) 但是在插入和删除操作的时候,需要将该位置的后序元素整体往前或者向后移动,时间复杂度为O&…

代码随想录二刷7.22|977.有序数组的平方

暴力解法: ——如果想暴力解决这个问题的话,可以像题目那样,先将每一个元素平方,然后再排序 双指针: ——从题目中找到的信息:这是一个非递减顺序的整数数组,从例子中,可以容易看…

excel 百分位函数 学习

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、函数说明PERCENTILE 函数PERCENTILE.inc 函数PERCENTILE.exc 函数QUARTILE.EXC 函数 二、使用步骤总结 前言 excel 百分位函数 Excel提供了几个函数用于…

数据库MySQL下载安装

MySQL下载安装地址如下: MySQL :: Download MySQL Community Server 1、下载界面 2、点击下载 3、解压记住目录 4、配置my.ini文件 未完..

vector 介绍

1.简述vector 首先我们要大致弄明白vector是一个什么东西,其实vector就是之前我们学过的顺序表,这里直接使用就行了. 定义vector-------->vector<typename> arr 此时的这种定义vector可以理解成为一个数组,而typename可以是各种数据类型,比如string,int,double....…

QT实现自定义带有提示信息的透明环形进度条

1. 概述 做界面开发的童鞋可能都会遇到这样的需求&#xff0c;就是有一些界面点击了之后比较耗时的操作&#xff0c;需要界面给出一个环形进度条的进度反馈信息. 如何来实现这样的需求呢&#xff0c;话不多说&#xff0c;上效果 透明进度条 2. 代码实现 waitfeedbackprogressba…

3-2 多层感知机的从零开始实现

import torch from torch import nn from d2l import torch as d2lbatch_size 256 # 批量大小为256 train_iter, test_iter d2l.load_data_fashion_mnist(batch_size) # load进来训练集和测试集初始化模型参数 回想一下&#xff0c;Fashion-MNIST中的每个图像由 28 28 784…