在Linux中安装软件

一、rpm包安装方式

red hat 公司 将 常用的 linux 软件进行 整合,编译 打包使用红帽的 安装工具进行安装就可以了

1.1一般命名格式

 bash-4.1.2-15.el6_4.x86_64.rpm

 bash shell环境    版本信息 4.1.2   15发布次数    x86_64硬件(为“i386”或“i686”等)

1.rpm 查询

rpm -q 查询已安装软件

rpm -qa

查询所有已安装的软件

rpm -q   软件名

查询某个软件是否已安装

rpm -qc 软件名

查询 某个软件的 配置文件

rpm -gl  软件名

某软件的所有文件列表

rpm -gi  软件名

软件名软件的 基本信息

rpm 安装

rpm -ivh 软件名

i

install 安装

v

显示过程

h

######## 进度条

实验

安装软件首先要有包

准备安装包

1. 红帽官方
2. 第三方组织提供
3. 软件项目官方站点

准备 将镜像文件放入 光驱

mount /dev/sro /mnt #将光驱中的内容复制到mnt 目录cd /mnt/Packages

安装软件

Isl grep httpd

rpm -ivh httpd-tools-2.4.6-67.el7.centos.x86 64.rpm

rpm -ivh httpd-2.4.6-67.el7.centos.x86 64.rpm

rpm -g httpd

卸载

rpm -e 软件名(可以缩写)

rpm -e httpd

二、yum仓库简介

yum简介

yum是一个基于RPM包(是Red-Hat Package Manager红帽软件包管理器的缩写)构建的软件更新机制,能够自动解决软件包之间的依赖关系。解决了日常工作中的大量查找安装依赖包的时间

为什么会有依赖关系的发生 因为linux本身就是以系统简洁为自身优势,所以在安装操作系统的时候并没有将所有的库文件以及编译软件包进行安装,所以在linux操作系统上进行软件安装的时候会出现软件包依赖的情况。yum由仓库和客户端组成,也就是整个yum由两部分组成,所以yum可以存放在两台服务器上。也可以存放在一台服务器上。可以有官方来提供服务,也可以由第三方来提供,比如国内的阿里云,搜狐云,还有一些非盈利组织比如学校等。官方的源一般在国外,下载速度肯定有限,手动更改成国内的云可以大幅提升下载速度。

YUM 的前身是 YUP(Yellow dog Updater,Yellow dog Linux 的软件更新器),最初由 TSS 公司(Terra Soft Solutions,INC.)使用 Python 语言开发而成,后来由杜克大学(Duck University)的 Linux 开发队伍进行改进,命名为 YUM(Yellow dog Updater,Modified)。 要成功使用 YUM 机制来更新系统和软件,需要有一个包含各种 rpm 安装包文件及其依 赖软件的软件仓库(repository),提供软件仓库的服务器也称为“源”服务器。在客户机中只 要正确指定软件仓库的地址等信息,就可以通过对应的“源”服务器来安装或更新软件。

1.2yum实现过程

要有安装包

安装包: 

1.光驱里自带       挂载提供软件包

先在yum服务器上创建 yum repository(仓库),在仓库中事先存储了众多rpm包,以及包的相关的元数据文件(放置于特定目录repodata下),当yum客户端利用yum/dnf工具进行安装时包时,会自动下载repodata中的元数据,查询远数据是否存在相关的包及依赖关系,自动从仓库中找到相关包下载并安装。

yum需要依赖于环境,依赖于服务端和客户端,允许跨网络

服务器:

  • RPM包 (Packages文件夹中)
  • 元数据(repodata文件夹:目录(软件的目录),软件的依赖关系,软件的位置)

客户端的配置文件中

baseurl=地址   一定要写到到   这两个文件夹 repodata  packages  的上级目录

最终形成两个文件夹Packages (包文件夹一般取名packages)和  repodata(元数据文件夹)

仓库类型:

  • 光盘的仓库基本仓库   比较常用的
  • epel扩展仓库             比较新  

yum配置文件及命令

2.1 yum配置文件

2.1.1 主配置文件

位置:/etc/yum.conf           //主配置文件

[root@localhost]# /etc/yum.conf

[main]

cachedir=/var/cache/yum/$basearch/$releasever //yum下载的RPM包的缓存目录 $basearch代表硬件架构 $releasever系统版本比如7

keepcache=0                                   //是否保存缓存  0代表不保存,1代表保存

debuglevel=2                                  //调试级别了解即可

logfile=/var/log/yum.log                                         // 日志文件位置

exactarch=1                                                                     //是否允许不同版本的rpm安装

obsoletes=1                                                                        //update 的一个参数是否可以允许旧版本的运行        

gpgcheck=1                                  //验证秘钥

plugins=1                                   //是否允许插件1代表可以

installonly_limit=5                         //保存几个内核 5代表5个

bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum

distroverpkg=centos-release

