The Wayback Machine - https://web.archive.org/web/20221028221950/https://baike.sogou.com/kexue/d10083.htm

安装程序

编辑

安装(或设置)计算机程序指使程序准备好运行的一种操作。因为不同程序和计算机的安装过程不同,所以程序(包括操作系统)通常都自带安装程序,这是一个专门负责执行安装所需所有操作的程序。软件部署涉及多个步骤,有时安装只是其中的一步。

通常,安装过程包括几个步骤:1. 将(程序的)代码从安装文件复制或生成到本地计算机上的新文件中,方便操作系统访问;2. 创建必要目录;3. 注册环境变量;4. 提供独立的卸载程序等。因为通常在多个位置复制或生成代码,因此,通常卸载程序时不只需要删除其所在文件夹。例如,为了完成卸载,可能需要修改或删除注册表文件和其他系统代码。

1 概观编辑

对于某些计算机程序,只需要将它们复制到计算机上的一个文件夹中并确认运行即可。这种操作不适用于其它程序,因此,需要安装那些程序,且一旦成功安装,就可重复运行,而不需要在每次运行之前重新安装。

安装软件的常见操作包括:

  • 确保满足必要的系统要求
  • 检查是否已安装某软件的现有版本
  • 创建或更新程序文件和文件夹
  • 增加配置数据,如配置文件、Windows系统注册表项和环境变量等
  • 确保用户可以访问软件,例如通过创建链接、快捷方式或书签
  • 配置自动运行的组件,如守护程序或Windows服务
  • 激活产品
  • 更新软件版本

这些操作可能会收费,也可能免费。在收费的情况下,安装费用是指在客户同意的情况下,安装驱动程序或设备产生的相关费用。

一些安装程序可能试图诱导用户安装垃圾软件,如各种广告软件、工具栏、试用软件或合作公司的软件。[1] 为了防止这种情况发生,需要格外注意安装过程中的具体要求。然后,可以简单地跳过或取消安装已选中的附加软件 (这可能需要用户使用安装过程的“自定义”、“详细”或“专家”选项)。[1]
这种恶意行为不一定是软件开发人员或其所在公司设置的,也可能是外部安装程序的问题,例如CNET的安装程序Download.com。[2]

2 必要性编辑

如前所述,一些计算机程序不需要安装。曾经,许多在磁盘操作系统(DOS)、Mac 磁盘操作系统、Atari腾讯操作系统和Amiga操作系统上运行的程序都不需要安装。随着计算环境越来越复杂,固定硬盘取代了软盘,有形安装的需求也随之出现。例如,康懋达(Commodore)推出了Amiga系统的安装程序。

不需要安装的现代应用程序被称为便携式应用程序,因为它们可以漫游到不同的计算机并在上面运行。同样,也有不需要安装的实时操作系统,可以直接在可引导光盘、DVD和U盘上运行,也可以像瘦客户机一样通过网络加载。如Amiga操作系统4.0、Linux的各种发行版、Morph操作系统或Mac操作系统的1.0到9.0版本。此外,在网络浏览器中运行的网络应用程序也不需要安装。

3 类别编辑

3.1 手工安装

手工安装是Windows系统最常见的安装形式。安装过程中,通常需要用户做出选择,例如接受或拒绝最终用户许可协议(EULA)、指定首选项(如安装位置)、提供密码或协助激活产品。在图形环境中,安装程序提供基于向导的界面的情况很常见。参与其中的安装程序可能会请求用户介入,以减少错误发生。例如,如果安装计算机程序的磁盘已满,安装程序可能会请求用户指定另一个目标路径或清除磁盘内容,留出足够的空间。一个经常被误解的概念是 “去存档化”。人们不把“去存档化”归为安装操作,因为该过程中不包括用户选择,如接受或拒绝最终用户许可协议。

3.2 静默安装

安装过程中不出现任何消息或窗口。静默安装不同于无人值守安装(见下文):所有的静默安装都不需要人参与,但有些无人值守安装需要有人参与。静默安装可能是为了方便,也可能是一种借口。几乎所有的恶意软件都是采用静默安装的方式。

3.3 无人值守安装

安装过程中不与用户互动或根本没有用户在场。使用这种方法的原因之一是实现众多系统的安装自动化。无人值守安装过程中,要么不需要用户提供任何东西,要么在安装开始之前就已经收集好所有必要的输入信息。这种输入可能是以命令行开关或应答文件的形式,应答文件包含所有必要的参数。Windows XP操作系统和大多数Linux的发行版是可以安装应答文件的其中两个操作系统。人们假定无人值守安装过程中没有用户帮助减少错误。例如,如果安装介质出现故障,安装程序就无法成功安装,因为没有用户可以帮助修复故障或更换介质。无人值守安装程序可能会在计算机日志中记录错误,供以后查看。

3.4 无头安装

安装时未连接计算机显示器。在有人值守的无头安装过程中,另一台计算机连接到目标计算机(例如通过局域网连接),并负责显示输出。由于无头安装不需要用户必须在目标计算机跟前,可通过使用无人值守无头安装程序同时在多台计算机上安装同一程序。

3.5 计划安装或自动安装

