Linux下常用的3种软件安装方式
一:Linux源码安装
1、解压源码包文件
源码包通常会使用tar工具归档然后使用gunzip或bzip2进行压缩,后缀格式会分别为.tar.gz与.tar.bz2,分别的解压方式:
tar -zxvf FileName.tar.gz
tar -jxvf FileName.tar.bz2
tar 对文件进行压缩或解压 tar [参数] [文件]
-c 压缩文件
-x 解压文件
-t 查看压缩包内有哪些文件
-z 用Gzip压缩或解压
-j 用bzip2压缩或解压
-v 显示压缩或解压过程信息
-f 目标文件名
-P 保留原始权限和属性
-p 使用绝对路径压缩
-C 指定解压到的目录
2、切换到解压后的目录
cd FileDirectory
3、准备编译工作
在开始安装服务之前,需要执行configure脚本,会自动的对当前系统进行一系列的评估,如源文件、软件依赖库、编译器、
汇编器、连接器检查等等,如果有需要,还可以使用-prefix参数来指定程序的安装路径,而当脚本检查系统环境符合要求后,
则会在当前目录下生成一个Makefile文件。
./configure -prefix=/usr/local/program
4、生成安装程序
上步生成的Makefile文件会保存有系统环境依赖关系的安装规则,接下来需要使用make命令来根据Makefile文件提供
的规则使用合适的SHELL来编译所有依赖的源码,然后make命令会生成一个最终可执行的安装程序。
make
5、安装服务程序
如果在configure脚本阶段中没有使用-prefix参数,那么程序一般会被默认安装到/usr/local/bin目录中。
make install
6、清理临时文件(可选):
make clean
7、卸载服务程序命令(需要才执行)
make uninstall
8、查看安装信息
whereis 命令定位可执行文件、源代码文件、帮助文件在文件系统中的位置。这些文件的属性应属于原始代码,二进制文件,或是帮助文件。
whereis [-bmsu] [BMS 目录名 -f ] 文件名
-b 搜索文件的二进制部分。
-m 搜索文件的手册部分。
-s 搜索文件的源部分。
-u 没有说明文档的文件
-B、-M 和 -S 标志可以用于更改或限制 whereis 命令搜索的位置。由于该程序为了运行得更快而使用了 chdir 子例程,所以用 -M、-S 和 -B 标志目录列表给出的路径名必须是完整的;例如,它们必须以一个 / (斜杠)开始。
-B 与 -b 一样,但是添加了要搜索的目录。更改或限制 whereis 命令搜索二进制文件的位置。
-M 与 -m 一样,但是添加了要搜索的目录。更改或限定 whereis 命令搜索手册部分的位置。
-S 与 -s 一样,但是添加了要搜索的目录。更改或限定 whereis 命令搜索源的位置。
-f 终止最后的 -M、-S 或 -B 目录列表并发文件名起始位置信号。
源码包安装会比RPM包安装慢,是因为RPM的软件包是根据特定系统和平台而指定的,经常一种程序会提供很多RPM包
的格式,用户根据系统情况选择适合的RPM包直接安装,而源码包相当于通用型,可以是用于多个系统中,所以需要
运行configure脚本来检测环境,生成对应的安装信息。
二:RPM包安装
rpm [选项] [参数]
-a:查询所有软件包
-e:删除指定的软件包
-f<文件>:查询拥有指定文件的套件;
-h或--hash:显示进度信息
-i:显示包的详细信息
-i<软件包>或--install<软件包>:安装指定的软件包
-l:显示包的文件列表
-p:查询指定的RPM包
-q:使用询问模式
-U<软件包>或--upgrade<软件包>:升级指定的程序包
-v:显示指令执行过程;
-vv:详细显示指令执行过程,便于排错。
常用命令组合:
-ivh:安装显示安装进度--install--verbose--hash
-Uvh:升级软件包--Update;
-qpl: 列出RPM软件包内的文件信息[Query Package list];
-qpi:列出RPM软件包的描述信息[Query Package install package(s)];
-qf:查找指定文件属于哪个RPM软件包[Query File];
-Va:校验所有的 RPM软件包,查找丢失的文件[View Lost];
-e:删除包
--force 强制操作 如强制删除等;
--requires 显示该包的依赖关系;
--nodeps 忽略依赖关系并继续操作
1、安装
rpm -i 需要安装的包文件
rpm -iv 需要安装的包文件(显示安装详情)
rpm -ivh 需要安装的包文件(显示安装详情及进度)
2、升级
rpm -U 需要升级的包文件
rpm -Uvh 需要升级的包文件(显示升级详情及进度)
3、卸载
rpm -e 需要卸载的软件包
注:如果其他程序依赖要卸载的包,系统会提示不能删除,若需要强行删除加上--nodeps,会强制删除,但可能导致
依赖于它的软件不能运行。
4、查看已安装
rpm -qa
5、查看指定包
rpm -qa | grep "软件或者包的名字"
三、yum安装
1、安装
yum install 软件
2、升级
yum update 软件
3、删除
yum remove 软件
4、查看
yum info 软件
5、搜索软件
yum search 软件
6、查看依赖关系
yum deplist 软件
7、查看已安装软件
yum list installded
yum 命令参数列表:
-e 静默执行
-t 忽略错误
-R[分钟] 设置等待时间
-y 自动应答yes
--skip-broken 忽略依赖问题
--nogpgcheck 忽略GPG验证
check-update 检查可更新的包
clean all 清除全部
clean packages 清除临时包文件(/var/cache/yum 下文件)
clean headers 清除rpm头文件
clean oldheaders 清除旧的rpm头文件
deplist 列出包的依赖
list 可安装和可更新的RPM包
list installed 已安装的包
list extras 已安装且不在资源库的包
info 可安装和可更新的RPM包 信息
info installed 已安装包的信息(-qa 参数相似)
install[RPM包] 安装包
localinstall 安装本地的 RPM包
update[RPM包] 更新包
upgrade 升级系统
search[关键词] 搜索包
provides[关键词] 搜索特定包文件名
reinstall[RPM包] 重新安装包
repolist 显示资源库的配置
resolvedep 指定依赖
remove[RPM包] 卸载包
Linux下常用的3种软件安装方式的更多相关文章
- Linux下常用的3种软件安装方式—rpm、yum、tar
一:Linux源码安装 1.解压源码包文件 源码包通常会使用tar工具归档然后使用gunzip或bzip2进行压缩,后缀格式会分别为.tar.gz与.tar.bz2,分别的解压方式: ...
- Linux常用的三种软件安装方式
一:Linux源码安装 1.解压源码包文件 源码包通常会使用tar工具归档然后使用gunzip或bzip2进行压缩,后缀格式会分别为.tar.gz与.tar.bz2,分别的解压方式: ...
- linux 下的两种软件安装方式 —— 源码(编译、安装),编译好的二进制(直接安装)
我们以 GPG(加密工具)为例来说明两种安装方式的区别: 源码(Source code releases,名称中则会含有src等说明信息,tarball:source),先编译再安装 GPU 的源码地 ...
- CentOS下几种软件安装方式
1.rpmRPM RedHat Package Manager(RedHat软件包管理工具)的缩写,这一文件格式名称虽然打上了RedHat的标志, 但是其原始设计理念是开放式的,现在包括OpenLin ...
- linux下C语言三种get输入方式
第一种:scanf() #include "stdio.h" #include "string.h" int main() { ]; scanf("% ...
- Ubuntu 下几种软件安装的方法小结
1.tar.gz软件包的安装 1)解压tar.gz包 .tar.gz -C /home/Desktop # 将软件包名.tar.gz解压到指定的目录下 2)进入解压后的文件目录下 执行“./ ...
- linux下常用的截图、录屏工具
录屏: 在linux下常用的录屏工具有5种,可以baidu或者google下喔,我选用的是recordMydesktop,使用非常方便,用时注意先把每秒桢数调高,否则效果必然很差. 在ubuntu下可 ...
- Linux软件安装方式 - Tarball&RPM&YUM
软件安装 简介 概念详解 # 概念详解 - 开放源码: 程序码, 写给人类看的程序语言, 但机器并不认识, 所以无法执行; - 编译器: 将程序码转译成为机器看的懂得语言, 就类似翻译者的角色; - ...
- Linux下查看mysql、apache是否安装,安装,卸载等操作
Linux下查看mysql.apache是否安装,并卸载. 指令 ps -ef|grep mysql 得出结果 root ? :: /bin/sh /usr/ ...
随机推荐
- ArgumentException: 已添加了具有相同键的项。
此问题出现在asp.net mvc 5 中,前端向后端请求数据,方法的参数是模型,比如 Add(Student m), 结果浏览器显示的状态是500并返回错误提示ArgumentException,如 ...
- 蚂蚁男孩.缓存组件(Framework.Mayiboy.Caching)
它能做什么? 主要是用来方便使用缓存而诞生,该组件封装了RunTimeCache.Memcached.Redis的使用,通过简单配置就能高效快速使用起来. 使用说明 一. 下载源码,自己手动编译 ...
- VS未能正确加载 ”Microsoft.VisualStudio.Editor.Implementation.EditorPackate“包错误解决方法
很久没用VS了,打开后出现未能正确加载 ”Microsoft.VisualStudio.Editor.Implementation.EditorPackate“包的错误,经过一番上网查阅错误得以解决. ...
- s11 day103 luffy项目结算部分+认证+django-redis
1.增加认证用的表 class Account(models.Model): username =models.CharField(,unique=True) email= models.EmailF ...
- Android的基础知识点
一.Intent的2种启动方式 1.显示启动: setClass(“包名”,“启动的Activity.class”); XML文件中启动Activity 2.隐示启动: setAction(" ...
- Docker registry 私有仓库镜像查询、删除、上传、下载 shell
#Docker官方私有仓库registry #官方只提供了API接口,不方便使用,就写了个shell #docker-registry安装配置http://www.cnblogs.com/elvi/p ...
- 通过IntelliJ IDEA创建maven+springmvc+mybatis项目
第一个springmvc+mybatis项目,通过学习极客学院视频(视频案例通过eclipse搭建,网址为http://www.jikexueyuan.com/course/1430.html),发现 ...
- 在node中使用promise上传图片到七牛云
为了分摊个人服务器压力.提升图片下载上传的速度,使用七牛云保存用户上传的图片. 后台基于express搭建的,上传使用七牛云第三方nodejs-sdk.由于七牛云上传图片只能单个进行,并且考虑到上传完 ...
- WebDriver高级应用实例(1)
1.1使用JavaScriptExecutor单击元素 被测网页的网址: http://www.baidu.com Java语言版本的API实例代码 import org.testng.annotat ...
- logcat -- 基本用法
1.Log类是一个日志类,我们可以在代码中使用logcat打印出消息 常见的日志记录方法有: v(String,String) --verbose 显示全部信息 d(String,String) - ...