加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_宿迁站长网 (https://www.0527zz.com/)- AI行业应用、大数据、建站、语音技术、研发安全!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

apt-get命令适用于deb包管理式的操作系统

发布时间:2023-05-30 14:02:41 所属栏目:Linux 来源:转载
导读:   Linux常用命令apt-get命令适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统,下面为大家分享一下Linux常用命令apt-get命令具体使
  Linux常用命令apt-get命令适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统,下面为大家分享一下Linux常用命令apt-get命令具体使用方法。
 
  Advanced Package Tool,又名apt-get,是一款适用于Unix和Linux系统的应用程序管理器。最初于1998年发布,用于检索应用程序并将其加载到Debian Linux系统。Apt-get成名的原因之一在于其出色的解决软件依赖关系的能力。其通常使用.deb-formatted文件,但经过修改后可以使用apt-rpm处理红帽的Package Manager(RPM)文件。
 
     使用apt-get的主流Linux系统包括Debian和Ubuntu变异版本。大多数情况下,从命令行运行该工具。桌面上有几个图形前端可以使用,包括Synaptic Package Manager、Ubuntu Software Center、Aptitude和Kpackage。Raspberry Pi和Beaglebone Black nanoLinux版用户可以很容易地使用apt-get加载程序,因为这些系统通常来自Ubuntu或Debian代码。是debian,ubuntu发行版的包管理工具,与红帽中的yum工具非常类似。 [1]
 
  apt-get命令一般需要root权限执行,所以一般跟着sudo命令。
 
  常用命令:
 
   apt-get install packagename  #安装一个新软件包
 
   apt-get remove packagename #卸载一个已安装的软件包(保留配置文档)
 
   apt-get remove --purge packagename #卸载一个已安装的软件包(删除配置文档)
 
   apt-get autoremove packagename #删除包及其依赖的软件包
 
   apt-get autoremove --purge packagname #删除包及其依赖的软件包+配置文件,比上面的要删除的彻底一点
 
   dpkg --force-all --purge packagename #有些软件很难卸载,而且还阻止了别的软件的应用,就能够用这个,但是有点冒险。
 
  无论用户使用哪些手段配置APT软件源,只是修改了配置文件——/etc/apt/sources.list,目的只是告知软件源镜像站点的地址。但那些所指向的镜像站点所具有的软件资源并不清楚,需要将这些资源列个清单,以便本地主机知晓可以申请哪些资源;
 
  1、sudo apt-get update
 
    apt-get update命令会扫描每一个软件源服务器,并为该服务器所具有软件包资源建立索引文件,存放在本地的/var/lib/apt/lists/目录中。 使用apt-get执行安装、更新操作时,都将依据这些索引文件,向软件源服务器申请资源。因此,在计算机设备空闲时,经常使用“apt-get update”命令刷新软件源,是一个好的习惯
 
  2、sudo apt-get upgrade
 
    将系统中的所有软件包一次性升级到最新版本,可以很方便的完成在相同版本号的发行版中更新软件包。在依赖关系检查后,命令列出了目前所有需要升级的软件包,在得到用户确认后,便开始更新软件包的下载和安装。当然,apt- get upgrade命令会在最后以合理的次序,安装本次更新的软件包。系统更新需要用户等待一段时间。
 
  3、sudo apt-get install XXX
 
    使用“apt-get install”下载软件包大体分为4步:第一步,扫描本地存放的软件包更新列表(由“apt-get update”命令刷新更新列表,也就是/var/lib/apt/lists/),找到最新版本的软件包;第二步,进行软件包依赖关系检查,找到支持该软件正常运行的所有软件包;第三步,从软件源所指 的镜像站点中,下载相关软件包;第四步,解压软件包,并自动完成应用程序的安装和配置。
 
  5、升级系统到新版本
 
  Ubuntu Linux会不断推出新的版本,无论是通过Internet,还是使用光盘(由ISO镜像文件刻录的安装光盘),使用“apt-get dist-upgrade”命令可以实现Ubuntu系统从一个版本直接升级到另一个新版本。例如,从Ubuntu的一个发行版本 dapper(version 6.10)升级到feisty(version 7.04)。
 
  这个升级过程包括3步:
 
  ●  第一步,需要修改软件源配置文件的各个配置项中的版本标识。类似于将以下配置项。
 
   deb http://cn.archive.ubuntu.com/ubuntu/  dapper main restricted
 
  修改为:
 
   deb http://cn.archive.ubuntu.com/ubuntu/  feisty  main restricted
 
  ●  第二步,使用“apt-get update”命令刷新软件包更新列表。
 
  ●  第三步,使用“apt-get dist-upgrade”命令为系统升级新的版本。
 
  从以下命令的执行结果可以看出,“apt-get dist-upgrade”要比“apt-get upgrade”要复杂的多,必须要筹划整个系统的升级过程,其中包括列出所有需要卸载、安装和升级的软件包。这个升级过程中的时间和空间消耗是相当大的。
 
  6、几个和apt-get相关的目录
 
  复制代码
 
   #文件的内容是软件包的描述信息, 该软件包括当前系统所使用的 ubunt 安装源中的所有软件包,其中包括当前系统中已安装的和未安装的软件包.
 
   /var/lib/dpkg/available
 
   #目录是在用 apt-get install 安装软件时,软件包的临时存放路径
 
   /var/cache/apt/archives
 
   #存放的是软件源站点
 
   /etc/apt/sources.list
 
   #使用apt-get update命令会从/etc/apt/sources.list中下载软件列表,并保存到该目录
 
   /var/lib/apt/lists
 
  复制代码
 
  7、APT工作原理
 
  Ubuntu采用集中式的软件仓库机制,将各式各样的软件包分门别类地存放在软件仓库中,进行有效地组织和管理。然后,将软件仓库置于许许多多的镜像服务器中,并保持基本一致。这样,所有的Ubuntu用户随时都能获得最新版本的安装软件包。因此,对于用户,这些镜像服务器就是他们的软件源(Reposity)。然而,由于每位用户所处的网络环境不同,不可能随意地访问各镜像站点。为了能够有选择地访问,在Ubuntu系统中,使用软件源配置文件/etc/apt/sources.list列出最合适访问的镜像站点地址。
 
  apt-get的更新过程:
 
  执行apt-get update
 
  程序分析/etc/apt/sources.list
 
  自动连网寻找list中对应的Packages/Sources/Release列表文件,如果有更新则下载之,存入/var/lib/apt/lists/目录
 
  apt-get install 相应的包 ,下载并安装。
 
  即使这样,软件源配置文件只是告知Ubuntu系统可以访问的镜像站点地址,但那些镜像站点具体都拥有什么软件资源并不清楚。若每安装一个软件包,就在服务器上寻找一遍,效率是很低的。因而,就有必要为这些软件资源列个清单(建立索引文件),以便本地主机查询。
 
  apt-get install 下载的软件存放到 /var/cache/apt/archives/下。
 
  同时,APT能够检查Ubuntu Linux系统中的软件包依赖关系,大大简化了Ubuntu用户安装和卸载软件包的过程。
 
  apt-get install原理: deb http://cn.archive.ubuntu.com/ubuntu/ precise main restricted
 
  可通过浏览器找到
 
  apt-get 每次都会读取这个文件,从而获取的包的信息。从Packages.gz中获取到所有包的信息。Packages.gz中包含的信息有:
 
  包名,优先级,类型,维护者,架构,源文件(source),版本号,依赖包,冲突性信息,包大小,文件的下载路径,MD5sum,SHA1,包描述,Xul-Appid—应用程序id,Bugs信息,Origin,Supported
 
  Packages中的一个包信息实例:
 
  复制代码
 
   Package: abrowser
 
   Priority: optional
 
   Section: web
 
   Installed-Size: 153
 
   Maintainer: Ubuntu Mozilla Team
 
   Architecture: amd64
 
   Source: firefox
 
   Version: 11.0+build1-0ubuntu4
 
   Depends: firefox (>= 9.0)
 
   Filename: pool/main/f/firefox/abrowser_11.0+build1-0ubuntu4_amd64.deb
 
   Size: 8940
 
   MD5sum: e8781af38a6de76126d190fc10a14bf2
 
   SHA1: 408abd5f960d4b02bc18581df348954eb7620772
 
   SHA256: cdfad0e4435c035b3115bdec08d79ccfc68bf9480e89df9270b3b6befa348699
 
   Description: Safe and easy web browser from Mozilla – transitional package
 
   Description-md5: e89058e4775caff7d26313fa8811675e
 
   Bugs: https://bugs.launchpad.net/ubuntu/+filebug
 
   Origin: Ubuntu
 
   Supported: 18m
 
  复制代码
 
  从这个信息段中可以看出来,实际的deb包放在pool/main/f/firefox/abrowser_11.0+build1-0ubuntu4_amd64.deb,通过浏览器同样可以找到。从中也可以看到Depends一项中的依赖需求。
 
  至此关于Linux常用命令apt-get命令的使用方法分享结束,大家如果对apt-get命令的使用方法还有问题可以通过评论区将问题提交我们。
 

(编辑:云计算网_宿迁站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!