在 Linux 上安装软件的 3 种方法

转载自DLonng的Blog https://dlonng.com/posts/linux-install-soft

前言

学习 Linux 必须要学会如何安装和卸载应用程序,这次就来简单介绍下在 Linux 上安装和卸载软件的几种方法。我使用的是 Ubuntu,不过对于安装应用程序来说,只要是 Linux 都是大同小异的。

应用程序安装的原理

我们知道,在 Windows 下双击安装包即可安装软件,非常的简单方便,但是这种方法是针对大部分普通用户的,作为计算机高手,你可不能止步与表面功夫。因此,我们必须了解系统在安装软件时所做的事情。

Windows 安装软件大概的过程如下:

  1. 在用户指定的安装目录下建立安装程序目录
  2. 拷贝相关 dll 动态库到安装目录
  3. 拷贝 exe 可执行文件到安装目录
  4. 拷贝配置文件到安装目录,比如 Windows 下的 ini 配置文件
  5. 把启动配置或者程序依赖的配置放入注册表中
  6. 如果是服务程序,注册并且启动该服务

Linux 安装软件大概的过程如下:

  1. 建立安装目录
  2. 拷贝类库
  3. 拷贝可执行程序
  4. 根据需要选择性配置和启动服务

二者的安装过程几乎是相同的,只是安装方式有些不同。在 Windows 下我们经常使用图形界面来安装,而在 Linux 下经常通过命令行来安装,我们后面介绍。对于卸载过程,二者也是相同的,都是安装的过程逆过程。

另外需要注意以下 2 点:

  1. Linux 下的 /usr 目录相当于 Windows 下的 ProgramFile 目录
  2. Linux 下的动态库后缀是 .so 而 Windows 下是 .dll

Linux 的软件安装主要有 3 种方法,下面一一介绍。

3 种软件安装卸载方法

1.安装包安装

这种方法其实就是在 Windows 下安装软件的方法,Linux 软件包也类似于 Windows 下的软件包。常见的 Linux 下的安装包有如下两种:

  1. rpm: 红帽 Linux 用的安装包格式
  2. ded: Debian Linux 用的安装包格式

安装方式也有 2 种:

  1. 双击通过软件管理器安装
  2. 使用 dpkg 命令安装

第一种方法比较简单,就是 Windows 使用的方法,而第二种需要我们了解下 dpkg 这个工具。dpkg 的作用主要是打包,查询,检索包信息,包括依赖信息,并安装或者卸载软件包。但是 dpkg 现在不是很常用了,所以这里接不详细介绍了,有兴趣的可以去 Google 查询具体的用法。

卸载也比较简单,直接通过软件管理器点击卸载软件即可。

2.通过源码安装

这种方法是最原始的方法,我们需要自己一步一步来编译软件的源代码,然后手动安装软件到系统中,听起来很麻烦,但是做起来其实并不复杂,这个过程主要包含下面 4 个操作命令:

cd 软件目录
./configure
make
sudo make install

注意:比较容易出错的地方是 ./configuremake,这两步可能会出错,如果出错的话,你需要到 Google 去查找出错的原因(一般在 stackoverflow 上都能找到答案),很多情况下都是因为缺少某些依赖的库,只要你找到并通过 apt-get (后面介绍)来安装就可以了,最后一步其实是拷贝文件的过程,如果提示没有权限而出错,那么你需要使用 root 权限来执行这个操作 sudo make install

卸载使用下面的命令:

cd 软件目录
sudo make uninstall

3.通过 apt-get 在线安装

apt-get 其实就是一个在线安装软件的工具,它的主要作用是:通过本地的 Linux 连接到网络上的 apt 仓库(源)来下载软件并自动安装。Linux 默认都是自动安装了这个工具的,我们需要学会使用它提供的几个常用命令:

  1. sudo apt-get update : 从网上的源更新安装包信息
  2. sudo apt-get upgrade : 升级软件包到最新版本
  3. sudo apt-get -f install : 修复软件依赖包的关系
  4. sudo apt-get install software_name : 安装软件
  5. sudo apt-get remove software_name : 卸载软件,但是卸载不完全
  6. sudo apt-get remove --purge software : 常用卸载方式,卸载完全

我是一个喜欢探究原理的人,那么 apt-get 的工作原理是什么呢?通过它来安装软件主要需要下面 4 个过程:

1.扫描本地软件包列表(执行 sudo apt-get update 刷新软件包列表)
2.进行软件包依赖关系检查
3.从软件包指定的 apt 源中下载软件包
4.解压软件包,并且完成安装和配置
5.这又引出下面几个问题:

  1. apt 镜像站点地址存在哪里?

    /etc/apt/sources.list

  2. apt 的下载的 deb 包存在哪里?

    /var/cache/apt/archives

