Linux 基础:软件安装(rpm,yum,源代码)
2016-01-24 15:24
288 查看
Software Installation on Linux
Linux安装分为rpm包(可通过yum或者是rpm命令安装)和源码包(源代码或者是编译过的二进制码)两种。
Linux是开源系统,很多应用都是开源以源代码的形式发布的,源代码形式除了阅读和修改方便以外,还可以兼容多平台,不同平台
rpm包,.rpm结尾,源码编译后的二进制包,看不到源码,但安装速度快,不容易出现安装错误。安装的服务被默认为系统服务(redhat镜像文件本身就是rpm包),包安装在系统默认目录中。程序员在构建rpm包时会约定俗成的指定这些默认目录,使rpm安装的各个文件插入现有系统中的目录(opt,etc...)。删除时使用特定的命令可以自动去多个目录下删除相关文件。
/etc
/usr/bin
/usr/lib
/usr/share/doc + /usr/share/man
源码包安装,.gz结尾,直接解压可以看到原文件。所有的安装文件会在/usr/local 下面,删除一个文件夹即可卸载。因为安装文件仅在/user/local下,不能被一些系统命令启动(root cause系统命令往往是搜索特定路径起作用)如service chkconfig……除非手动去做更改。
service命令只能启动rpm包安装的命令,因为service命令默认搜索路径/etc/rc.d/init.d/(所有rpm方式安装的文件都会在此目录下保存一个启动文件)。只有rpm包安装才会把启动服务放到该路径下,源码包安装不会,如果把源码包的启动文件拷到init.d目录下,service可以识别。
chkconfig --list 查询rpm包自启动状态,可以查看系统安装过的所有rpm包,查看不了源码包安装服务状态。
RPM Software management (rpm 命令管理 & yum 管理)
rpm两种管理方式:rpm命令管理 && yum在线管理
rpm命名规则:名字-版本号-发布次数-适合的Linux平台.硬件平台.rpm
rpm最大问题是依赖问题:树形依赖,环形依赖,库依赖。
noarch 任何硬件平台,不写平台也意味着任何平台
iso/packages 里会有大部分包,但这些包并不会全部安全,从运行效率和安全性的角度考虑,系统管理员会选择minimum的安装方式。如果要自己增加新的组件,将iso文件挂载,进入光盘目录找到需要的rpm包,运行安装命令。
RPM命令管理
可以去 www.rpmfind.net 下载所需要的依赖包,如果是Rhel或者是CentOS 可以去http://mirrors.163.com/centos/6/os/x86_64/Packages/ 下载相关内容
RPM 安装包(rpm -ivh packagename.rpm)
i-install安装 v-verbose显示安装信息 h-hash 显示安装过程
RPM 删除包(rpm -e packagename)
e - erase
RPM 查询安装情况(rpm -qi packagename)
q -query i- information
和grep结合起来非常好用 rpm -qa|grep python 就能轻易找到指定关键词相关的安装包名
rpm -qi python 查询Python安装包的具体信息
rpm -ql python 查询Python应用所在的所有目录
rpm -qf filename查询安装程序中某个文件的名字
Yum 命令管理(最好只用于安装,yum删除会产生级联影响)
安装前提:需要可以联网,需要设置Yum源
Yum源设置
网络Yum源(Redhat的网络yum源需要收费,因此可以删除yum源再重新安装配置其他yum源)
光盘Yum源(挂载redhat/centos.iso,指定光盘为镜像源并进行安装)
Yum安装软件
yum -y install packagename
Yum搜索软件安装情况
yum search packagename
Yum删除软件(Yum最好只用来安装)
yum -y remove packagename(high risk! cascade delete)
Yum 更新软件
yum -y update packagename (high risk!)
Source Code Software
management(有些程序官网只提供源代码包,比如python)
源代码包安装
解压以后查看Install或者是Readme文件,会有详细步骤说明如何安装。
源代码包删除
删除直接删除整个文件夹
Linux安装分为rpm包(可通过yum或者是rpm命令安装)和源码包(源代码或者是编译过的二进制码)两种。
Linux是开源系统,很多应用都是开源以源代码的形式发布的,源代码形式除了阅读和修改方便以外,还可以兼容多平台,不同平台
rpm包,.rpm结尾,源码编译后的二进制包,看不到源码,但安装速度快,不容易出现安装错误。安装的服务被默认为系统服务(redhat镜像文件本身就是rpm包),包安装在系统默认目录中。程序员在构建rpm包时会约定俗成的指定这些默认目录,使rpm安装的各个文件插入现有系统中的目录(opt,etc...)。删除时使用特定的命令可以自动去多个目录下删除相关文件。
/etc
/usr/bin
/usr/lib
/usr/share/doc + /usr/share/man
源码包安装,.gz结尾,直接解压可以看到原文件。所有的安装文件会在/usr/local 下面,删除一个文件夹即可卸载。因为安装文件仅在/user/local下,不能被一些系统命令启动(root cause系统命令往往是搜索特定路径起作用)如service chkconfig……除非手动去做更改。
service命令只能启动rpm包安装的命令,因为service命令默认搜索路径/etc/rc.d/init.d/(所有rpm方式安装的文件都会在此目录下保存一个启动文件)。只有rpm包安装才会把启动服务放到该路径下,源码包安装不会,如果把源码包的启动文件拷到init.d目录下,service可以识别。
chkconfig --list 查询rpm包自启动状态,可以查看系统安装过的所有rpm包,查看不了源码包安装服务状态。
RPM Software management (rpm 命令管理 & yum 管理)
rpm两种管理方式:rpm命令管理 && yum在线管理
rpm命名规则:名字-版本号-发布次数-适合的Linux平台.硬件平台.rpm
rpm最大问题是依赖问题:树形依赖,环形依赖,库依赖。
noarch 任何硬件平台,不写平台也意味着任何平台
iso/packages 里会有大部分包,但这些包并不会全部安全,从运行效率和安全性的角度考虑,系统管理员会选择minimum的安装方式。如果要自己增加新的组件,将iso文件挂载,进入光盘目录找到需要的rpm包,运行安装命令。
RPM命令管理
可以去 www.rpmfind.net 下载所需要的依赖包,如果是Rhel或者是CentOS 可以去http://mirrors.163.com/centos/6/os/x86_64/Packages/ 下载相关内容
RPM 安装包(rpm -ivh packagename.rpm)
i-install安装 v-verbose显示安装信息 h-hash 显示安装过程
RPM 删除包(rpm -e packagename)
e - erase
RPM 查询安装情况(rpm -qi packagename)
q -query i- information
和grep结合起来非常好用 rpm -qa|grep python 就能轻易找到指定关键词相关的安装包名
rpm -qi python 查询Python安装包的具体信息
rpm -ql python 查询Python应用所在的所有目录
rpm -qf filename查询安装程序中某个文件的名字
Yum 命令管理(最好只用于安装,yum删除会产生级联影响)
安装前提:需要可以联网,需要设置Yum源
Yum源设置
网络Yum源(Redhat的网络yum源需要收费,因此可以删除yum源再重新安装配置其他yum源)
光盘Yum源(挂载redhat/centos.iso,指定光盘为镜像源并进行安装)
Yum安装软件
yum -y install packagename
Yum搜索软件安装情况
yum search packagename
Yum删除软件(Yum最好只用来安装)
yum -y remove packagename(high risk! cascade delete)
Yum 更新软件
yum -y update packagename (high risk!)
Source Code Software
management(有些程序官网只提供源代码包,比如python)
源代码包安装
解压以后查看Install或者是Readme文件,会有详细步骤说明如何安装。
源代码包删除
删除直接删除整个文件夹
相关文章推荐
- Linux 搭建LAMP 源码编译详细文档
- MyCat 学习笔记 第五篇 . Mycat 1.5 集成 Galera Cluster 10.1.10 读写分离 Centos 7
- linux开机启动脚本、服务等
- linux终端快捷键
- linux的man命令
- *Linux之rm命令
- centos6.5修改硬盘分区
- Linux CentOs 7.0 mysql 5.7.10 开机自动启动方法
- linux用户管理笔记
- 怎么修改centos6.5的硬盘分区
- Linux下查看Java进程的运行期间堆栈情况
- linux screen 命令详解
- Linux前台、后台、挂起、退出、查看命令汇总
- LINUX扩展根目录磁盘空间(LINUX LVM )
- Linux分配swap分区
- 不重新启动LINUX服务器添加新硬盘!
- How to Set and Unset Local, User and System Wide Environment Variables in Linux
- linux下udp编程
- linux下udp编程
- 通过打印学习Linux内核之sysfs(1)