Linux 软件的安装
2016-01-18 10:44
363 查看
1.通过源码安装软件
什么是源码包?
源码包就是一些附带有程序的源代码、configure文件、说明文档的安装包
一般以tar打包。在用压缩软件进行压缩,比如tar.gz或者tar.bz2文件
需要自定义参数进行编译,之后进行安装
以memcached的源码包安装为例:
最新安装路径: http://memcached.org/files/memcached-1.4.25.tar.gz
在Linux终端输入:wget http://memcached.org/files/memcached-1.4.25.tar.gz(wget 需要Linux网络链接正常)
下载成功后,需要解压缩指令 tar xzvf memcached-1.4.25.tar.gz
configure
自定义参数
配置安装环境,必要性检查
生成makefile文件
make&install
编译生成二进制文件
执行安装
使用源码包进行软件安装过程
获取源码安装包,如去官网下载
解压缩,阅读install和readme文件,获取安装说明
根据安装说明安装好该软件依赖的其他软件
通过运行configure文件,执行检查安装环境,定义必要参数(所依赖的其他软件和参数)通过后,建立makefile文件
根据声生成的makefile文件,通过make指令进行编译操作
根据makefile中要install的内容,将上步中变异好的二进制文件安装到系统中
常用指令
./configure -help,查看参数信息,简历makefile文件
make clean,读取makefile中关于clean的内容执行clean操作(非必须)
make,根据makefile中的设置执行编译操作
make install,将编译的二进制文件安装到系统中
2.RPM、SRPM、YUM概述
RPM
RedHat Package Manager 的简称,RedHat包管理器
以数据库记录的方式将软件安装到Linux
软件包事先编译好并且打包成RPM机制的文件,类似于Windows的安装程序
软件信息都已记录在了本地数据库中,方便查询、升级、卸载
不允许自定义参数和设置、限制较多
SRPM
Source RPM,附带源代码的RPM包,扩展名为src.rpm命名
不可以直接安装,需要通过编译后再安装
可以修改参数文件自定义配置项
和RPM比较类似
YUM
Yellow dog Updater Modified的简称,基于RPM包管理
能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖关系,并且一次安装所有依赖的软件包,无需繁琐的一次次下载、安装
使用简单、方便。相比windows的软件安装更加方便,类似于在java web项目开发中的Maven,自动管理这种依赖关系。
3.使用RPM安装软件
默认安装路径
在windows下,软件安装的默认路径是在C盘下的一个命名为Program File的路径下单独命名一个软件的目录,所有和该软件相关的文件都安装在该路径下
在Linux下,
配置文件,一般放在/etc目录下
可执行文件,/usr/bin
程序使用的函数库,/usr/lib
软件使用手册、说明,/usr/share/doc
软件的详细说明,/usr/share/man man page
RPM安装
www.rpmfind.net(法国里昂一个查找rpm的服务)下载安装
Linux镜像挂在光盘安装
rpm [-ivh] rpm1 rpm2------安装rpm1、rpm2并显示进度和详情
--nodeps:忽略所有依赖问题执意安装
--replacefiles:对应已经安装过的某个文件进行覆盖安装
--replacepkgs:对已经安装过的软件重新安装
--force:相当于--replacefiles和--replacepkgs
--test:测试该软件能否被正确安装(rpm -ivh fileName --test)
--justdb:RPM数据库损坏或者产生错误时,更新数据库信息
--nosignature:忽略数字签名的检查
--prefix:改变软件的默认安装路径
--noscripts:禁止RPM执行一些后置指令,如一些初始化指令(类似于在windows环境下安装软件成功后会初始化一些配置等)
RPM升级
-Uvh:如果安装则更新,没有安装直接安装
rpm -qa python(查看当前python安装的版本) rpm -Uvh python-1.x.x --nodeps(对python进行不依赖升级)
-Fvh:只有软件安装过才会升级,进行纯粹的升级
RPM查询
-q:只查询软件是否安装
-qa:列出本机安装的所有软件名称,可以通过|grep过滤
-qi:列出软件的详细信息,开发商、版本、说明等
-ql:列出该软件所有的文件,躲在目录的完整名
-qc:列出该软件所有的配置文件
-qR:列出该软件依赖的其他软件
-qf:查询某个文件属于哪个软件所有
RPM验证
-V:查询软件所有被修改过的文件
-Va:列出本机所有有可能被修改过的程序文件
-Vp:接文件名,列出该软件可能被修改的文件
RPM的卸载与数据库重建
主要要从上到下一次卸载,先卸载不被其他任何软件依赖的软件
-e:卸载软件(rpm -e python)
-rebuilddb:重建RPM的数据库
4.使用YUM安装软件
安装好Linux系统之后,Linux服务商(RedHat)需要我们注册一下,才能使用yum安装软件,类似windows的注册一样。这里,由于用yum安装软件可能会对系统Linux造成损坏,所以在安装软件之前,我们需要将当前系统快照保存一下,类似windows中的系统备份一样,以供我们在安装软件过程中对系统造成损坏之后,可以“一键还原”,避免重装系统的麻烦。
Liunx的注册比较麻烦和繁琐。所以我们可以事先编辑好一个Linux注册配置的shell脚本,
脚本内容:
#!/bin/bash
rpm -qa |grep yum|xargs rpm -e -nodeps
wget http://mirrors.163.com/centos/5/os/i386/CentOS/yum-3.2.22-40.el5.centos.noarch.rpm
wget http://mirrors.163.com/centos/5/os/i386/CentOS/yum-fastestmirror-1.1.16-21.el5.centos.noarch.rpm
wget http://mirrors.163.com/centos/5/os/i386/CentOS/yum-metadata-parser-1.1.2-4.el5.i386.rpm
rpm -ivh yum-*
cd /etc/yum.repos.d/
mv rhel-debuginfo.repo rhel-debuginfo.repo.bakup
mv rhel-source.repo rhel-source.repo.bakup
wget http://www.linuxidc.com/files/2001/05/06/CentOS-Base.repo
yum makecache
编写保存shell脚本:vim yumInstall.sh
运行脚本:sh yumInstall.sh(这个运行的操作具体是卸载RHEL的yum,然后安装CentOS的yum)
查询 yum[list|infosearch|provides|whatprovides] 参数
search:查询某个程序的名称或者描述(yum search mysql)
list:列出当前yum所管理的所有软件以及版本(rpm -qa) ----yum list
info:查询软件的功能版本说明(rpm -qai) ----yum info mysql
provides:通过文件查询所属软件(rpm -qf)
安装、升级,yum[install|update]程序名称
安装 yum install mysql
升级 yum update mysql
卸载程序 yum[remove]
yum remove mysql
yum配置
/etc/yum.repos.d/CentOS-Base.repo
yum clean[package|headers|all]
缓存/var/cache/yum
什么是源码包?
源码包就是一些附带有程序的源代码、configure文件、说明文档的安装包
一般以tar打包。在用压缩软件进行压缩,比如tar.gz或者tar.bz2文件
需要自定义参数进行编译,之后进行安装
以memcached的源码包安装为例:
最新安装路径: http://memcached.org/files/memcached-1.4.25.tar.gz
在Linux终端输入:wget http://memcached.org/files/memcached-1.4.25.tar.gz(wget 需要Linux网络链接正常)
下载成功后,需要解压缩指令 tar xzvf memcached-1.4.25.tar.gz
configure
自定义参数
配置安装环境,必要性检查
生成makefile文件
make&install
编译生成二进制文件
执行安装
使用源码包进行软件安装过程
获取源码安装包,如去官网下载
解压缩,阅读install和readme文件,获取安装说明
根据安装说明安装好该软件依赖的其他软件
通过运行configure文件,执行检查安装环境,定义必要参数(所依赖的其他软件和参数)通过后,建立makefile文件
根据声生成的makefile文件,通过make指令进行编译操作
根据makefile中要install的内容,将上步中变异好的二进制文件安装到系统中
常用指令
./configure -help,查看参数信息,简历makefile文件
make clean,读取makefile中关于clean的内容执行clean操作(非必须)
make,根据makefile中的设置执行编译操作
make install,将编译的二进制文件安装到系统中
2.RPM、SRPM、YUM概述
RPM
RedHat Package Manager 的简称,RedHat包管理器
以数据库记录的方式将软件安装到Linux
软件包事先编译好并且打包成RPM机制的文件,类似于Windows的安装程序
软件信息都已记录在了本地数据库中,方便查询、升级、卸载
不允许自定义参数和设置、限制较多
SRPM
Source RPM,附带源代码的RPM包,扩展名为src.rpm命名
不可以直接安装,需要通过编译后再安装
可以修改参数文件自定义配置项
和RPM比较类似
YUM
Yellow dog Updater Modified的简称,基于RPM包管理
能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖关系,并且一次安装所有依赖的软件包,无需繁琐的一次次下载、安装
使用简单、方便。相比windows的软件安装更加方便,类似于在java web项目开发中的Maven,自动管理这种依赖关系。
3.使用RPM安装软件
默认安装路径
在windows下,软件安装的默认路径是在C盘下的一个命名为Program File的路径下单独命名一个软件的目录,所有和该软件相关的文件都安装在该路径下
在Linux下,
配置文件,一般放在/etc目录下
可执行文件,/usr/bin
程序使用的函数库,/usr/lib
软件使用手册、说明,/usr/share/doc
软件的详细说明,/usr/share/man man page
RPM安装
www.rpmfind.net(法国里昂一个查找rpm的服务)下载安装
Linux镜像挂在光盘安装
rpm [-ivh] rpm1 rpm2------安装rpm1、rpm2并显示进度和详情
--nodeps:忽略所有依赖问题执意安装
--replacefiles:对应已经安装过的某个文件进行覆盖安装
--replacepkgs:对已经安装过的软件重新安装
--force:相当于--replacefiles和--replacepkgs
--test:测试该软件能否被正确安装(rpm -ivh fileName --test)
--justdb:RPM数据库损坏或者产生错误时,更新数据库信息
--nosignature:忽略数字签名的检查
--prefix:改变软件的默认安装路径
--noscripts:禁止RPM执行一些后置指令,如一些初始化指令(类似于在windows环境下安装软件成功后会初始化一些配置等)
RPM升级
-Uvh:如果安装则更新,没有安装直接安装
rpm -qa python(查看当前python安装的版本) rpm -Uvh python-1.x.x --nodeps(对python进行不依赖升级)
-Fvh:只有软件安装过才会升级,进行纯粹的升级
RPM查询
-q:只查询软件是否安装
-qa:列出本机安装的所有软件名称,可以通过|grep过滤
-qi:列出软件的详细信息,开发商、版本、说明等
-ql:列出该软件所有的文件,躲在目录的完整名
-qc:列出该软件所有的配置文件
-qR:列出该软件依赖的其他软件
-qf:查询某个文件属于哪个软件所有
RPM验证
-V:查询软件所有被修改过的文件
-Va:列出本机所有有可能被修改过的程序文件
-Vp:接文件名,列出该软件可能被修改的文件
RPM的卸载与数据库重建
主要要从上到下一次卸载,先卸载不被其他任何软件依赖的软件
-e:卸载软件(rpm -e python)
-rebuilddb:重建RPM的数据库
4.使用YUM安装软件
安装好Linux系统之后,Linux服务商(RedHat)需要我们注册一下,才能使用yum安装软件,类似windows的注册一样。这里,由于用yum安装软件可能会对系统Linux造成损坏,所以在安装软件之前,我们需要将当前系统快照保存一下,类似windows中的系统备份一样,以供我们在安装软件过程中对系统造成损坏之后,可以“一键还原”,避免重装系统的麻烦。
Liunx的注册比较麻烦和繁琐。所以我们可以事先编辑好一个Linux注册配置的shell脚本,
脚本内容:
#!/bin/bash
rpm -qa |grep yum|xargs rpm -e -nodeps
wget http://mirrors.163.com/centos/5/os/i386/CentOS/yum-3.2.22-40.el5.centos.noarch.rpm
wget http://mirrors.163.com/centos/5/os/i386/CentOS/yum-fastestmirror-1.1.16-21.el5.centos.noarch.rpm
wget http://mirrors.163.com/centos/5/os/i386/CentOS/yum-metadata-parser-1.1.2-4.el5.i386.rpm
rpm -ivh yum-*
cd /etc/yum.repos.d/
mv rhel-debuginfo.repo rhel-debuginfo.repo.bakup
mv rhel-source.repo rhel-source.repo.bakup
wget http://www.linuxidc.com/files/2001/05/06/CentOS-Base.repo
yum makecache
编写保存shell脚本:vim yumInstall.sh
运行脚本:sh yumInstall.sh(这个运行的操作具体是卸载RHEL的yum,然后安装CentOS的yum)
查询 yum[list|infosearch|provides|whatprovides] 参数
search:查询某个程序的名称或者描述(yum search mysql)
list:列出当前yum所管理的所有软件以及版本(rpm -qa) ----yum list
info:查询软件的功能版本说明(rpm -qai) ----yum info mysql
provides:通过文件查询所属软件(rpm -qf)
安装、升级,yum[install|update]程序名称
安装 yum install mysql
升级 yum update mysql
卸载程序 yum[remove]
yum remove mysql
yum配置
/etc/yum.repos.d/CentOS-Base.repo
yum clean[package|headers|all]
缓存/var/cache/yum
相关文章推荐
- Linux快捷键-命令行下
- Linux给用户增加sudo权限
- Linux基础入门学习笔记四
- Linux学习笔记:修改进程的优先级
- Linux定时任务执行crontab
- 简明Linux命令行笔记:mv
- CentOS6.5安装freeswitch以及啟動
- linux下信号键
- LINUX下的host文件作用
- linux下使用mysql数据库的总结
- 用户空间与内核空间数据交换的方式------seq_file
- centos彻底删除mysql
- Linux文件打包压缩、解压缩、备份命令使用方法(转载)
- Linux基础入门学习笔记三
- linux死锁检测的一种思路【转】
- Linux环境下使用rsyslog管理日志
- Linux工具快速上手,Linux很实用命令
- 你值得拥有:25个Linux性能监控工具
- Linux查看系统开机时间
- linux下的gdb调试工具--断点调试