我是如何知道的呢?使用 man apt-get 来查看,定位到 FILES 即可看到这两个路径,还有其他路径,有兴趣可以去了解,这里主要是告诉大家解决问题的思路,在 Linux 下通过 man 可以解决很多问题,一定要善于使用。

我们在安装软件一般或多或少都需要下面 4 个步骤:

  1. 添加对应软件包的源,一般你在搜索如何安装一个软件的时候,别人已经给出了源地址,如果没有给出,则可能这个软件包不需要指定自己的源地址
  2. sudo apt-get update 更新源列表
  3. sudo apt-get install software_name 安装软件
  4. 安装过程需要你确认是否安装,输入 y 确认即可

介绍一个小工具 aptitiude,这个工具可以自动安装软件的依赖包,当你使用 apt-get 安装过程中提示你需要安装某些依赖的时候,你可以使用这个工具来代替 apt-get 使用,即可自动安装依赖的包。

但是,首先你要先安装这个工具:

sudo apt-get install aptitiude

如果你使用 apt-get 安装软件的过程中提示你需要安装依赖,那么你换成下面的命令重新安装即可:

sudo aptitiude software_name

这样当你安装的软件需要安装其他的依赖的软件包的时候,这个工具会帮助你自动安装,就不需要你手动安装了,是不是特别方便。

注意:如果你不能通过 apt-get 安装软件,你很可能需要更新系统的源地址,我使用的是 aliyun,你可以将下面的地址添加到你的 sudo vim /etc/apt/sources.list 中:

deb http://mirrors.aliyun.com/ubuntu/ yakkety main universe multiverse restricted
deb http://security.ubuntu.com/ubuntu/ yakkety-security multiverse main universe restricted

然后执行更新:

sudo apt-get update

之后就可以使用 apt-get 安装软件了,这是经常使用的安装方法,务必学会!

练习:安装 vim

说了那么多,不如来点实际的强,这里我就使用 3 种方法来分别安装 vim 编辑器到系统中。

1. 安装包安装 vim

打开这个下载页面,根据你的系统类型来下载对应的 vim 安装包:

https://pkgs.org/download/vim

下载完成后,直接双击安装包或者通过 dpkg 安装,我在 Ubuntu 下直接双击使用软件中心即可安装,要卸载的时候点击卸载按钮即可卸载,非常简单。

2. 源代码安装 vim

我们需要从 vim 官网下载源码,使用浏览器打开下面的网址,点击 All files 那一行的下载链接即可下载源代码:

http://www.vim.org/sources.php

下载完成后,打开命令行,进入下载文件的目录,使用下面的命令解压:

tar xjvf vim-7.4.tar.bz2

解压完后的目录是 vim74
然后进入这个目录,开始配置:

cd vim74/
./configure

注意:配置过程中可能提示缺少 libncurses5-dev 这个依赖而结束,我们使用 sudo apt-get install libncurses5-dev 安装即可,在重新配置之前,需要使用 make clean 先清理一次。

配置完成,开始 make,这个过程需要一段时间:

make

make 完成,直接使用 root 安装:

sudo make install

查看是否安装成功:

查看 vim 的版本信息

vim --version

使用下面的命令卸载 vim,不过你应该不想卸载它:

cd vim74/
sudo make uninstall

再强调一遍:如果你在安装过程中遇到任何问题,请仔细阅读错误提示信息,然后尝试使用 Google 来搜索提示的错误信息,一般情况下,你在 stackoverflow 网站上都能得到正确的答案,但是前提是你要有基本的英文阅读能力。

3. sudo apt-get install vim

正如标题那样,你只需要在命令行输入上面的命令即可安装 vim:

sudo apt-get install vim

使用下面的命令来卸载 vim:

sudo apt-get remove --purge vim

使用这种方法可以说非常的简单,前提是需要联网。

总结
这次介绍了在 Linux 下安装软件的 3 种方法,其中比较常用的是通过 apt-get 安装,其次是通过源码安装,最后才是使用安装包安装,不过这也要看你自己的爱好和能力。建议大家一定要掌握如何自己编译源码来安装软件,因为很多时候可能没有网络,那么这时你会自己编译源码就比别人强,也更加能够得到别人的青睐,就算不为了这,编译源码你不觉得很酷吗,别人都看不懂你的黑窗口,不是吗?hh

DLonng at 07/05/17

转载自DLonng的Blog https://dlonng.com/posts/linux-install-soft

