目录

  • 1 软件安装包分类
  • 2 源码包
    • 2.1 源码包简介
    • 2.2 源码包安装过程
  • 3 二进制包安装过程
    • 3.1 二进制包简介
    • 3.2 Kali二进制包安装及管理
      • 3.2.1 dpkg方法安装deb包
      • 3.2.2 apt方式安装deb包
    • 3.3 CentOS二进制包安装及管理
      • 3.3.1 RPM包的命令管理
      • 3.3.2 RPM包的yum管理:
  • 4 安装示例
  • 5 总结
  • 6 参考文献

1 软件安装包分类

  • 根据安装包是否经过封装,将其分为源码包与封装包,两种安装包的安装方式不同。

2 源码包

2.1 源码包简介

  1. 源码包就是一大堆源代码程序,是由程序员按照特定的格式和语法编写出来的。源码包一般包含多个文件,为了方便发布,通常会将源码包做打包压缩处理,Linux 中最常用的打包压缩格式为“tar.gz”,因此源码包又被称为 Tarball。
  2. 源码包需要我们自己去软件官方网站进行下载,包中通常包含以下内容:
    1. 源代码文件。
    2. 配置和检测程序(如 configure 或 config 等)。
    3. 软件安装说明和软件说明(如 INSTALL 或 README)。
  3. 使用源码包安装软件具有以下优点:
    1. 开源。如果你有足够的能力,则可以修改源代码。
    2. 可以自由选择所需的功能。
    3. 因为软件是编译安装的,所以更加适合自己的系统,更加稳定,效率也更高。
    4. 卸载方便。
  4. 使用源码包安装软件也有以下不足:
    1. 安装过程步骤较多,尤其是在安装较大的软件集合时(如 LAMP 环境搭建),容易出现拼写错误。
    2. 编译时间较长,所以安装时间比二进制安装要长。
    3. 因为软件是编译安装的,所以在安装过程中一旦报错,新手很难解决。

2.2 源码包安装过程

  1. 安装C语言编码器:gcc
    yum -y install gcc
  2. 下载源码包
  3. 确定目录(系统单方面推荐存放和安装位置):
    源码包保存位置:/usr/local/src
    软件安装位置:/usr/local/
  4. 解压缩,并进入解压缩后的目录
  5. 软件的配置与检测,命令:./configure
    确定安装目录:(./configure --prefix=/usr/local/python3)
    检测系统环境是否支持安装,是否有缺省
    将定义好的功能选项和环境信息写入Makefile文件
  6. 命令:make
    编译,使用gcc将源码包翻译成机器语言
    如果报错,可清空临时文件:make clean
  7. 命令:make install
    编译安装,向configure指定的目录写入数据
  8. 卸载:
    自接把configure指定的安装目录全部清空(rm -rf 目录名)即可

3 二进制包安装过程

3.1 二进制包简介

  1. 相比源码包,二进制包是在软件发布时已经进行过编译的软件包,所以安装速度比源码包快得多(和 Windows 下软件安装速度相当)。也正是因为已经进行通译,大家无法看到软件的源代码。
  2. 使用二进制包安装软件具有以下 2 点好处:
    1. 包管理系统简单,只通过几个命令就可以实现包的安装、升级、査询和卸载。
    2. 安装速度比源码包安装快得多。
  3. 使用 RMP 包安装软件有如下不足:
    1. 经过编译,不能在看到源代码。
    2. 功能选择不如源码包灵活。
    3. 依赖性。有时我们会发现,在安装软件包 a 时需要先安装 b 和 c,而在安装 b 时需要先安装 d 和 e。这就需要先安装 d 和 e,再安装 b 和 c,最后才能安装 a。比如,我买了一个漂亮的灯具,打算安装在客厅里,可是在安装灯具之前,客厅需要有顶棚,并且顶棚需要刷好油漆。安装软件和装修及其类似,需要有一定的顺序,有时依赖性会非常强。

3.2 Kali二进制包安装及管理

