Linux软件安装
linux查找和压缩
Linux软件安装
学会在linux上部署自己的应用程序。
RPM包管理
- 什么是RPM包?
RPM Package Manager(原Red Hat Package Manager,现在是一个递归缩写),由Red Hat公司提出,现在被众多linux发行版所采用,也称为二进制(binary code),不需要编译,可以直接使用,无法设定个人设置,开关功能。 - RPM示例
mysql-community-common-5.7.12-1.el7.x86_64rpm
zip-3.0-11.el7.x86_64.rpm - 认识RPM包
软件包的名字zip
版本号:3.0-11
发布版本(Release5/6/7)
系统平台(32/64):x86_64
文件后缀:rpm
RPM包的安装
- yum工具
yum(全称是:yellow dog updater,modified)是一个在Fedora和RedHat以及Centos中的shell前端软件包管理器,它是基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐的一次次的下载、安装。
1.设置yum源
通知linux服务器,通过本机的系统光盘获得软件包,并安装软件
观察yum核心配置目录
yum的核心配置目录在/etc/yum.repos.d/
cd /etc/yum.repos.d/
打开一个*.repo
vim /etc/yum.repos.d/CentOS-Base.repo
(在Linux脚本文件中井号开头代表注释)
观察国外的下载地址(发现太慢了)
这些都是在国外的地址,是centos8自带的地址
删除官方yum库
先备份一些官方的yum地址
tar -cvf repo.tar ./CentOS-*
接下来要删掉以前的地址
mv /etc/yum.repos.d/* /tmp
编写本地yum库配置文件
要告诉计算机在哪里下载
vim /etc/yum.repos.d/dvd.repo
在里面编写四行字:
[dvd]
name=dvd123
baseurl=file:///mnt/cdrom
gpgcheck=0
''' 注释: /etc/yum.repos.d/是yum的下载地址库目录 [dvd]是某个库的名称,中括号[]是必须要有的 name=dvd是库的说明,name是必须要有的 baseurl=file:///mnt/cdrom是下载库的具体地址 gpgcheck=0是关闭校验 '''
挂载安装光盘
准备一个文件夹
mkdir /mnt/cdrom
来装载软件包
将软件放进去mount /dev/cdrom /mnt/cdrom
(需要注意的是先要在虚拟机上选中镜像文件并且通电)
找到Packages并用ls查看,发现全部都是rpm软件包
重启计算机查看软件包,发现我们之前的软件包都不翼而飞了,这是因为我们的挂载方式只是临时挂载,并不是永久挂载。那么如何解决这个问题呢?我们可以将这个命令写入到系统的自启动文件夹,当这个CentOS8启动的时候就自己运行,就相当于自己挂载了一下
vim /root/.bashrc
随便找一行将挂载命令写入到文件中
重启一下init 6
再次查看
有rpm软件包,这就是成功了。
使用yum安装和卸载程序
yum install -y httpd安装软件
systemctl start httpd启动软件
systemctl stop firewalld关闭防火墙
systemctl disable firewalld 禁用防火墙开机自启动
模拟客户机访问
打开浏览器,输入网站服务器的IP地址:http://127.0.0.1,验证网站程序部署成功,此时的CentOS8就是一台服务器了
说明安装成功了。
2.使用yum管理RPM包
全新安装
yum -y install httpd vsftpd
/* yum指的是主命令 -y自动确认 install安装 httpd软件包1 vsftpd软件包2 */
重新安装
当软件缺失文件时,可以尝试重新安装
yum -y reinstall httpd
升级安装
yum -y update httpd
/* 升级一个程序软件 */
yum -y update
/* 升级一个系统 */
查询一个程序
yum list httpd
在列出的信息当中,其中带有@表示已经安装过的软件
卸载程序
yum -y remove httpd
//remove移除表示删掉,卸载
- RPM工具
RPM是红帽自带的安装工具,与yum的功能相同(唯一的不同的是rpm不需要配置)
安装软件包(前提是要有一个软件包,不然安装啥呀)
cd /mnt/cdrom/Packages/
到Packages软件包目录中,先去查看软件包是否存在
ls 软件包名称
在写软件包名称时,如果可以用Tab键出来,证明这个软件包是存在的。
rpm -ivh 软件包
/* i代表安装 v代表可视 h代表百分比 */
警告信息表示的是没有让计算机进行检查,这是正常的。
如何验证自己已经安装好了呢?
rpm -q wget
卸载软件包
rpm -evh 软件包
如何证明已经卸载完成了?
再次查询一下,发现已经卸载
敲黑板了,最后需要注意一下:rpm工具无法处理依赖关系!
如何解决这个问题?
我们可以考虑让软件包和它依赖的软件包一起安装,但是这种操作比较麻烦,这是因为也许它依赖的软件包还有一系列的依赖关系,这样比较麻烦,所以像这种情况使用yum工具。
源码包管理
- 源码包的介绍
源码包(source code):需要经过GCC,C++编译环境编译才可以运行,可以设定个人设置,开关功能,但是配置复杂。 - 源码包实例
nginx-1.8.1.tar.gz
源码包的安装
首先要先去下载,获取源码包
第一种方法:http://tengine.taobao.org/
第二种方法:可以复制下载链接,用wget进行下载(前提是已经装过了wget)wget 下载链接
第三种方法:安装VMware Tools,将这个软件包拖进去。
- 部署Tengine
准备编译环境,比如:编译器
首先要先确认yum配置无误。
yum -y install gcc make zlib-devel pcre pcre-devel openssl-devel
解压
创建一个用户
useradd www
tar -xf tengine-2.3.2.tar.gz
cd tengine-2.3.2/
配置
./configure --user=www --group=www --prefix=/usr/local/nginx
编译
源码包中全都是用C语言写的软件包,所以需要编译
make
通过make使C语言文件开始编译
安装
make install
启动测试
在之前的实验中安装过httpd服务,如果直接启动nginx会有冲突,怎么办?
systemctl stop httpd
/usr/local/nginx/sbin/nginx
把防火墙给我关了。
systemctl stop firewalld
打开网页浏览器,输入127.0.0.1,进入如果看见tengine时,说明安装成功了。
Linux软件安装扩展内容
还没有评论,来说两句吧...