Linux下的软件安装方式

1 rpm工具安装
2 yum工具安装
3 源码编译安装

软件包类型

1 二进制软件包(=rpm软件包)

无需编译,直接安装
根据计算机CPU架构类型和操作系统选择合适的软件包
拓展

一般的安装包格式:xlockmore-5.31.2.e16.x86_64.rpmxlockmore  软件名5.31.2 5   是大版本号, 31 分支版本 -1 最小分支的版本e16        表示Linux操作系统版本,win表示windows操作系统x86_64     计算机CPU架构rpm        rpm包敏捷模式----小步快跑 发布版本的频率比较高 一周到二周发布一次版本

2 软件源码包

原始的程序代码文件,不可直接运行
需编译为二进制的软件包才可安装
源码包一般可在任何的计算机上安装使用

常见源码包格式
···.tar.gz
···.tar.bz2
···.tar.xz
···.zip

3 二进制源码包(特殊的源码包)(.src.rpm)

是一个半成品,安装后不可直接使用
需要rpmbuild重建为真正的rpm包或重建源码包才可直接安装
常见形式:mysql-community-5.7.25-1.e16.src.rpm

linux系统中的软件安装方式

1 rpm工具安装

下载rpm到本地=>使用rpm工具安装

2 yum工具安装

配置yum软件仓库=>使用yum工具安装

3 源码包的安装

1)根据需求进行配置:功能定制,安装路径,配置文件等;
2)使用编译器将源码包编译为二进制软件包;
3)安装到指定位置;
4)源码包的安装特点:
可以在任意平台编译安装,编译出来的软件包非常适应所在机器;
可以在编译的时候,通过配置,讲某些功能进行定制,开启或关闭某些功能。

二进制包rpm包如何管理

1 获取rpm包

1)Redhat/Centos光盘或者官方网站:ftp://ftp.redhat.com
2)推荐网站:
www.rpmfind.
rpm.phone.net
3)相应软件官方网站:
http://www.mysql.com
http://nginx.org/packages/

2 选择合适的rpm包

1)选择合适当前系统的版本号
找不到合适的,才去找别的系统版本好
el6兼容el5,但是el5无法安装el6(向下兼容原则)
2)选择适合当前计算机的cpu的架构
选择x86_64包,只能安装在64位的操作系统上面
i386,i586,i686的软件包可以安装在32位和64位的操作系统上面
noarch 表示这个软件包与硬件的架构无关,可以通用
32位的系统不能安装在64的包
建议:不要跨大版本号去安装软件包,尽量使用当前系统版本自带的安装包去安装

3 管理rpm包

3.1 rpm工具

  • rpm工具管理rpm包
例:rpm -ivh xlockmore-5.31-2.x86_64.rpm
软件包名称要写全

3.2 rpm工具卸载

rpm -e xlockmore

注意:卸载软件的时候只需要写软件包的名字即可,也就是第一部分 就可以

3.3 rpm工具对软件进行升级

rpm -Uvh 软件包
或
rpm -FVH 软件包选项:-v 输出详细信息-h:打印的散列标记,一般和-v配合使用-U:升级软件包,如果该软件包没有安装,会自动帮你安装-F:升级软件包,如果该软件包没有安装,不会自动帮你安装

3.4 查看rpm包的相关信息

查看已经安装的软件的文件列表

rpm -ql xlockmore

查看未安装的rpm包里面的文件列表

rpm -qlp xlockmore-5.31-2.x86_64.rpm

查看已经安装的所有的rpm包

rpm -qa xlockmore

查看已经安装软件的文档类别

rpm -qd xlockmore

查看已经安装软件的配置文件

rpm -qc xlockmore

查看已经安装软件的详细信息

rpm -qi xlockmore

查看知道文件来做哪个rpm包

rpm -qf  文件名

3.5 rpm 工具其他安装选项

–force 表示强制

rpm -ivh 完整的软件安装包的名称  --force   强制安装软件包rpm -e 软件包名 --force   强制卸载软件

–nodeps 忽略依赖关系

rpm -ivh  完整软件包名 --nodeps   忽略依赖关系安装rpm -e  软件包 --nodeps  忽略依赖关系卸载

3.6 其他(了解):

导入公钥用于检查rpm文件的签名

rpm --import key_file

检查rpm包的签名

rpm --checksig  package.rpm

4 yum工具的管理

核心:需要一个软件安装包的仓库,软件仓库是指用来存放软件包和软件包之间依赖关系的地方。
这也就为什么yum可以解决软件安装时候的依赖的原因。

4.1 yum工具安装rpm包

yum功底底层也是在安装rpm包