3.2.1 dpkg方法安装deb包

  1. 总体安装思路:

    1. 找到相应的软件包,比如soft.version.deb,下载到本机某个目录
    2. 打开一个终端,cd soft.version.deb所在的目录;
    3. 输入dpkg -i soft.version.deb
  2. 相关命令:
    1. 查询命令用法:dpkg --help
    2. 安装:dpkg –i deb的软件包名
    3. 卸载:dpkg –e 软件名
    4. 查询当前系统安装的软件包:dpkg –l 软件名

3.2.2 apt方式安装deb包

  1. 打开一个终端。
  2. 查询软件的名称或相关信息:apt-cache search software
  3. 如果2中找到了软件software,则用命令安装软件:apt-get install software
  4. 卸载一个已安装的软件包:apt-get remove software

3.3 CentOS二进制包安装及管理

3.3.1 RPM包的命令管理

本地管理,软件包已经下载或安装到本地。

  • rpm -ivh 包全名:安装,显示详细信息和进度
  • rpm -Uvh 包全名:升级软件包
  • rpm -e 包名:卸载
  • rpm -q 包名:查看安装的软件包的版本,源码安装的包不可查
  • rpm -qa :查询所有安装的包
  • rpm -qi 包名:查看包详细信息
  • rpm -ql 包名:查看安装的软件包的所有安装位置
  • rpm -qf 文件名:通过任意文件名,查看它所属的包全名

3.3.2 RPM包的yum管理:

云管理,软件包需要联网下载,也可更改配置使用本地yum源。

yum安装会自动解决安装的依赖性问题,即安装时需要依赖包时会自动通过服务器下载并安装,不用用户手动安装。

  • yum list:查看yum上所有可用软件包
  • yum search 包名:通过部分包名查看可用可用软件包
  • yum -y install 包名:安装,(-y)是安装时不询问
  • yum update 包名:升级软件包,如果省略包名则升级所有,包括liunx内核
  • yum remove 包名:卸载软件,但会卸载全部依赖,谨慎!
  • yum grouplist:查看所有安装的组,比如桌面、输入法等
  • yum groupinstall 软件组名:安装软件包组,卸载用groupremove

4 安装示例

后续有需要安装具体软件时再补充相关安装示例。

5 总结

  1. 不同版本系统基本可以采用相同的源码包安装方式,但是二进制包的安装方式有差异。
  2. 了解不同软件包的安装方法;

6 参考文献

  1. 《linux安装软件的几种方式(kali平台)和一些实用的软件(持续更新)》
  2. 《千锋源码包安装视频教程》
  3. 《千锋prm安装方法视频教程》
  4. 《千锋yum安装方法视频教程》
  5. 《Linux软件包(源码包和二进制包)》
  6. 《Linux的RPM和源码包(CentOS)》

