1. 我们的Linux系统大部分都是某个Linux厂商的系统,所以这些厂商可以编译好一些软件来提供用户下载,用户下载完了之后就可以直接安装,从而省去了编译源码及其过程中的各种问题。这时我们就可以使用相应的软件管理器来操作软件(下载、安装、删除)。 
    我们使用的是Linux厂商的系统,即我们的系统和他们的系统是一样的,所以他们编译的软件我们当然可以用。
    在安装软件的时候可以添加一些有关软件的一些信息,将这些信息新建成数据库,那么就可以进行卸载、更新和验证等相关操作了。(类似于windows下面的添加或删除程序)

两种常见的软件管理机制:RPM( RedHat Package Manager)和DPKG

     distribution代表       软件管理机制           使用命令        在线升级机制(命令)(可以用来解决依赖问题)
RedHat/Fedora RPM rpm,rpmbuild YUM(yum)
Debian/Ubuntu DPKG dpkg APT(apt-get)
  1. RedHat、Fedora、Centos、SuSE等发行商使用的RPM机制;Debian、B2D、Ubuntu(派生于Debian,所以可以用于Debian想用的机制)使用的是DPKG。 
    横向比较:rpm/dpkg 不能用来解决包依赖,用来安装、卸载、更新 *.rpm 或者 *.ded 文件

  2. RPM:RedHat Package Manager, 
    以一种数据库记录方式安装软件的一套管理机制。 
    RPM最大的一个特点就是将要安装的软件先编译好并打包成RPM机制的安装包,通过包装好的软件中默认的数据库记录这个软件的依赖的软件。 
    优点: 
    - 已经编译且打包完毕,所以软件的传输和安装都很方便。(省去了编译源码的麻烦) 
    - 软件的 信息都已记录在数据库中方便查询、升级、卸载等操作。 
    缺点: 
    - RPM文件已经是编译好的文件,那么其中的数据就无法修改了。该软件只能安装在原本默认的环境(硬件和操作系统)中,也就是说你的主机系统要和当初建立这个软件的主机环境相同。 
    - 所以,一个发行商的RPM文件不能用在另一个不相同的发行商的系统上。比如说,RedHat推出的RPM无法直接SuSE上进行安装。并且,很可能同一个发行商的不同版本的系统之间的RPM包也是无法兼容的,例如,Centos4.x的RPM包无法直接应用在Centos5.x上 
    总结:要想使用相同的RPM包最好做到:1、同一个系统的发行商的RPM 2、同一个发行商的系统版本最好也是相同的 3、最好是完全相同的一个系统

    • 软件的安装环境必须和当初编译该软件的机器的环境是一样的或者时候相当的
    • 需要满足依赖关系
    • 卸载的时候特别是不能先删除最底层的软件,否则可能造成系统出问题
  3. apt-get: 
    jack@jackvirtual:~$sudo apt-get install packagename #这里是安装packagename这个软件,当使用这个命令的时候系统会去“下载源”文件中获取下载源地址然后去指定的地方下载软件

  4. 几个命令: 
    -dbkg: 这里详细的介绍了dbkg的15个用法
    - dbkg -i packagename #安装或者更新某个软件,如果这个包没有下载的话那么就会保存,所以可以先使用wget命令下载下来.deb软件

      wget http://archive.canonical.com/pool/partner/a/adobe-flashplugin/adobe-flashplugin_11.2.202.228-0maverick1_amd64.deb -O flashplugin.deb

        - 这里将下载下来的软件包重命名为flashplugin.deb,然后使用sudo dpkg -i flashplugin.deb安装这个软件
