rpm包管理和源码包管理
(1)软件类型
源码包 需要gcc编译 nginx-1.12.1.tar.gz
二进制包 已编译 mysql-community-common-5.7.12-1.el7.x86_64.rpm
常见的二进制包
系统平台 包类型 工具 在线安装(自动解决依赖关系)
Redhat/Centos RPM rpm,rpmbuild yum
Ubuntu/Debian DPKG dpkg apt
注意:不管是源码包,还是二进制包,安装时都可能会有依赖问题
软件包名 版本号version 发布版本release 系统平台(i386,x86_64,noarch)
mysql-community-common 5.7.12 1.el7 x86_64
# uname -m //查看系统架构
x86_64
# cat /etc/redhat-release //查看系统平台
CentOS Linux release 7.3.1611 (Core)
(2)rpm包管理
需要手动解决包的依赖关系
1)安装
https://pkgs.org/
rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/n/ntfs-3g-2017.3.23-1.el7.x86_64.rpm //url安装
rpm -ivh ntfs-3g-2017.3.23-1.el7.x86_64.rpm //本地安装
rpm -Uvh ntfs-3g-2017.3.23-1.el7.x86_64.rpm //升级
额外选项:
--nosignature //不检验软件包的签名
--force //强制安装软件包,相当于yum reinstall ,重新安装软件,文件缺失可以重新安装
--nodeps //忽略依赖关系
rpm包安装信息存储到本地RPM数据库中
ldconfig //加载当前系统所有库文件
ldconfig -p //打印当前系统加载的库文件
2)查询
rpm -q vsftpd //查询指定包是否安装
rpm -qa vsftpd //从当前系统所有安装包中查询指定包是否安装
rpm -ql vsftpd //查询vsftpd安装的文件
rpm -qc vsftpd //查询vsftpd包的配置文件
rpm -qf /usr/sbin/vsftpd //查询该文件属于哪个rpm包
rpm -qi vsftpd //查询包的information
rpm -qd vsftpd //查询安装的帮助文档
3)卸载
rpm -e vsftpd //卸载包,如果包有依赖,默认情况下无法卸载
rpm -e vsftpd --nodeps //忽略依赖关系卸载
yum remove vsftpd //卸载包的同时,如果有其它的依赖包也会把卸载掉依赖包
(3)源码包管理:源码编译安装三部曲
例:安装nginx
yum install pcre pcre-devel openssl openssl-devel gcc make zlib-devel -y
mkdir /tools
cd /tools/
wget http://tengine.taobao.org/download/tengine-1.5.1.tar.gz
useradd nginx -s /sbin/nologin
tar xf tengine-1.5.1.tar.gz
cd tengine-1.5.1
./configure --user=nginx --group=nginx --prefix=/usr/local/nginx1.5.1 --with-http_stub_status_module --with-http_ssl_module \ --with-http_upstream_check_module
make && make install
ln -sv /usr/local/nginx1.5.1/ /usr/local/nginx
echo "export PATH=/usr/local/nginx/sbin:$PATH" >>/etc/profile
source /etc/profile
echo "/usr/local/nginx/sbin/nginx" >>/etc/rc.local
nginx
源码安装三部曲
./configure
指定安装路径,例如--prefix=/usr/local/nginx
启用或禁用某个功能,例如 --enable-ssl ,--disable-filter
和其它软件关联,例如--with-pcre
检查安装环境,例如是否有编译器,是否满足安装软件的依赖需求
最终生成makefile文件
make //按照makefile文件编译,可以使用-j 2 指定两颗cpu编译,优化编译器参数
make install //按makefile定义的文件路径安装
rpm包管理和源码包管理的更多相关文章
- 安装包RPM包或源码包
RPM工具 # mount /dev/cdrom /mnt 挂载光盘 # rpm 软件包管理器 -i 安装(需要安装包完整名称) -v 可视化 -h 显示安装进度 ...
- yum更换国内源、yum下载rpm包、源码包安装 使用介绍
第5周第4次课(4月19日) 课程内容: 7.6 yum更换国内源7.7 yum下载rpm包7.8/7.9 源码包安装 7.6 yum更换国内源 当yum仓库的软件不好用时,例如很多yum源都是国外的 ...
- RPM包或源码包
安装RPM包或源码包 点击vmware右下角光驱连接. 安装rpm包 -i:表示安装 -v:表示可视化 -h:表示显示安装进度 (同时使用) --force:表示强制安装,即使覆盖属于其他包的文件也要 ...
- 安装RPM包或者源码包
RPM工具 RPM他是以一种数据库记录的方式将我们所需要的套件安装到linux主机的一套管理程序关于RPM各个选项的含义如下-i:表示安装-v:表示可视化-h:表示安装进度在安装RPM包时,常用的附带 ...
- 【MySQL】Linux下MySQL 5.5、5.6和5.7的RPM、二进制和源码安装
[MySQL]Linux下MySQL 5.5.5.6和5.7的RPM.二进制和源码安装 1.1 BLOG文档结构图 1.2 前言部分 1.2.1 导读和注意事项 各位技术爱好者,看完本文后, ...
- 软件包管理:源码包管理-源码包与RPM包的区别
RPM会安装在默认位置,源码包会安装在指定位置. 绝大多数ROM包遵循此规范.写软件包是就固定好了. 主要影响体现在对服务的管理方法,服务的管理分三种:启动,重启动,停止. 启动时使用绝对路径来启动. ...
- linux笔记:RPM软件包管理-源码包管理
源码包和rpm包的区别: 源码包安装过程: 编译安装前准备(执行./configure --prefix=路径 来配置软件的安装位置,以及做其他的配置和检查): 编译和安装(直接在目录下执行make和 ...
- Linux-软件包管理-RPM安装位置\源码包安装位置
rpm -ql httpd 查看apache包中文件的安装位置 find /etc -name httpd 查找apache程序的启动执行httpd所在位置 cd /etc/rc.d/init.d 切 ...
- linux软件管理 源码包
源码包安装位置 安装在指定位置当中,一般是 /usr/local/软件名/ 注意: 需要指定安装路劲为了便于卸载,因为源码包的是没有卸载命令的,它的的卸载方式就是把对应安装文件夹删除了. 所以如果 ...
随机推荐
- simpleDateFormat的 学习
http://blog.csdn.net/qq_27093465/article/details/53034427
- udhcpd源码分析2--读取配置文件
1:重要的结构体 读取配置文件信息到全局的结构体struct server_config_t server_config中,这个结构在很多文件中都有引用到很重要. /* dhcpd.h */ stru ...
- devDependencies 和 dependencise 的区别
在使用 npm install 安装模块或者插件的时候,在命令中可以添加俩种参数把他们写入到 pakeage.json 文件里面去: --save ( 简写 -S ) --save-dev ( 简写 ...
- Debug模式下加载文件,运行程序异常的慢
今天在进行单元测试的时候,debug模式下加载速度很慢,但是run模式下速度很快. 原因:在debug模式下,断点位置不当,解决办法 移除编译器中的所有断点.
- linux shell读取配置文件
配置文件CoverageInfo FTP_URL=ftp://svn-fb.sicent.com:21/jenkins/Jifei_Repo/OL-2/IDC_Platform/bar_seats_c ...
- shell 给未定义的变量设定默认值 ${parameter:-word}
参考: [ Unix & Linux ] Shell Demo $echo ${JENKINS_VERSION:-2.7.4} 2.7.4 $JENKINS_VERSION=2.99 $ech ...
- MyBatis 系列五 之 延迟加载、一级缓存、二级缓存设置
MyBatis的延迟加载.一级缓存.二级缓存设置 首先我们必须分清延迟加载的适用对象 延迟加载 MyBatis中的延迟加载,也称为懒加载,是指在进行关联查询时,按照设置延迟加载规则推迟对关联对象的se ...
- gridveiw的使用
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI ...
- 总有你要的编程书单(GitHub )
目录 IDE IntelliJ IDEA 简体中文专题教程 MySQL 21分钟MySQL入门教程 MySQL索引背后的数据结构及算法原理 NoSQL Disque 使用教程 Neo4j .rb 中文 ...
- Apache2.4+Tomcat7 集群
Apache2.4+Tomcat7 集群: 1.下载并安装相对应的软件 apache下载地址:http://httpd.apache.org/ 这里使用apache2.4 tomcat下载地址:htt ...