第8节 Kali及其他Linux系统软件分类及安装相关推荐

  1. 【Linux系统】第8节 Linux系统软件分类及安装

    目录 1 软件安装包分类 2 源码包 2.1 源码包简介 2.2 源码包安装注意事项 2.3 源码包安装过程 3 二进制包安装过程 3.1 二进制包简介 3.2 CentOS二进制包安装及管理 3.2 ...

  2. 无u盘安装linux系统软件,u盘安装Linux系统

    想不想体验一下Linux下呢?刻盘太浪费钱,而U盘却可以多次利用.本文就是要介绍如何通过U盘安装Linux系统的.只要用Universal-USB-Installer这个软件,大多数的Linux镜像都 ...

  3. kali下载速度慢_Linux系统软件安装更新下载太慢解决方法(转载)

    Linux系统软件安装更新下载太慢解决方法 更换国内源 vim /etc/apt/sources.list 直接删除全部内容也可以直接在文前添加新的APT源 选择适合自己较快的源: #阿里云 deb ...

  4. Linux系统软件安装更新下载太慢解决方法(更换国内源)

    Linux系统软件安装更新下载太慢解决方法(更换国内源) 快节奏的社会,最怕的就是其他因素拖慢自己的节奏,网速更是在当今社会体现的淋漓尽致,所以下载速度能不能快一点,虽然 Festinatione f ...

  5. Kali Linux 64位架构安装Veil-Evasion

    Kali Linux 64位架构安装Veil-Evasion Veil-Evasion是一种生成有效载荷可执行文件的工具,可绕过常见的防病毒软件.由于技术的发展,大部分人都选择安装的Linux系统架构 ...

  6. kali linux虚拟机镜像的安装(详细手把手教你)

    kali linux虚拟机镜像的安装 知识点有增加了 镜像文件的下载路径 下载好就是安装了 知识点有增加了 本文章是我从阅读了大佬的文章或者观看大佬的视频讲解学习到的,总和大佬的中间出现的问题还有我中 ...

  7. Linux系统软件安装及项目发布

    Linux系统软件安装及项目发布 Linux远程连接 SSH协议(Secure Shell) 常用的SSH工具 Xmanager Securecrt Putty Linux进程和程序 实现远程连接 L ...

  8. 深度deep Linux系统软件应用商店下载地址

    深度deep Linux系统软件应用商店下载地址: http://packages.deepin.com/deepin/pool/main/d/deepin-appstore/deepin-appst ...

  9. kali linux u盘 live,Kali Linux Live U盘安装过程

    从U盘启动然后安装Kali是我们最喜欢并且是获得并运行Kali最快的方法.为此,我们首先要在U盘创建Kali ISO的镜象.如果你想长久使用kali linux U盘,请在创建镜象前阅读完整的文档.7 ...

最新文章

  1. 【控制】《复杂运动体系统的分布式协同控制与优化》-方浩老师-第2章-基于速度估计的多欧拉-拉格朗日系统分布式控制
  2. c3p0 0.9.1.2 配套mysql_连接数据库,使用c3p0技术连接MySQL数据库
  3. windows下python安装
  4. 论文浅尝 | 弱监督关系抽取的深度残差学习方法
  5. c++ 实现录音并且指定到文件_搜狗发布四款AI录音笔,4大核心功能开启AI录音新时代...
  6. 嗐,别的95后一天两登Nature,你却还不知道有一款工具可以帮你校对英文文稿和回复审稿意见...
  7. oracle查询优化不走缓存,Oracle数据库存储优化问题
  8. alwayson高可用组_AlwaysOn可用性组–如何在集群实例和独立实例之间设置AG(第2部分)
  9. c++ string长度_String.format()的简单使用
  10. asp.net中使用FreeTextBox控件
  11. 王者荣耀是用什么代码变成MOBA游戏的,该怎么学?有前途吗?
  12. matlab 龙格库塔函数,matlab龙格库塔
  13. 常用的几种向量运算法则
  14. php mocking,测试模拟器 Mocking
  15. elementui表格根据后端返回的数据进行合并表格
  16. java电话簿_JAVA实现简单电话簿功能
  17. 为什么自建 UI 框架?
  18. 国内代码托管中心-码云、自建代码托管平台-GitLab
  19. VK16K33是带键盘扫描的LED数显/数码管驱动芯片多种封装选择驱动电流大,适合高亮显示场合
  20. iOS逆向 掘地求生getting over it SL大法

热门文章

  1. 万能和弦与和弦走向浅析
  2. JavaScript 25 岁了!
  3. 【知识分享】10M宽带非10M
  4. css实现毛玻璃效果
  5. 菲尔人格测试(测试一下自己的分数看看)
  6. 基于网络爬虫的新闻实时监测分析可视化系统(Java+MySQL+Web+Eclipse)
  7. Android的绘画软件,可以画漫画的软件有那些?你们要的安卓绘画软件,拿走吧!...
  8. C++实现暴力筛、朴素素数筛、埃氏素数筛、欧拉素数筛的解法
  9. 怎么使用javascript制作图片切换
  10. [源码和文档分享]基于Android Studio实现的在线学习课堂APP