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/软件名/ 注意: 需要指定安装路劲为了便于卸载,因为源码包的是没有卸载命令的,它的的卸载方式就是把对应安装文件夹删除了. 所以如果 ...
随机推荐
- springMVC新理解
springmvc 中@Controller和@RestController的区别 1. Controller, RestController的共同点 都是用来表示spring某个类的是否可以接收HT ...
- zookeeper源码分析之leader选举
zookeeper提供顺序一致性.原子性.统一视图.可靠性保证服务zookeeper使用的是zab(atomic broadcast protocol)协议而非paxos协议zookeeper能处理并 ...
- 51Nod 1133 不重叠的线段 | 典型贪心
Input示例 3 1 5 2 3 3 6 Output示例 2 题意:给出n条一维线段,求不重合的最多线段数. 解析:这个是典型的贪心算法的区间问题. 贪心策略:每次取尽可能短的区间,而且保证相互之 ...
- linux 执行shell脚本的4种方法总结
bash shell 脚本的方法有多种,假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/data/shell目录中并已有执行权限. 方法一:切换到shell脚本所在的目录(此时, ...
- 【ALB学习笔记】基于多线程方式的串行通信接口数据接收案例
基于多线程方式的串行通信接口数据接收案例 广东职业技术技术学院 欧浩源 1.案例背景 在本博客的<[CC2530入门教程-06]CC2530的ADC工作原理与应用>中实现了电压数据采集的 ...
- jQuery清空表单方法
$(':input', '#form1') .not(':button, :submit, :reset, :hidden') .val('') .removeAttr('checked') .rem ...
- bzoj 1079 DP
比较容易看出来是DP,但是如果我们记录每一种颜色还剩多少种的话,消耗的转移的时间复杂度5^15,但是我们考虑到每一种颜色,如果数量相同的话,其实是等效的,所以我们用w[a][b][c][d][e][l ...
- hdu 1233 还是畅通工程 (最小生成树)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1233 还是畅通工程 Time Limit: 4000/2000 MS (Java/Others) ...
- 网络应用框架Netty快速入门
一 初遇Netty Netty是什么? Netty 是一个提供 asynchronous event-driven (异步事件驱动)的网络应用框架,是一个用以快速开发高性能.可扩展协议的服务器和客户端 ...
- Linux 入门记录:二、Linux 文件系统基本结构
一.树状目录结构 Linux 文件系统是一个倒置的单根树状结构.文件系统的根为"/":文件名严格区分大小写:路径使用"/"分割(Windows 中使用" ...