- [flashplugin.deb的地址](http://archive.canonical.com/pool/partner/a/adobe-flashplugin/)
- dpkg -l #列出所有安装的软件
- dpkg -r `packagename_without_.deb`#卸载软件软件,这里的软件名不带后缀
- dpkg -R --install directory/ #安装direcory目录下的所有的*.deb软件
当提示有依赖错误时:apt-get -f -y install,之后再运行dpkg -i *.deb进行安装 - apt-get:[apt-get的介绍和用法](http://www.tecmint.com/useful-basic-commands-of-apt-get-and-apt-cache-for-package-management/)
- sudo apt-get install packagename1 packagename2 #安装或者升级一个或多个软件
- `sudo apt-get install '*name*'` #使用通配符安装软件
- sudo apt-get install packageName --only-upgrade #指定的软件升级
- sudo apt-get install packageName --no-upgrade #不升级已经安装的软件
- sudo apt-get install vsftpd=2.5.3-3ubuntu #安装指定版本的软件
- sudo apt-get remove packageName #移除指定的软件且不删除其配置文件
- sudo apt-get purge packageName #移除指定文件且删除其配置文件,完全删除了这个文件
- sudo apt-get remove --purge packageName #跟上面的命令一样
- sudo apt-get --download-only source vsftpd #只下载指定软件的源码
- sudo apt-get --compile source goaccess #下载、解压、编译源码一气呵成
- sudo apt-get source vsftpd #下载并解压一个包
- sudo apt-get download nethogs #只下载不安装
- sudo apt-get upgrade #升级所有已经安装的软件
- sudo apt-cache pkgnames#列出所有available软件原文链接:http://blog.csdn.net/u010378878/article/details/51675506

Linux软件管理器(如何使用软件管理器来管理软件)的更多相关文章

  1. Linux基础3(用户/组管理,rpm,yum,源码安装软件)

    用户管理 与用户相关的配置文件 /etc/passwd /etc/shadow /etc/skel /etc/defalut/useradd /etc/login.defs useradd userm ...

  2. [课程分享]IT软件项目管理(企业项目甘特如是评价、维护管理、文档管理、风险管理、人力资源管理)

    [课程分享]IT件项目管理(企业项目甘特图案例评价.维护管理.文档管理.风险管理.人力资源管理) 对这个课程有兴趣的朋友能够加我的QQ2059055336和我联系 课程讲师:丁冬博士 课程分类:Jav ...

  3. linux包安装,解压,压缩,包管理,环境变量

    linux 包安装,解压,压缩,包管理 centoscentos上有系统包管理器yum yum的配置一般有两种方式,一种是直接配置/etc目录下的yum.conf文件,另外一种是在/etc/yum.r ...

  4. linux(raspbian)下mysql的安装,权限设置和用户管理

    一 MySQL安装:(1) 使用apt-get安装, 由于raspbian是基于Debian的自由操作系统,debian默认自带apt-get指令安装应用因此可以使用来安装 sudo apt-get ...

  5. Linux企业级项目实践之网络爬虫(25)——管理源代码之SVN

    软件项目开发中,一般会用到源代码管理工具SVN.版本控制是管理数据变更的一种技术.对于程序员来说,它已经成为不可或缺的工具,因为他们经常修改软件代码,产生部分的变更,然后第二天再取消所有的变更.想象有 ...

  6. (转)用户管理 之 Linux 用户(user)和用户组(group)管理概述

    用户管理 之 Linux 用户(user)和用户组(group)管理概述  原文:http://www.cnblogs.com/licheng/p/6103992.html 一.理解Linux的单用户 ...

  7. Linux 文件系统错误的修复方法 ddrescue替代dd的恢复软件 备用超级块

    Linux 文件系统错误的修复方法  ddrescue替代dd的恢复软件  备用超级块 最近处理的一件 linux 服务器断电导致文件系统启动后文件系统不可读写,数据不可用的案例,现总结下 Linux ...

  8. Unix/Linux环境C编程入门教程(33) 命令和鼠标管理用户和组

    Linux是一个多用户.多任务的实时操作系统,允许多人同时访问计算机, 并同时运行多个任务.UNIX系统具有稳定.高效.安全.方便.功能强大等诸多优点,自20世纪70年代开始便运行在许多大型和小型计算 ...

  9. lucene全文搜索之二:创建索引器(创建IKAnalyzer分词器和索引目录管理)基于lucene5.5.3

    前言: lucene全文搜索之一中讲解了lucene开发搜索服务的基本结构,本章将会讲解如何创建索引器.管理索引目录和中文分词器的使用. 包括标准分词器,IKAnalyzer分词器以及两种索引目录的创 ...

  10. linux学习:【第3篇】远程连接及软件安装

    狂神声明 : 文章均为自己的学习笔记 , 转载一定注明出处 ; 编辑不易 , 防君子不防小人~共勉 ! linux学习:[第3篇]远程连接及软件安装 远程连接 xshell , xftp软件官网 : ...

随机推荐

  1. [AT2000] [agc002_f] Leftmost Ball

    题目链接 AtCoder:https://agc002.contest.atcoder.jp/tasks/agc002_f 洛谷:https://www.luogu.org/problemnew/sh ...

  2. msiexec安装参数详解

    原文链接地址:https://blog.csdn.net/wilson_guo/article/details/8151632 1 安装 /i表示安装,/x 表示卸载/f表示修复./l*v 表示输出详 ...

  3. 表格隔行变色_CSS实现鼠标悬停高亮

    <!doctype html> <html> <head> <meta http-equiv="content-type" content ...

  4. linux内核分析第3章&第18章读书笔记

    linux内核分析第3章&第18章读书笔记 第三章 进程管理 进程:处于执行期的程序(目标码存放在某种存储介质上) 包含资源:可执行程序代码,打开的文件,挂起的信号,内核内部数据,处理器状态, ...

  5. javascript里的sleep()方法

    很多编程语言里都有sleep(),delay()等方法,它能让我们的程序不那么着急的去执行下一步操作,而是延迟.等待一段时间.软件开发中经常会遇到需要这样的函数,比如等待几分钟去检查某一事件是否发生. ...

  6. Codeforces 543.B Destroying Roads

    B. Destroying Roads time limit per test 2 seconds memory limit per test 256 megabytes input standard ...

  7. 000. 规范类的设计(ing)

    1.变量命名规范 变量命名有许多约定俗成的规范,下面的这些规范能有效提高程序的可读性: 标识符要能体现实际含义(顾名思义). 变量名一般用小写字母,如index,不要使用Index或INDEX. 用户 ...

  8. Eclipse 重构功能的使用与重构快捷键

    重构是什么? 在代码写好之后改进它的设计. 重构分类:物理结构.类层次结构.类内部结构. 名称 快捷键 直译 作用范围 描述 Rename Alt + Shift + R     可以对任意变量.类. ...

  9. JVM调优总结(2):基本垃圾回收算法

    可以从不同的的角度去划分垃圾回收算法: 按照基本回收策略分 引用计数(Reference Counting): 比较古老的回收算法.原理是此对象有一个引用,即增加一个计数,删除一个引用则减少一个计数. ...

  10. 你知道吗?衡量 Web 性能的几个关键指标

    自网站诞生以来,响应速度/响应时间一直都是大家关心的话题,而速度慢乃是网站的一个杀手,正当大家以为四核和宽带能力的提升能够解决这些问题时,Wi-Fi和移动设备为热点移动互联网又悄然兴起. 在2006年 ...