Linux基础:软件安装(rpm,yum,源代码)
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文件,会有详细步骤说明如何安装。
- 源代码包删除
- 删除直接删除整个文件夹
更新Yum源和软件安装
Linux基础:软件安装(rpm,yum,源代码)的更多相关文章
- 第五部分 linux 软件安装RPM SRPM与YUM
第五部分 linux 软件安装RPM SRPM与YUM 软件管理员简介 RPM与DPKG两大主流 rpm: redhat centos suse 命令:yum ...
- (大数据工程师学习路径)第一步 Linux 基础入门----Linux 下软件安装
介绍 介绍 Ubuntu 下软件安装的几种方式,及 apt,dpkg 工具的使用. 一.Linux 上的软件安装 通常 Linux 上的软件安装主要有三种方式: 在线安装 从磁盘安装deb软件包 从二 ...
- Linux入门基础教程之Linux下软件安装
Linux入门基础教程之Linux下软件安装 一.在线安装: sudo apt-get install 即可安装 如果在安装完后无法用Tab键补全命令,可以执行: source ~/.zshrc AP ...
- CentOS6安装各种大数据软件 第三章:Linux基础软件的安装
相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...
- Linux学习笔记(13)linux软件安装rpm与yum--理论篇
该文章linux知识点如下 1.linux中 软件包介绍 2.linux源码软件安装 3.linux二进制软件安装 4.linux rpm软件包管理 5.linux yum软件包管理 1.linux中 ...
- 2019-9-16:渗透测试,基础学习,Linux下软件安装,环境搭建,笔记
Centos linux下软件安装yum 通过分析rpm包头数据后,自动解决依赖关系,直接云端下载软件,根据不同版本系统获取不同软件信息,按顺序下载rpm包,安装软件yum search 软件名:搜索 ...
- linux下软件安装的几种方式
linux下软件安装的几种方式(主要有源码安装, rpm安装, yum安装). 一:源码安装 几乎所有的开源软件都支持在Linux下运行,而这些软件一般都以源码形式发放,只需要Linux安装了gcc. ...
- Linux 下软件安装
Linux 下软件安装 一.Linux 上的软件安装 通常 Linux 上的软件安装主要有三种方式: 在线安装 从磁盘安装deb软件包 从二进制软件包安装 从源代码编译安装 这几种安装方式各有优劣,而 ...
- Linux下软件安装的四种方式
一.源码安装 步骤: 下载,解压源码(常见的源码打包格式:.tar.gz/.tar.bz2); 可以直接下载源码再上传至linux服务器,或者在联网状态下,直接通过wget等命令获取源码安装包;源码解 ...
随机推荐
- C++实现链式栈,运用模板,界面友好,操作方便,运行流畅
//.h文件 #ifndef STACK_H #define STACK_H #include<iostream> #include<iomanip> using namesp ...
- Python ftplib
http://automationtesting.sinaapp.com/blog/m_ftplib https://docs.python.org/2/library/ftplib.html 概述 ...
- Windows控制台程序“选定模式”的问题
最近用Nodejs写了个代理程序,一直用的好好的,木有问题,今天突然发现不能用了,使用telnet去连代理的端口也能连通,可是服务就是不能正常使用,提示连接超时. 当时猜测是Nodejs的某个地方阻塞 ...
- CPU的一些参数和排名
排名的信息来源: http://itianti.sinaapp.com/index.php/cpu 一些参数的信息来源: http://ark.intel.com/ 个人关注一些的一些CPU排名: I ...
- Java_一些特殊的关键字详(?)解
1. native. 在看JDK源码时,想知道Math包里比如cos, sin等函数是如何实现的(猜想的是用他们在0点的泰勒展开式近似),但是打开之后却发现只有一个函数声明,并且有关键字native, ...
- Using SYSTEM.MOUSE_ITEM In Oracle Forms
If the mouse is in an item, SYSTEM.MOUSE_ITEM represents the name of that item as a CHAR value.For e ...
- set集合的用法总结(转)
python的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交), difference(差)和 ...
- YII的关联查询
先看数据表中的关系是怎样的: customer表中的关系如下: order中的表为: 先在customer中获得order的数据,并与之关联,在 helloController.php 中,代码如下 ...
- MyEclipse Servers视窗出现“Could not create the view: An unexpected exception was thrown”错误解决办法
打开所在的wordspace文件夹,在下面子文件夹 .metadata\.plugins\org.eclipse.core.runtime\.settings\com.genuitec.eclipse ...
- SpringAop学习
Spring Aop (jdk动态代理和cglib代理) Aop 的概念 aop即面向切面编程,一般解决具有横切面性质的体统(事务,缓存,安全) JDK动态代理: 可以使用实现proxy 类,实现jd ...