Linux软件安装与进程管理
Linux软件安装与进程管理
1.软件包分类
首先呢,在学习rpm与yum命令之前,我想先给大家介绍一下Linux软件包的分类,也就是我们常说的安装包,window的软件包是.exe结尾文件,也就是应用程序运行文件,当然这种文件在Linux中是不支持的,也就是说以这种文件存在的应用程序无法在我们的Linux上运行,也就让很多的window木马病毒无法感染我们的Linux,当然也会造成在实际开发中一个软件需要重新针对Linux再写一份。在Linux中,软件包只有源码包和二进制包,下面我们来简单的介绍以下这两种包,以便后面对软件安装的学习。
所谓的源码包,就是直接给你一个开放的源程序。作者写的时候是什么样,给你的就是什么样,这就是源码包,Linux的源码包大多是用C语言写的
1.优点
开源,你可以直接看见源代码,能力足够,可以自己在这份源代码上对应用程序进行修改
可以自己选择需要的功能
软件是编译安装,所以更加适合自己的系统,更加稳定也效率更高【源代码在你自己的电脑上,是不是要比你在网上下载的二进制包更安全、运行更效率】
卸载方便【直接删除安装目录就可以,window这样会遗留很多残存文件】
2.缺点
安装过程步骤较多,尤其安装较大的软件时(如LAMP环境搭建),容易出现拼写错误
编译过程时间较长
因为是编译安装,安装过程中一旦出现报错新手很难解决
源码包还有一个突变体,那就是脚本安装包,类似于window的软件包,这种软件包在安装软件时候会弹出一个小窗口,一步一步提示你怎么安装,但是这种软件包很少,因为对于开发者来说,还需要花额外的时间来开发这个安装窗口,Linux是针对服务器来设定的,对于专门从事Linux方面工作的人来说,这显然是不需要的,当然大家也不要着急,相信有一天你也是其中的一员。
2.二进制包
类似于windows系统的exe文件。Linux的二进制包又叫rpm包、系统默认包,Linux默认的软件包就是二进制包,当你看到以.rpm结尾的文件,那么他就是Linux应用程序的软件包,后面我们学习的也是二进制包
1.优点
包管理系统简单,只通过几个命令就可以实现包的安装、升级、查询和卸载
安装速度比源码包快很多
2.缺点
经过编译,所以不可能再看见源代码
功能选择不如源码包灵活
依赖性
Linux常见的软件包有两种,分别是tar包和rpm包,
1)tar包是linux使用非常广泛的文档打包格式。通常用tar打包的都是源代码包,我们日常遇到tar包,会有两种情况,一种是源代码tar包,这种包解压后需要编译运行,一种是二进制数据tar包,这种包解压之后可以直接使用。
2)Rpm包
3)RPM(Red Hat Package Manager)是Red Hat 公司推出的软件管理包,RPM有二进制软件包,也有源码包。RPM二进制包,我们直接可以通过命令rpm安装。如果是rpm源码包,我们把rmp源码包称为SRPM(Source RPM),安装srpm时,prm套件管理员会先将该套件以rpm包管理的方式编译,然后将编译完成的RPM安装到linux系统中。
Rmp和srmp有什么区别呢rsp安装的是二进制文件,需要在相同的linux环境中才能安装,而srmp是原始码的格式,需要通过修改SRMP内的参数设定档案,重新编译能产生适合linux环境的rpm包,最终将该套件安装到系统中,而不必与原作者打包的linuxh环境相同。
Yum
yum全称是Yellow dog Updater,Modified ,是基于RPM的升级版软件管理包。我们在编译一些安装包的时候,会提示还需要其他的软件安装包,这个时候,就需要先下载需要依赖的安装包,下载玩之后在安装现有的安装包,所以,我们在安装一个软件包时,用yum来安装,它可以自动处理依赖性关系,并一次性安装所有依赖的软件包。
使用rpm指令对软件进行安装需要预先下载所需安装的软件,但使用yum工具对软件进行安装不需要预先下载所需安装包,只需要在网络yum库(yum数据源)存在的软件包,通过指令可直接进行下载(需要联网)。(也可以自己创建一个yum数据库,从本地地址进行下载。)
Linux软件安装与进程管理的更多相关文章
- Linux软件安装——服务管理的命令
Linux软件安装——服务管理的命令 摘要:本文主要学习了Linux系统中服务管理的命令. service命令 service命令用于对系统服务进行管理,比如启动(start).停止(stop).重启 ...
- Linux软件安装——服务管理
Linux软件安装——服务管理 摘要:本文主要学习了Linux中有关服务管理的知识. 什么是服务 服务一般是放置在后台运行的一个或多个进分程,为用户或系统提供某项特定的服务,有些是系统服务,有些则是独 ...
- Linux软件安装管理之——dpkg与apt-*详解 apt命令(dpkg和apt代替rpm)
apt list *python* Nosee123关注赞赏支持 Linux软件安装管理之--dpkg与apt-*详解 [Linux软件安装管理系列]- - 传送门: - -<Linux软件 ...
- Linux软件安装管理之——dpkg与apt-*详解
Linux软件安装管理之--dpkg与apt-*详解 [Linux软件安装管理系列]- - 传送门: - -<Linux软件安装管理之--源码安装详解> - -<Linux软件安装管 ...
- Linux软件安装,RPM与YUM
为了防止无良网站的爬虫抓取文章,特此标识,转载请注明文章出处.LaplaceDemon/SJQ. http://www.cnblogs.com/shijiaqi1066/p/3843955.html ...
- Linux基础学习(6)--Linux软件安装
第六章——Linux软件安装 一.软件包管理简介 1.软件包分类: (1)源码包:脚本安装包 (2)二进制包(RPM包.系统默认包) 2.源码包: (1)源码包的优点:开源,如果有足够的能力,可以修改 ...
- Linux软件安装中RPM与YUM 区别和联系
.tc-nav-row{ height:38px; margin: 8px 15px; } .tc-nav-tab{ text-align: center; color:#333333; line-h ...
- 第五部分 linux 软件安装RPM SRPM与YUM
第五部分 linux 软件安装RPM SRPM与YUM 软件管理员简介 RPM与DPKG两大主流 rpm: redhat centos suse 命令:yum ...
- Linux软件安装——软件包
Linux软件安装——软件包 摘要:本文主要学习了Linux下软件安装的相关知识. 软件包 简介 Linux下的软件包众多,且几乎都是经GPL授权.免费开源(无偿公开源代码)的.这意味着如果你具备修改 ...
- Linux——软件安装
Linux--软件安装 一.gcc 二.make 三.rpm 四.yum 一.gcc gcc是Linux上面最标准的C语言的编译程序,用来源代码的编译链接. gcc -c hello.c 编译产生目标 ...
随机推荐
- 分享一个自己项目中用到的.net中正则替换工具处理类(支持先用特征匹配内容整体模板,同时模板内对相关字内容进行替换)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- MasaFramework -- i18n (国际化)
概念 作为一个普通开发者, 我们负责的项目的使用群体大多数是本国的人民, 但不可避免的也有一些做外贸的业务或者给外企做的项目, 这个时候就要求我们的项目有服务全球客户的能力, 而一个支持国际化能力的框 ...
- 一文教会你mock(Mockito和PowerMock双剑合璧)
作者:京东物流 杨建民 1.什么是Mock Mock有模仿.伪造的含义.Mock测试就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法.mock工具使用 ...
- CF构造题1600-1800(1)
D. Same Count One(Polynomial Round 2022 (Div. 1 + Div. 2, Rated, Prizes!)) 题意 给定 \(n\) 个长度为 \(m\) 的 ...
- AtCoder Beginner Contest 285 解题报告
AtCoder Beginner Contest 285 解题报告 \(\text{DaiRuiChen007}\) Contest Link A. Edge Checker 2 假设 \(a\ge ...
- ESP-01S无线下载器
文章结构: 项目概述 成品预览 项目框架 硬件资料,代码 项目槽点 -项目概述- 最开始学习51的时候,总是"冷启动",手动按动开关重启,下载一次程序重启一次,觉得很麻烦 而且另一 ...
- vue基础之keep-alvie保持历史页面数据不变,切换页面后数据不变keep-alvie
1:路由配置文件设置 { path: '/MenuM', component: Layout, redirect: '/MenuM', children: [ { path: 'MenuM', nam ...
- vue修改内容点击显示隐藏内容不自动刷新问题
今天遇到一个在card组件中点击显示隐藏的问题,修改了动态绑定的值,但是组件内容没有刷新,但是偶而其他元素修改导致页面动态刷新又刷新了,就猜想修改这个数组中一个对象的值并没有引起vue的动态刷新 解决 ...
- elasticsearch中使用runtime fields
1.背景 在我们使用es的开发过程中可能会遇到这么一种情况,比如我们的线路名称字段lineName字段在设置mapping的时候使用的是text类型,但是后期发现需要使用这个字段来进行聚合操作,那么我 ...
- 【一句话】@Configuration和@Component的区别
首先一句话: @Configuration修饰的类会被Cglib动态代理,@Component不会. 详细: Cglib动态代理生成当前对象的子类Class,并对方法拦截,多次调用@Bean方法时直接 ...