在预设时间或预定义条件下进行安装,而不是根据用户的明确命令而启动安装过程。例如,如果系统管理员想要安装正在使用的计算机程序的新版本,就可以进行设置,在该程序不运行时进行安装。操作系统可能会在用户连接的设备上自动安装设备驱动程序。恶意软件也可以自动安装。例如,臭名昭著的Conficker。用户在计算机上连接一个受感染设备后,Conficker会自动安装到计算机上。

3.6 清洁安装

清洁安装是在没有任何干扰因素(如正在安装的计算机程序的旧版本或以前安装的剩余部分)的情况下完成的。特别是清洁安装某一操作系统时,需要在安装之前清除目标磁盘分区已有的相关内容。由于不存在干扰因素,清洁安装可能会成功,然而,非清洁安装可能会失败,也可能需要花费很长时间。

3.7 网络安装

网络安装,英文简称为netinstall,是指从共享网络资源上安装程序,即先安装一个最小的系统,之后,再通过网络下载其它软件包。这可能只是一个拷贝原始媒介的过程,但是软件发行商在向客户机构提供站点许可证时,可能会提供一个旨在经由网络安装的版本。

4 安装程序编辑

安装程序是将文件(如应用程序、驱动程序或其他软件)安装到计算机上的一种计算机程序。有些专门的安装程序只能用来安装它们含有的文件,而其它安装程序是通用的,通过读取要安装的软件包的内容来进行安装。

包管理系统和安装程序二者的区别如下图:

This box:

  • view
  • talk
  • edit

包管理器和安装程序之间的比较
标准 包管理器 安装程序
装运时 通常,操作系统 每个计算机程序
安装信息的位置 一个中央安装数据库 这完全由安装者决定。它可以是应用程序文件夹中的文件,也可以是操作系统文件和文件夹中的文件。充其量,他们可以在卸载程序列表中注册自己,而不暴露安装信息。
维护范围 系统上潜在的所有包 只有捆绑在一起的产品
开发人 一个包管理器供应商 多个安装商
包装格式 一些众所周知的格式 可以有和应用程序数量一样多的格式
包格式兼容性 只要包管理器支持,就可以使用。包管理器的较新版本要么继续支持它,要么用户不升级包管理器。 安装程序总是与其兼容存档格式,如果它使用任何。然而,像所有计算机程序一样,安装程序可能会受到以下因素的影响软件腐烂。

4.1 引导程序

在安装计算机程序的过程中,有时需要对安装程序或软件包管理器进行更新。人们使用一种叫做“引导”的技术来实现这一点。常见的引导模式是使用小的可执行文件来更新安装程序,并在更新后开始真正的安装。这个小的可执行文件就叫做引导程序。有时引导程序也会在引导过程中为软件安装其它必要组件。

4.2 常见类型

跨平台安装程序构建商生产在Windows、苹果机和Linux上运行的安装程序,例如,Flexera公司生产的 InstallAnywhere。

WindowsNT系列包括一个安装应用编程接口和一个名为Windows安装程序的辅助工具。微软提供必需的工具,使Windows安装程序能够在免费Windows软件开发工具包中创建多个安装程序,而不是把重心放在其应用编程接口上,好让开发者和第三方在创建自定义安装程序可以利用。第三方工具(如Flexera公司的 InstallShield和Outercurve Foundation的WiX)可能会通过支持使用此应用编程接口创建安装程序来加快安装进程。不依赖于Windows安装程序的安装创建工具包括Wise Solutions有限公司的Wise Installation Studio、MindVision Software公司的Installer VISE、SamLogic公司的Visual Installer、NSIS、Clickteam、InnoSetup和InstallSimple等。

Mac操作系统中有一个叫“安装程序”的本地包管理器,还有一个叫 “软件更新”的独立应用软件,但后者只支持在苹果和系统软件上运行。自10.6.6版本起,苹果应用商店就被纳入坞站,与畅销的IOS设备应用商店有许多共同属性,例如相似的应用批准流程、购买时需使用苹果标识以及自动安装和更新等。虽然苹果公司更喜欢这种Mac操作系统交付方式,[3]但以前购买的许可证不能在苹果应用商店里使用,即进行下载或自动更新。Mac操作系统的商业应用程序也可能使用第三方安装程序,如Installer VISE (MindVision软件公司)或InstallerMaker (StuffIt公司) 的Mac版。

4.3 系统安装程序

系统安装程序指用于在设备上设置和安装操作系统的软件。Linux上的系统安装程序有Ubuntu系统的Ubiquity和Wubi、CentOS和Fedora系统的Anaconda、基于Debian的Linux发行版的Debian-Installer,以及基于SUSE的Linux发行版的YaST。还有Haiku操作系统,它使用的是一个叫做“Haiku安装程序”的实用程序:Haiku安装程序收到来自实时光盘或实时USB的引导后,自主安装到设备上。

参考文献

  • [1]

    ^Hoffman, Chris (27 July 2013). "How to Avoid Installing Junk Programs When Downloading Free Software". HowToGeek. Retrieved 6 October 2015..

  • [2]

    ^Mathews, Lee (22 August 2011). "Download.com wraps downloads in bloatware, lies about motivations". ExtremeTech. Retrieved 6 October 2015..

  • [3]

    ^"macOS - What is macOS". Apple. Retrieved 5 April 2018..

阅读 613
版本记录
  • 暂无