yum -y install 软件包名yum -y  groupinstll  "包组名"注意:-y可以写 也可以不写,-y取消验证交互,不用去写yes,默认全部是写yes
包组里面包含了很多的软件包。

4.2 yum工具卸载rpm包

yum -y remove 软件包名yum -y groupremove "包组名"

4.3 yum工具升级rpm包

yum update 软件包名

4.4 yum工具其他相关选项

列出仓库里面的软件包

yum list

列出可用仓库

yum  repolist
(配置好了yum源以后,来检测yum源是否配置成功)

清空yum缓存

yum clean all

创建yum缓存

yum makecache

rpm包管理:安装操作都很简单,但是在实际安装过程当中,很多的rpm包在安装的时候都会有软件的依赖,那这个问题如何解决?
方式一:根据提交一个一个软件包进行安装,先解决依赖再回来安装软件
方式二:用是yun install 命令安装rpm软件
yum安装最大的优点:如果安装的时候产生了依赖的问题,不用担心,yum会自动化帮助我们解决这些依赖问题。

源码安装:

首先获取软件源码包
可以去软件的官网去获取,官网的源码包的格式一般是:*.tar.gz

源码安装三步走:

1 配置 ./configure

配置软件的安装路径,也可以不配置,不配置的使用默认路径

--prefix=路径  如果不指定安装路径则默认是:/usr/local
--bindir==路径 指定命令的目录
--etcdir=路径  配置文件的目录
--mandir=路径  文档的路径
--locale= 默认是/share/locale 语言编码

2 编译 make

把软件的源码做成类似rpm的可以直接安装的软件

make (使用gcc 编辑器进行编译)

3 安装软件 make install

把刚才编译好的程序安装到linux操作系统

make install 类似于rpm -ivh

使用源码安装 cmatrix 代码雨软件

首先获取源码包

第一步:对软件解压缩

tar -zxf cmatrix-1.2a.tar.gztar xf cmatrix-1.2a.tar.gz ,因为默认的解压都是使用的gzip 工具

第二步:配置./configure文件

[root@localhost ~]# cd cmatrix-1.2a
[root@localhost cmatrix-1.2a]# ./configure

第三步:编译

[root@localhost cmatrix-1.2a]# make

第三步:安装

[root@localhost cmatrix-1.2a]# make install

执行软件

[root@localhost cmatrix-1.2a]# ./cmatrix

注意:若在make时报错,一般是缺少curses.h:和gcc
可以在配置之前 安装依赖包

yum install ncurses-devel -yyum install gcc gcc-c++ -y

源码安装axel 软件

axel时多线程下载工具,相比
wget(单线程下载工具),下载软件的速度会更快一些

第一步:下载软件并且解压

[root@localhost ~]# tar xf axel-2.4.tar.gz

第二步:根据需求进行配置

指定安装路径为/opt/axel
[root@localhost axel-2.4]# ./configure --prifx=/opt/axel一般情况我们指定的安装路径放在opt目录

第三步:编译

[root@localhost axel-2.4]# make

第四步:进行安装操作

[root@localhost axel-2.4]# make install

执行axel命令

[root@localhost axel-2.4]# ./ axel

拓展:若报错说命令没有被发现
分析错误的原因:
①命令本身没有安装;
②命令安装了,但是没有找到;
没有找到的原因:因为操作系统自己不知道去/opt/axel/bin目录下去找这个命令
说明:Linux操作系统 PATH 环境变量,该变量里面保存的是命令的路径,只要在PATH中有命令所在的路径,就可以找到
③命令输入错误。

查看当前系统的环境变量

echo $PATH

将axel 命令 添加到环境变量中去

分为两种方法:

临时添加:
export PATH=$PATH:/opt/axel/bin
当操作系统重启后,临时添加就不生效了。永久添加:
vi /etc/profile
在这个文件的最下面,输入:
export PATH=$PATH:/opt/axel/bin
保存退出;重新读取配置文件
source /etc/profle

此时运行axel软件则不会报错

./axel http://mirrors.163.com/centos/7/os/x86_64/RPM-GPG-KEY-CentOS-7

源码卸载软件:

进入解压包的目录里面

make uninstall //卸载安装make distclean //卸载编译和配置过程