在 Linux 上安装软件的 3 种方法相关推荐

  1. Linux下安装软件的几种方法

    来源: http://blog.csdn.net/shun01/article/details/22041339 怎么安装应用软件? 我的软件安装在什么地方? 如何删除不要的应用软件? -- 下面,我 ...

  2. linux安装软件的几种方法

    一.rpm包安装方式步骤: 1.找到相应的软件包,比如soft.version.rpm,下载到本机某个目录: 2.打开一个终端,su -成root用户: 3.cd soft.version.rpm所在 ...

  3. linux上开发应用程序_如何在Linux上安装软件应用程序

    linux上开发应用程序 如何在Linux上安装应用程序? 与许多操作系统一样,该问题不仅有一个答案. 应用程序可以来自许多来源-几乎无法计数-每个开发团队都可以以自己认为最佳的方式交付软件. 知道如 ...

  4. centos 卸载软件_一篇看懂!详解-Linux系统中安装软件的三种方法

    Linux系统中安装软件的三种方法 注:本文主要以CentOS为例介绍常用的安装方式,其他版本linux在文章底部 Linux系统中怎么安装软件,首先说一下应用程序与系统命令的区别: 1.文件位置 系 ...

  5. linux终端下载notepad,在Linux系统上安装NotePad++的三种方法介绍

    本文介绍在Linux操作系统上安装NotePad++的三种方法,使用Snap.Wine和NotePadQQ.这里要说的是:由于像Wine和Snap软件包这样的工具,在Linux上运行的Notepad+ ...

  6. linux系统安装teamview,在Ubuntu 18.04系统上安装TeamViewer的两种方法

    本文介绍在Ubuntu 18.04 LTS Bionic Beaver系统上安装TeamViewer的两种方法,第一种方法使用图形用户界面安装,第二种使用终端命令行安装,同时可以先参考在Ubuntu ...

  7. linux软件不能通过验证,Linux上安装软件之前先验证软件包合法性

    以前有为Linux专家说过一句很经典的话"小即是美".这句话一针见血的道出了Linux操作系统的设计特点.Linux操作系统跟微软操作系统不同,它都是一个个相对独立的软件所构成的一 ...

  8. 平板 刷 linux系统,在Linux系统上安装NotePad++的三种方法介绍

    本文介绍在Linux操作系统上安装NotePad++的三种方法,使用Snap.Wine和NotePadQQ.这里要说的是:由于像Wine和Snap软件包这样的工具,在Linux上运行的Notepad+ ...

  9. dpkg安装软件流程_详解linux安装软件的几种方法

    一.rpm包安装方式步骤: 1.找到相应的软件包,比如soft.version.rpm,下载到本机某个目录: 2.打开一个终端,su -成root用户: 3.cd soft.version.rpm所在 ...

最新文章

  1. 一个新手上课的路程!!!
  2. 【转】性能监控 -- 应用服务器常见监控指标
  3. polycom安卓手机客户端_安卓新功能曝光:或可通过应用商店更新手机系统
  4. python代码规范化_最流行的Python代码规范
  5. java修改title_js修改title
  6. php server自定义函数,php:SQL Server用户自定义的函数种类详解
  7. 2021人工智能竞赛白皮书:1000场竞赛的深度分析
  8. python 每月每周_R-Python:获取每月,每周的索引点
  9. 一张图了解大牛直播SDK
  10. Eclipse关闭无用validation
  11. 程序员代码面试指南第二版 8.单调栈结构(普通及进阶)
  12. 用一套键鼠控制两台主机
  13. db2 sqlcode
  14. 君正Ingenic X1000E_halley2 更改Logo
  15. KEGG Brite 数据库
  16. 电磁仿真软件CST2020 下载链接及安装破·解教程笔记
  17. 2020年裸辞的人,真的待业了一整年吗?
  18. 有哪些分体式降噪耳机推荐?最值得入手的分体式降噪耳机
  19. Tomcat 多实例安装 发布3个java项目: 8080 8081 8082
  20. ABBYY FineReader 14之扫描至OCR编辑器功能怎么用

热门文章

  1. 周立功USBCAN-II在cantest上无法启动设备
  2. XML Helper XML操作类
  3. 【Layui】表单验证
  4. 农行研发中心23秋招内推
  5. Assignment_1
  6. 普元EOS:DataGrid表格实现分页加载、自定义列、单元格渲染、行编辑器、锁定列、过滤行、汇总行等功能。
  7. 中国无绳电池驱动推式割草机市场趋势报告、技术动态创新及市场预测
  8. 金格签章使用时碰到的奇葩问题解决
  9. THUPC2023初赛总结
  10. 创业Web2.0之51.com庞升东:生意人的互联网逻辑