Linux7

十二、软件的安装

Linux软件安装复杂是因为依赖包,如果要在Linux上安装软件,首先要安装依赖包

A对G是依赖包

我们可以看到ls和cat指令里面参数是不同的

Linux安装难度大

1.编译安装

  我们有时候安装软件,下载下来的是软件源代码,不能直接运行,需要编译之后才能运行,源代码 -- >编译 -- >二进制机器码,才能运行。比如windows的某些软件是从源代码编译打包之后才生成exe程序,平常我们接触不到,大家安装的软件都是基本别人编译好的。而linux下编译之后会生成二进制的可执行文件,不是exe程序昂,和windows不同,这种文件没有后缀名。其实linux系统下就没有文件后缀名这个概念,好多后缀名都是我们人工自己加上去的,为了让自己知道文件是干嘛的,主要是给我们自己看的,区分作用。

GitHub或码云gitee上搜索软件下载

不是所有的软件必须经过编译安装才能使用

这是我在码云上找到的一个软件,我们可以看到,这支持在Ubuntu和Linux上下载安装

使用方法下有一个网址,这是告诉我们这个软件是如何编译的

我们可以下载ZIP

ZIP里面就是源代码包

网站服务软件;nginx,apache...

我们看这个操作界面,已经安装完成

我们对其进行解压https://nginx.org/download/nginx-1.20.2.tar.gz

我们cd到解压文件夹里

发现有这些文件

我们对文件进行统计,一共有12个

a.配置编译参数

我们可以自己设置要使用哪些功能(可以指定不使用功能,也可以指定安装在哪个目录下)

我们可以在上图中看到configure文件是绿色的,这表明他是一个可执行文件

我们可以看到配置编译后多出了Makefile和 objs文件

我们接着进行编译

b.编译

make会专门找Makefile文件进行配置编译

  

编译后objs多了很多文件

这个nginx相当于启动程序(二进制可执行程序文件)

我们没有把这些文件放到特定目录下,我们需要相对路径绝对路径来指定一下

 这说明可执行程序文件可以运行了

我们还需要进行安装

c.安装

使用 make install指令

我们回到这个目录当中来

 

如果想清楚查看这些文件,我们需要安装插件

安装完成之后,我们就可以通过tree指令查看,由此可见的清晰

  

systemctl stop firewalld关闭Linux防火墙

d.打包

我们通过指令进行压缩,压缩到tmp中去

我们来查看一下打包后的文件有多大——1.4M

按照前面所学,我们进入另一台虚拟机,查看这台虚拟机的IP地址

可以进行两台主机文件互传

解压到local目录下并运行

取消防火墙开启:systemctl disable firewalld

2.rpm安装

我们安装一下wget

rmp安装不需要编译,我们可以直接进行手动安装,或者使用yum指令

由于我们前面装过tree了,我们只进行卸载操作

我们可以使用rpm指令将tree卸载

我们可以使用rpm -qa这个指令查看有多少安装包

也可以使用rpm -qa|grep tree查看有没有tree

由于我们刚刚进行了删除操作我们查不到

这个rpm手动安装出现一些问题,稍后我会进行补充

3.yum安装

这个可以自动解决依赖包问题

我们可以看到,安装一个包则需要三个依赖包,而在yum中会自动帮忙连接

编译安装:优点:自由定制  痛点:难度高,步骤繁琐

rpm安装:优点:安装简单    痛点:需要自己解决依赖,不支持定制

yum安装: 优点:自动解决依赖,默认安装最新版  痛点:不支持定制

4.yum仓库

centos官方库在国外  http://mirror.centos.org/

阿里云

我们可以通过这个指令查看

我们通过这个指令vim进去

enabled=0表示禁用=1表示启用

我们可以根据实际情况配出网址,我们访问网址是会报给我们一些其他网址,这证明我们可以通过这些网址进行下载(国内网站下载较快)

十三、find查找文件

在Linux系统上我们无法像在win系统上查找那么简单明了,我们需要用到find指令进行查找

a.普通查询

*pa表示以它结尾

查找深度根据数字为层数查找

例如:

我们可以通过这个指令查找到在etc目录下pa开头的文件

b.按照文件大小写查询

注意:图片有一处错误,不带单位就按照b单位来处理

+100M表示文件大小大于100M

-100M表示文件大小小于100M

我们可以看到通过这个指令可以查找到有关的文件,其中/表示从根目录下开始查找

proc所报的错误我们可以做一些忽略,因为只有root用户才可对它修改

kG MB我们要区分好大小写

如果我们要找的文件大小有范围,我们可以加上-and指令

例如:

c.忽略大小写查询

注意:严格区分大小写

例如:

经过动手操作我们会看到许多文件,我们可以加上一些限制条件帮助我们寻找

name前面加一个i表示不区分大小写  也就是说我们查到的结果有大写有小写

d.根据修改时间查找文件

atime、mtime、ctime是按天查找   amin、mmin、cmin是按分钟查找

stat我们可以通过这个指令查找时间

我们可以通过这个指令进行最近更改时间文件的查询

-20表示十分钟以内

+1表示一天之前或者一分钟之前

e.取反

例如:

也可以在-type前取反

f.根据用户来查找

g.对找出的文件进行处理

我们找到txt文件

我们可以在指令后面加上-exec在进行对其后续的操作,其中/表示;是普通的分号不是命令连接符

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值