A diferença entre apt e apt-get no gerenciamento de pacotes do Ubuntu

História do apt e apt-get

O Debian usa um conjunto de ferramentas chamado Advanced Packaging Tool (APT) para gerenciar pacotes de software (não confundir com o comando apt, não é a mesma coisa), nas distribuições Linux baseadas no Debian (como o Ubuntu), existem várias ferramentas que pode ser usado com APT interage para facilitar aos usuários instalar, remover e gerenciar pacotes de software. apt-get e apt-cache são duas das ferramentas mais populares.

O uso dos comandos apt-get e apt-cache é de nível muito baixo. Os comandos de gerenciamento de pacotes de software comumente usados ​​estão espalhados em comandos diferentes. Você tem que usar o apt-get por um tempo, e você tem que usar o apt-cache para um tempo. A interface não pode ser unificada, o que é muito hostil.

Para isso, o Ubuntu 16.04 apresenta o conjunto de comandos apt, que é otimizado com base no apt-get e no apt-cache, e é mais estruturado e avançado. O Apt ignora as necessidades de aquisição e armazenamento em cache. Com o apt, você não precisa alternar entre os comandos apt-get e apt-cache. Com o apt, você obtém todas as ferramentas necessárias de uma só vez. Não se perca na infinidade de opções de comando. O principal objetivo do Apt é fornecer uma maneira agradável de trabalhar eficientemente com pacotes de software. Suas opções de comando simplificadas são mais fáceis de usar e fáceis de lembrar.
insira a descrição da imagem aqui
Se o apt-get será obsoleto, não sei no futuro, mas muitas outras distribuições Linux também estão seguindo os passos do Ubuntu e começando a encorajar os usuários a usar o apt em vez do apt-get. A menos que você planeje fazer algumas operações específicas e essas operações usem mais recursos do apt-get. Caso contrário, use apt.

Para resumir a diferença entre apt e apt-get é:

  1. Apt é uma nova ferramenta, usada para substituir apt-get e apt-cache, o objetivo é uma ferramenta de gerenciamento de pacotes mais amigável e fácil de usar;
  2. O apt-get não foi abandonado ou desatualizado e ainda pode ser usado com confiança, mas os usuários comuns são aconselhados a mudar para o apt.

Comparação dos comandos apt e apt-get

Embora o apt forneça algumas opções semelhantes ao apt-get, ele não é compatível com versões anteriores do apt-get. Isso significa que se você apenas usar apt em vez de apt-get no comando apt-get, nem sempre funcionará.

Vamos ver quais opções de comando do apt-get e apt-cache são substituídas pelo comando apt

comando apt comando substituído função do comando
atualização do apt apt-get update Atualizar índice do repositório
atualização do apt atualização do apt-get atualizar todos os pacotes atualizáveis
apt instalar apt-get install instalar pacote
apto remover apt-get remover remover pacotes, mas manter arquivos de configuração
purgar apto apt-get purge Remover pacotes também exclui arquivos de configuração
apt autoremove apt-get autoremove Remova automaticamente dependências inúteis
atualização completa do apt apt-get dist-upgrade Lidar automaticamente com dependências ao atualizar pacotes
pesquisa adequada busca apt-cache aplicativo de pesquisa
show adequado apt-cache show Exibir as informações básicas do pacote de instalação especificado

O apt também possui alguns comandos exclusivos:

novo comando apt função do comando
lista adequada Listar pacotes com condições (instalados, atualizáveis, etc.)
apt edit-sources editar lista de fontes

Para os comandos comumente usados, consulte as instruções de ajuda do apt, apt-get e apt-cache:

$ apt  -h
apt 2.0.9 (amd64)
用法: apt [选项] 命令

命令行软件包管理器 apt 提供软件包搜索,管理和信息查询等功能。
它提供的功能与其他 APT 工具相同(像 apt-get 和 apt-cache),
但是默认情况下被设置得更适合交互。