yum的repo配置文件中可用的变量:

$releasever: 当前OS的发行版的主版本号,如:8,7,6

$arch: CPU架构,如:aarch64, i586, i686,x86_64等

$basearch:系统基础平台;i386, x86_64

$contentdir:表示目录,比如:centos-8,centos-7

$YUM0-$YUM9:自定义变量

yum命令详解

命令

不加关键字

加入关键词、软件包、软件包组

yum list

显示所有可用包

单个的可安装包

yum info

显示所有可用包的信息

单个具体的信息

yum search

\

模糊查找所有的相关信息

yum provides

\

精确查找

yum grouplist

显示所有可用包组

显示具体的包组

yum groupinfo

显示所有的包组具体信息

显示具体的包组的具体信息

yum install

\

安装具体软件包

yum groupinstall

\

安装具体软件包组

yum update

所有软件升级

具体软件升级

命令

不加关键字

加入关键词、软件包、软件包组

yum group update

所有包组升级

具体包组升级

yum remove

\

卸载具体软件

yum groupremove

\

卸载具体包组软件

yum history

查看当前yum操作历史

\

yum history undo

加入序号卸载序号里安装的软件

\

yum history redo

加入序号重新执行序号里的操作

\

搭建仓库的方式

本地yum仓库  没有网络的情况下,  光盘

软件仓库的提供方式

FTP服务:ftp://ip地址/站点里路径

HTTP服务:http://域名或者ip地址/站点里的路径

本地目录:file://绝对路径    (file:///mnt          此处第三个/为根目录)

搭建本地yum仓库

1.首先将光驱中的镜像文件进行挂载(先将虚拟机的光盘载入)

2.yum仓库的本地配置文件

3.清理缓存并重新下载元信息

搭建阿里云仓库 (http方式外网环境)

国外云仓库比较慢,可以使用阿里云仓库代替

1.切换到 yum.repo.d 目录 将自带的仓库移走

2.新建aliyun仓库

清理缓存并安装软件

yum clean all   //清理yum缓存

yum makecache   //重新建立元数据

yum安装tree测试是否成功

yum install tree -y  

ftp方式搭建云仓库

服务端:172.16.88.4

客户端:172.16.88.3

服务器

1.服务端安装vsftp服务

yum install vsftpd.x86_64 -y

2.服务端切换到 ftp目录下新建一个centos7目录

3.服务端将光驱挂载到/var/ftp/centos7下

[root@localhost:/var/ftp# ]mount /dev/sr0  /var/ftp/centos7/

mount: /dev/sr0 写保护,将以只读方式挂载

[root@localhost:/var/ftp# ]systemctl start vsftpd

客户端

[root@host2:~# ]yum install ftp -y

[root@host2:~# ]ftp 172.16.88.3          使用ftp测试能否正常访问服务端

[root@host2:~# ]cd /etc/yum.repos.d/

[root@host2:/etc/yum.repos.d# ]ls

CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo

CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo

[root@host2:/etc/yum.repos.d# ]mkdir bak

[root@host2:/etc/yum.repos.d# ]mv *.repo bak

[root@host2:/etc/yum.repos.d# ]ls

bak

[root@host2:/etc/yum.repos.d# ]vim ftp.repo

清理缓存并重新下载元信息

安装tree验证是否成功

yum

优点:1.简单

          2.自动解决依赖关系

缺点:1.软件的功能不全

          2.版本过旧

三、编译安装

编译  将人类使用的高级语言,转化为二进制语言

优点

1功能自定义

2可以安装最新的版本

缺点

复杂

在编译安装前

要先安装编译的软件

gcc gcc-c++ make

安装依赖的软件

编译安装的3步

./configure  #脚本文件,源码包中自带,makefile .你做的个性化设置

1.检测安装环境 依赖关系

2.可以选择安装软件的哪些功能,生成一个文件 make.file,按照这个文件的配置进行编译安装

3.指定安装路径 --prefix=路径 路径可以不存在,会自动建立

make#将源代码编译成 二进制可以执行的文件

make install#将软件安装进 系统的指定路径

nginx 运行一个 网站你

安装了 nginx 软件 等于搭建了一个 网站

编译安装nginx 网站软件

mkdir /data

cd/data

wget http://nginx.org/download/nginx-1.18.0.tar.gz #下载源码包

tar xf nginx-1.18.0.tar.g2

cd nginx-1.18.0/

yum -y install make gcc pcre-devel openssl-devel zlib-devel openssl openssl-devel #安装依赖环境

./configure --prefix=/apps/nginx          #检测环境, 指定安装目录

make -j2                   #编译 -j2 2个核心编译

make instal                     # 将软件复制到 前面规定的路径

In -s  /apps/nginx/sbin/nginx                  /usr/local/sbin #可以补全

nginx

systemctl stop firewalld

setenforce 0

cur

ip地址(本机的)

浏览器中 输入 ip地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值