常用debian系的系统,为了彻底搞清楚apt,只得自己翻译手册了,网上也没有齐全的。为了不丢失意思,翻译得比较保守,但是应该能够读懂。按照意思进行了适当的层次划分。
下面是apt-get的。
apt-get - APT包处理实用程序 – 命令行接口
apt-get [-asqdyfmubV] [-o=config_string] [-c=config_file]
[-t=target_release] [-a=architecture] {update | upgrade |
dselect-upgrade | dist-upgrade |
install pkg [{=pkg_version_number | /target_release}]... |
remove pkg... | purge pkg... |
source pkg [{=pkg_version_number | /target_release}]... |
build-dep pkg [{=pkg_version_number | /target_release}]... |
download pkg [{=pkg_version_number | /target_release}]... | check |
clean | autoclean | autoremove | {-v | --version} | {-h | --help}}
apt-get是处理包的命令行工具,并且可以认为是用户使用APT库的其他工具的的“后端”。存在几个“前端”,比如aptitude(8),synaptic(8)和wajig(1)
除了-h,--help外有以下选项:
update
/etc/apt/sources.list中指定的位置。比如,当使用一个Debian archive时,这条命令会检索并扫描Packages.gz文件,以便能够获取新包或新版本包。upgrade或者dist-upgrade之前执行。upgrade
/etc/apt/sources.list指明。update更新,以便apt-get知道有新版本包可获取。dist-upgrade
upgrade,还会智能处理新版本包的依赖变化。apt-get有一个智能的冲突处理系统,它会在必要时升级最重要的包,而牺牲不太重要的软件包。因此dist-upgrade可能会移除一些软件包。apt_preferences(5)来了解单个包覆盖的常规设置。dselect-upgrade
frint-end,dsesect(1)联合使用。dselect(1)对可获取包的字段状态的改变,然后执行必要的操作来达到该状态。(例如,删除旧包和安装新包)install
apt-utils_2.2.4_amd64.deb,而是apt-utils)。/etc/sources.list用于定位所需要的包。-被附加到包名(没有中间空格),则被识别的包如果被安装了,会被删除。+加号可用于指定一个包被安装。后面的这些特征可用用来覆盖apt-get冲突处理系统的决策。<包名>=<包版本号>,可以选择特定版本的包进行安装。这会定位那个特定的版本来进行安装。或者,可用通过<包名>/<发行版或归档名称(stable, testing, unstable)>来选择包的一个特定的发行。upgrade不同,upgrade会升级所有安装了的包,install会安装指定包的最新的版本。只需提供要升级的包的名字,那么如果有一个更新版本可用,它已经它的依赖都会被下载安装。apt_preferences(5)机制允许您创建一个单个软件包的替代安装策略。.?*中的之一,那么它会被假设会一个POSIX正则表达式,然后它会被应用到数据库中的所有包名。所有被匹配的都会被安装(或卸载)。请注意,匹配是由子字符串完成的,所有lo,*会匹配how-lo和lowest。如果你不想这样,请使用^或$来锚定正则表达式,或者创建更具体的表达式。apt(8)被移除,未来也会从apt-get移除,除了锚定表达式。请改用apt-patterns-reinstall
install --reinstall的别名remove
remove与install相同,只是删除包,而非安装包。注意,删除包会保留其配置系统上的文件。如果+加号附加到包名(没有间隔),则会安装包而非删除包。purge
remove相同,只是包会被删除和净化(所有配置文件都会被删除)。source
apt-get获取源包,APT会审查可用的包来决定获取哪个源包。会找到最新版本的源包,下载到当前目录,同时遵循尊重默认版本,如果可能,设置选项APT::Default-Release,-t或者每个包都用pkg/release语法。--only-source选项。sources.list中的deb-src行来与二进制包分开追踪。这意味着你需要为每个仓库添加这一行,以指明想要从何处获取源,否则,你要么会得到错误的源版本,要么什么都得不到。--compile选项被指定,那么这个包会被编译为二进制的.deb包,这通过使用--host-architecture选项指定架构、由dpkg-buildpackage编译。如果--download-only被指定,那么源包不会被解压。=包版本来获取,这与对包文件的机制类似。这可以实现精确匹配包名和包版本。隐式启用APT::Get::Only-Source选项。dpkg数据库中没有像对二进制包一样安装或跟踪源包,它们只是被下载到当前目录,比如源码压缩包。build-dep
apt-get 安装或删除包来试图满足一个源包的构建依赖关系。默认情况下依赖项足够满足本地构建包。如果需要,可用通过--host-architecture选项来指定主机架构。--only-source。’satisfy
apt-get满足给定的依赖字符串。这个字符串可能 具有构建配置文件和架构限制列表,在构建依赖项中。它们可选前缀"Conflicts:"来不满足依赖字符串。可用指定多个同类型的字符串。apt-get satisfy "foo" "Conflicts: bar" "baz(>>1.0)|bar(=2.0), moo">,请使用<=/>=。check
download
clean
/var/cache/apt/archives/中除lock文件和partial文件夹外的所有文件。autoclean (自1.1起,别名auto-clean)
clean会清除本地包文件库。不同之处是它只删除无法不能再下载且基本上无用的包。这允许长期缓存而不会增长到超出控制。配置选项APT::Clean-Installed会阻止 安装了的且被设置关闭的包 被清除。autoremove
changelog
changelog,并通过sensible-pager来展示。默认展示安装的版本的changelog。但是,可以指定与install命令同样的选项。indextargets
deb822格式展示apt-get update将会下载的所有数据文件(又名索引目标)的信息列表。--format 选项来修改输出格式 ,也接受默认输出来筛选记录。这个选项主要作为结构,提供给外部的与APT协作的工具,用以获取信息和下载文件的文件名,以便他们也可以使用下载的文件而不是自己再次下载。详细内容请看由apt-doc包提供的。usr/share/doc/apt/acquire-additional-files.md.gz。所有命令行选项都可以使用配置文件设置,描述指示要设置的配置选项。
对于布尔选项您可以使用 -f-,–no-f, -f=no 之类的选项(或其他几种变体)来覆盖配置文件。
–no-install-recommends
–install-suggests
-d, --download-only
-f, --fix-broken
install/remove一起使用时,可以省略任何允许的包,由APT 来推断可能的解决方案。如果指定了包,那么这些包必须彻底纠正问题。-m, --ignore-missing, --fix-missing
–no-download
--ignore-missing来 强制 APT 仅使用它已经下载的.deb包。-q, --quiet
-q=# 设置安静级别,这会覆盖配置文件。-y。如果没有-d、--print-uris或-s只来的误操作修饰符,你永远不应该使用-qq,因为APT可能做一些你不想做的事情。-s, --simulate, --just-print, --dry-run, --recon, --no-act
apt-get正在执行时,系统状态可以改变。模拟也可用由非root用户执行,尽管他可能没有所有apt配置文件的读取权限,这些配置会使模拟失真。-y, --yes, --assume-yes
yes,并且以非交互式运行。apt-get 将中止。–assume-no
no。–no-show-upgraded
-V, --verbose-versions
-a, --host-architecture
apt -get source --compile指定,以及如何满足交叉构建依赖项(cross-builddependencies)。-P, --build-profiles
apt-get source --compile构建,以及控制如何满足构建依赖项。-b, --compile, --build
–ignore-hold
–with-new-pkgs
upgrade结合使用时,允许安装新包。如果一个安装的包需要新的依赖,这通常是有用的。upgrade不再保留包,而是升级包并安装新的依赖。upgrade配上这个选项用于也不会移除包,只是允许添加新的。–no-upgrade
install结合使用时,这个选项会阻止命令行中的包被升级,如果它们已经被安装了。–only-upgrade
install连用时,这个选项会升级已经安装的包,同时忽略安装新的包的请求。–allow-downgrades
–allow-remove-essential
–allow-change-held-packages
–force-yes
–print-uris
source和update命令。与update一起使用时,MD5 和大小不包括在内,由用户解压缩任何压缩的文件。– purge
pugre而不是remove可用删除任何东西。一个*会显示在预定被删除的包旁边。
remove --purge相当于purge命令–reinstall
–list-cleanup
--no-list-cleanuo来关闭它。当开启时,apt-get会自动处理/var/lib/apt/lists的内容来确保废弃的文件被删除。关闭它的唯一原因是你经常改变你的源(sources.list)。-t, --target-release, --default-release
/etc/apt/preferences中的全局设定。被专门加pin的包不会被这个选项的值影响。简而言之,这个选项让你能简单地控制那个发行包将被取回。一些常见的例子:-t "2.1*" ,-t unstable或者-t sid。–trivial-only
–mark-auto
–no-remove
–auto-remove, --autoremove
install或remvoe,则此选项的作用类似于运行 autoremove 命令,删除未使用的依赖包。–only-source
–diff-only, --dsc-only, --tar-only
–arch-only
–indep-only
–allow-unauthenticated
–no-allow-insecure-repositories
update失败。另请参阅apt-secure(8)了解概念和含义的详细信息。–allow-releaseinfo-change
update命令继续从更改了发行信息存储库中下载数据,这些信息指示了一个新的主要版本。对于这种存储库,APT将在update时失败,直到确认了更改,以确保用户为更改做好了准备。另请参阅 apt-secure(8) 了解有关概念和配置。–show-progress
–with-source filename
-eany, --error-on=any
update命令失败。-h, --help
-v, --version
-c, --config-file
-o, --option
/etc/apt/sources.list
/etc/apt/sources.list.d/
/etc/apt/apt.conf
/etc/apt/apt.conf.d/
/etc/apt/preferences
/etc/apt/preferences.d/
/var/cache/apt/archives/
/var/cache/apt/archives/partial/
/var/lib/apt/lists/
/var/lib/apt/lists/partial/
apt-cache(8), apt-cdrom(8), dpkg(1), sources.list(5), apt.conf(5), apt-config(8), apt-secure(8), The APT User’s guide in /usr/share/doc/apt-doc/,apt_preferences(5), the APT Howto.
apt-get 在正常操作时返回零,在错误时返回十进制 100。
APT bug page[1]. If you wish to report a bug in APT, please see /usr/share/doc/debian/bug-reporting.txt or the reportbug(1) command.
Jason Gunthorpe
APT team
APT 2.2.4 08 January 2021 APT-GET(8)
手册到此结束,下面是一些常见用法与简介。
用法:apt-get [选项] 命令
apt-get [选项] install|remove pkg1 [pkg2 …]
apt-get [选项] source pkg1 [pkg2 …]
apt-get 是一个下载安装软件包的简单命令行接口。
最常用的命令是update(更新)
和install(安装)。
命令:
选项:
apt-cache search packagename 搜索包
apt-cache show packagename 获取包的相关信息,如说明、大小、版本等
apt-get install packagename 安装包
apt-get install packagename - - reinstall 重新安装包
apt-get -f install 修复安装"-f = --fix-missing"
apt-get remove packagename 删除包
apt-get remove packagename - - purge 删除包,包括删除配置文件等
apt-get update 更新源
apt-get upgrade 更新已安装的包
apt-get dist-upgrade 升级系统
apt-get dselect-upgrade 使用 dselect 升级
apt-cache depends packagename 了解使用依赖
apt-cache rdepends packagename 是查看该包被哪些包依赖
apt-get build-dep packagename 安装相关的编译环境
apt-get source packagename 下载该包的源代码
apt-get clean 清理无用的包
apt-get autoclean 清理无用的包
apt-get check 检查是否有损坏的依赖