常用命令:
  list - 根据名称列出软件包
  search - 搜索软件包描述
  show - 显示软件包细节
  install - 安装软件包
  reinstall - 重新安装软件包
  remove - 移除软件包
  autoremove - 卸载所有自动安装且不再使用的软件包
  update - 更新可用软件包列表
  upgrade - 通过 安装/升级 软件来更新系统
  full-upgrade - 通过 卸载/安装/升级 来更新系统
  edit-sources - 编辑软件源信息文件
  satisfy – 使系统满足依赖关系字符串
$ apt-get -h
apt 2.0.9 (amd64)
用法: apt-get [选项] 命令
    apt-get [选项] install|remove 软件包1 [软件包2 ...]
    apt-get [选项] source 软件包1 [软件包2 ...]

apt-get 可以从认证软件源下载软件包及相关信息,以便安装和升级软件包,
或者用于移除软件包。在这些过程中,软件包依赖会被妥善处理。

常用命令:
  update - 取回更新的软件包列表信息
  upgrade - 进行一次升级
  install - 安装新的软件包(注:软件包名称应当类似 libc6 而非 libc6.deb)
  reinstall - 重新安装软件包(注:软件包名称应当类似 libc6 而非 libc6.deb)
  remove - 卸载软件包
  purge - 卸载并清除软件包的配置
  autoremove - 卸载所有自动安装且不再使用的软件包
  dist-upgrade - 发行版升级,见 apt-get(8)
  dselect-upgrade - 根据 dselect 的选择来进行升级
  build-dep - 为源码包配置所需的编译依赖关系
  satisfy - 使系统满足依赖关系字符串
  clean - 删除所有已下载的包文件
  autoclean - 删除已下载的旧包文件
  check - 核对以确认系统的依赖关系的完整性
  source - 下载源码包文件
  download - 下载指定的二进制包到当前目录
  changelog - 下载指定软件包,并显示其变更日志(changelog)
$ apt-cache -h
apt 2.0.9 (amd64)
用法: apt-cache [选项] 命令
       apt-cache [选项] show 软件包1 [软件包2 ...]

apt-cache 可以查询和显示已安装和可安装软件包的可用信息。
它专门工作在本地的数据缓存上,而这些缓存可以通过比如
apt-get'update' 命令来更新。如果距离上一次更新的时间太久,
那么它显示的信息可能就会过时。不过作为交换,apt-cache 不依赖
当前软件源的可用性(比如:离线状态)。

常用命令:
  showsrc - 显示源文件的各项记录
  search - 根据正则表达式搜索软件包列表
  depends - 显示该软件包的依赖关系信息
  rdepends - 显示所有依赖于该软件包的软件包名字
  show - 以便于阅读的格式介绍该软件包
  pkgnames - 列出所有软件包的名字
  policy - 显示软件包的安装设置状态

Exemplos de comandos comuns

Para o exemplo a seguir, tente usar o comando apt.

Atualizar índice do repositório

Use o comando apt update para ressincronizar o índice de arquivo do warehouse de origem.Este comando deve ser executado quando a lista de origem for atualizada.

$ sudo apt update

Atualizar pacotes instalados

Atualize todos os pacotes instalados:

apt-get upgrade

Atualize apenas pacotes específicos:

apt-get upgrade <package_name>

insira a descrição da imagem aqui

listar todos os pacotes disponíveis

Você pode usar este comando para verificar se o pacote que deseja instalar está na lista de pacotes instaláveis. Este comando exibirá todos os pacotes de instalação disponíveis e o status de instalação de cada pacote, incluindo informações como arquivos de configuração instalados, atualizáveis ​​e restantes.

apt list

Pacote de instalação de pesquisa de palavras-chave

Antes da instalação do apt, se você não souber o nome exato do pacote, poderá usar o apt search para pesquisar, que suporta pesquisa difusa. Quanto mais detalhada a palavra-chave, mais preciso será o resultado da pesquisa. A palavra-chave pode fazer parte do nome do pacote ou a parte da descrição do pacote do conteúdo.

apt search <search term>

instalar software

instalar software:

apt install <package_name>

Instale o software de versão específica:

apt install <package_name>=<version_number>

Instale vários softwares ao mesmo tempo:

