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/软件名/ 注意: 需要指定安装路劲为了便于卸载,因为源码包的是没有卸载命令的,它的的卸载方式就是把对应安装文件夹删除了. 所以如果 ...
随机推荐
- (转)Django发送html邮件
本文转自http://blog.csdn.net/yima1006/article/details/8991145 send_mail(subject, message, from_email, re ...
- UVA 10766 Organising the Organisation
https://vjudge.net/problem/UVA-10766 题意: n个员工,除总经理外每个人只能有一个直接上级 有m对人不能成为直接的上下级关系 规定k为总经理 问员工分级方案 无向图 ...
- 数据结构:Rope
以BZOJ1507为例,这里仅仅展示动态区间问题的一些典型操作,包括插入删除和修改,查询的话不支持按顺序查询 使用起来很简单很方便 #include<cstdio> #include< ...
- 替换Jar包中的一个文件 Replace a file in a JAR
例如: jar uf myJarFile.jar com\vsoft\servlet\myServlet.class This will replace the class myServlet.cla ...
- [洛谷P3401] 洛谷树
洛谷题目连接:洛谷树 题目背景 萌哒的Created equal小仓鼠种了一棵洛谷树! (题目背景是辣鸡小仓鼠乱写的QAQ). 题目描述 树是一个无环.联通的无向图,由n个点和n-1条边构成.树上两个 ...
- MyBatis框架的使用及源码分析(十) CacheExecutor,SimpleExecutor,BatchExecutor ,ReuseExecutor
Executor分成两大类,一类是CacheExecutor,另一类是普通Executor. 普通类又分为: ExecutorType.SIMPLE: 这个执行器类型不做特殊的事情.它为每个语句的执行 ...
- mysql 索引 和mysql 的引擎
1.索引的特点 索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针.更通俗的说,数据库索引好比是一本书前面的目录,能加快数据库的查询速度. ...
- 大聊Python----json与pickle数据序列化
用于序列化的两个模块 ☆json,用于字符串和python数据类型间进行转换 ☆pickle,用于python特有的类型和python的数据类型间进行转换 Json模块提供了四个功能:dumps.du ...
- js函数定义方法
1.函数声明 其语法为 function functionName(){ //函数体 } 首先是function关键字,然后是函数名,其重要特征是函数声明提升,即在执行代码之前会先读取函数声明,使其在 ...
- ubuntu 下安装 activate-power-mode
转自网络 被朋友圈中的atom的activate-power-mode 震撼到了,于是想试试. 步骤如下 首先安装atom: sudo add-apt-repository ppa:webupd8te ...