Linux下的软件安装方式+源码安装软件cmatrix代码雨相关推荐

  1. linux卸载mysql和myodbc_linux下卸载mysql rpm安装方式和源码安装方式的两种方法

    转自http://hi.baidu.com/myphpzone/blog/item/562e496f0dfbb1d680cb4a2d.html linux下MySQL卸载方法 一.源码安装的卸载方法: ...

  2. mysql5.5.8编译安装_Mysql应用linux下mysql 5.5.8 源码编译安装

    <MysqL应用linux下MysqL 5.5.8 源码编译安装>要点: 本文介绍了MysqL应用linux下MysqL 5.5.8 源码编译安装,希望对您有用.如果有疑问,可以联系我们. ...

  3. 详解linux下auto工具制作Makefile源码包(制作篇)

    2019独角兽企业重金招聘Python工程师标准>>> 详解linux下auto工具制作Makefile源码包(制作篇) 水木杨 一.     概述 为了更好的制作configure ...

  4. linux下 如何调试php,linux下使用gdb对php源码调试

    title: linux下使用gdb对php源码调试 date: 2018-02-11 17:59:08 tags: --- linux下使用gdb进行php调试 调试了一些php的漏洞,记录一下大概 ...

  5. 软件包的安装(源码安装)

    为什么要进行源码安装软件包呢? 由于我们系统自带都是一些已经编译好的rpm安装包,这些rpm包的更新的速度大约是每三年更新一次,对于那些具有新功能或者具有更多功能的的软件包,官方只提供给我们那些以c语 ...

  6. 20220517 Python 制作一个儿童学习软件 (附源码和软件下载) 包含语音合成 视频播放 pyqt pptsx3 Qmovie request pygame 音频播放

    20220517 Python 制作一个儿童学习软件 (附源码和软件下载) 包含语音合成 视频播放 pyqt pptsx3 Qmovie request pygame 音频播放 文章目录 202205 ...

  7. Linux软件安装管理---源码安装

    在Linux平台下,软件包的类型可以划分为两类:源码包.二进制包. 源码包: 即程序软件的源代码(一般也叫Tarball,即将软件的源码以tar打包后再压缩的资源包). 二进制包: 如 Red Hat ...

  8. linux运行软件代码,Linux软件安装-详细源码安装过程

    1.简介 软件的安装是linux学习时的重中之重,*nux上重要思维哲 学组合若干小功能进而成为一个可用可维护的系统平台.那么在 操作系统构建完成之时,除非内核等支持系统必需软件之外,可 拓展可维护的 ...

  9. opencv4.0在linux下编译,Ubuntu 18.04源码编译安装OpenCV 4.0步骤

    Ubuntu 18.04下标准常规安装方法安装的OpenCV版本比较低,想尝鲜使用4.0版本,只好源码安装. 安装环境 OS:Ubuntu 18.04 64 bit 显卡:NVidia GTX 108 ...

最新文章

  1. 2021年大数据常用语言Scala(十六):基础语法学习 列表 List 重点掌握
  2. Xcode 不用签名编译程序
  3. 放弃Windows,用国产开源替换政府办公系统!这个国家做到了
  4. iOS GorupBy
  5. 7价 半导体掺杂_天津大学封伟团队:新型半导体二维原子晶体锗硅烷材料的带隙调控...
  6. 通过八叉树进行空间分割和搜索
  7. ramdisk根文件系统+initramfs
  8. zblog修改上传服务器,【记录有用】ZBlog备份、恢复与搬家(换空间换服务器)方法...
  9. csdn上讲一个实时计算架构比较清晰的一篇文章
  10. [转载]jquery ajax/post/get 传参数给 mvc的action
  11. validation 开始日期 结束日期_Spring Boot集成validation用于优雅的校验API参数的合法性...
  12. LOL英雄联盟首页以及攻略页面制作
  13. 多开助手完美版,APP一键多开,支持安卓10
  14. PMP备考图表汇总详解
  15. 5-6中央处理器-多处理器系统硬件多线程
  16. 关于支付宝申请APP支付和网页支付在申请时需要的材料
  17. Python 教你训练一个98%准确率的微博抑郁文本分类模型(含数据)
  18. 世纪佳缘再出事故,区块链能成为搅动婚恋行业的新鲶鱼吗?
  19. 橙汁的面试经验汇总(百度、平安壹钱包、诺瓦、快手、bigo、海信、奇安信、小米、迈瑞医疗、顺丰、网易互娱、多益游戏、京东、穆迪)
  20. 计算 1+3+5+...+99 的和

热门文章

  1. Linux查看硬件信息以及驱动设备的命令
  2. Qt线程错误记录registered using qRegisterMetaType()
  3. SYS/BIOS内存分配相关问题
  4. python爱心源代码集锦(16款)
  5. selenium模拟浏览器-----爬取马蜂窝地区全部景点
  6. Docker——阿里云搭建Docker Swarm集群
  7. ESP8266(ESP-12F)+DS18B20+贝壳物联
  8. 35美金可以在Fiverr上让人帮你设计1个NFT卡通头像
  9. NeuroSLAM 论文解析
  10. uniapp 全局数据(globalData)的设置,获取,更改