apt install <package_1> <package_2> <package_3>

insira a descrição da imagem aqui

desinstalar software

Há duas maneiras de desinstalar o software:

apt remove <package_name>
apt purge <package_name>

insira a descrição da imagem aqui

Exibir informações do pacote de instalação

Por exemplo, verifique as informações básicas do pacote de instalação bash

$ apt show bash
Package: bash
Version: 5.0-6ubuntu1.2
Priority: required
Essential: yes
Section: shells
Origin: Ubuntu
Maintainer: Ubuntu Developers <[email protected]>
Original-Maintainer: Matthias Klose <[email protected]>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 1,700 kB
Pre-Depends: libc6 (>= 2.15), libtinfo6 (>= 6)
Depends: base-files (>= 2.1.12), debianutils (>= 2.15)
Recommends: bash-completion (>= 20060301-0)
Suggests: bash-doc
Conflicts: bash-completion (<< 20060301-0)
Replaces: bash-completion (<< 20060301-0), bash-doc (<= 2.05-1)
Homepage: http://tiswww.case.edu/php/chet/bash/bashtop.html

Limpe dependências inúteis

Ao instalar o software no sistema Ubuntu, os pacotes dependentes do software geralmente são instalados automaticamente. Depois de excluir o software, seus pacotes dependentes podem precisar ser excluídos manualmente usando o seguinte comando:

apt autoremove

Limpe os pacotes de cache baixados

Quando o Ubuntu instala o software por meio do apt-get install, os pacotes baixados são armazenados em cache no diretório /var/cache/apt/archives/. Ele não é imediatamente removido do diretório após a conclusão da instalação. Se você excluir um pacote e reinstalá-lo, seu sistema procurará o pacote no cache e o buscará de lá, em vez de baixá-lo novamente.

Diretório temporário para gerenciamento de pacotes:
Armazenar durante o download: /var/cache/apt/archives/partial
Armazenar após o download: /var/cache/apt/archives

Se você deseja limpar esses pacotes de cache baixados, execute o comando:

sudo apt-get clean
sudo apt-get autoclean

apt-get clean exclui todos os pacotes nos diretórios /var/cache/apt/archives/ e /var/cache/apt/archives/partial/ (exceto pacotes bloqueados).

apt-get autoclean remove apenas pacotes antigos (mais antigos do que os atualmente disponíveis) e pacotes inúteis (bloqueados) em /var/cache/apt/archives/ e /var/cache/apt/archives/partial/ exceto pacotes de software).

insira a descrição da imagem aqui

Limpe os arquivos de configuração restantes

Se você usar o apt remove para desinstalar o software, os arquivos de configuração do software serão mantidos e haverá arquivos de configuração deixados no sistema neste momento. Os arquivos de configuração residuais podem ser visualizados com o seguinte comando:

$ apt list | grep 残留

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

appmenu-qt5/now 0.3.0+16.04.20170216-0ubuntu1 amd64 [配置文件残留]
apt-xapian-index/focal,focal 0.51ubuntu1 all [配置文件残留]
docutils-common/focal,focal,now 0.16+dfsg-2 all [配置文件残留]
eclipse-platform/now 3.8.1-8 amd64 [配置文件残留]
fcitx-ui-qimpanel/focal 2.1.3-2build1 amd64 [配置文件残留]

Veja as dependências do pacote de instalação

Por exemplo, verifique as dependências do pacote de instalação bash:

$ apt-cache depends bash
bash
  预依赖: libc6
  预依赖: libtinfo6
  依赖: base-files
    base-files:i386
  依赖: debianutils
    debianutils:i386
  冲突: bash-completion
  推荐: bash-completion
  建议: bash-doc
  替换: bash-completion
  替换: bash-doc

referência

https://blog.csdn.net/slampai/article/details/128072043
https://itsfoss.com/apt-vs-apt-get-difference/
https://itsfoss.com/apt-get-linux-guide /
https://linux.cn/article-4933-1.html

Acho que você gosta

Origin blog.csdn.net/benkaoya/article/details/129468685
Recomendado
Clasificación