我们知道,required优先级的包,是构建minimal system必要的包,那么有哪些包属于required呢。
搜索发现,貌似没有现成的命令可以查看,apt search只支持匹配package name和description。
所有package的metadata信息,都放在一个文件了。在本地的:
/var/lib/apt/lists/mirrors.ustc.edu.cn_debian_dists_stable_main_binary-amd64_Packages
$ cat /var/lib/apt/lists/mirrors.ustc.edu.cn_debian_dists_stable_main_binary-amd64_Packages | head -n 32
Package: 0ad
Version: 0.0.26-3
Installed-Size: 28591
Maintainer: Debian Games Team <pkg-games-devel@lists.alioth.debian.org>
Architecture: amd64
Depends: 0ad-data (>= 0.0.26), 0ad-data (<= 0.0.26-3), 0ad-data-common (>= 0.0.26), 0ad-data-common (<= 0.0.26-3), libboost-filesystem1.74.0 (>= 1.74.0), libc6 (>= 2.34), libcurl3-gnutls (>= 7.32.0), libenet7, libfmt9 (>= 9.1.0+ds1), libfreetype6 (>= 2.2.1), libgcc-s1 (>= 3.4), libgloox18 (>= 1.0.24), libicu72 (>= 72.1~rc-1~), libminiupnpc17 (>= 1.9.20140610), libopenal1 (>= 1.14), libpng16-16 (>= 1.6.2-1), libsdl2-2.0-0 (>= 2.0.12), libsodium23 (>= 1.0.14), libstdc++6 (>= 12), libvorbisfile3 (>= 1.1.2), libwxbase3.2-1 (>= 3.2.1+dfsg), libwxgtk-gl3.2-1 (>= 3.2.1+dfsg), libwxgtk3.2-1 (>= 3.2.1+dfsg-2), libx11-6, libxml2 (>= 2.9.0), zlib1g (>= 1:1.2.0)
Pre-Depends: dpkg (>= 1.15.6~)
Description: Real-time strategy game of ancient warfare
Homepage: https://play0ad.com/
Description-md5: d943033bedada21853d2ae54a2578a7b
Tag: game::strategy, interface::graphical, interface::x11, role::program,
uitoolkit::sdl, uitoolkit::wxwidgets, use::gameplaying,
x11::application
Section: games
Priority: optional
Filename: pool/main/0/0ad/0ad_0.0.26-3_amd64.deb
Size: 7891488
MD5sum: 4d471183a39a3a11d00cd35bf9f6803d
SHA256: 3a2118df47bf3f04285649f0455c2fc6fe2dc7f0b237073038aa00af41f0d5f2
Package: 0ad-data
Version: 0.0.26-1
Installed-Size: 3218736
Maintainer: Debian Games Team <pkg-games-devel@lists.alioth.debian.org>
Architecture: all
Pre-Depends: dpkg (>= 1.15.6~)
Suggests: 0ad
Description: Real-time strategy game of ancient warfare (data files)
Homepage: https://play0ad.com/
Description-md5: 26581e685027d5ae84824362a4ba59ee
Tag: role::app-data
Section: games
那么我们就可以用grep命令,把相关的包搜索出来
$ grep -e "Package: \|Priority: required" /var/lib/apt/lists/mirrors.ustc.edu.cn_debian_dists_stable_main_binary-amd64_Packages | grep -B 1 Priority
Package: apt
Priority: required
--
Package: base-files
Priority: required
Package: base-passwd
Priority: required
--
Package: bash
Priority: required
--
Package: coreutils
Priority: required
--
Package: dash
Priority: required
--
Package: debconf
Priority: required
--
Package: debianutils
Priority: required
--
Package: diffutils
Priority: required
--
Package: dpkg
Priority: required
--
Package: e2fsprogs
Priority: required
--
Package: findutils
Priority: required
--
Package: libc-bin
Priority: required
--
Package: grep
Priority: required
--
Package: gzip
Priority: required
--
Package: hostname
Priority: required
--
Package: init-system-helpers
Priority: required
--
Package: mawk
Priority: required
--
Package: ncurses-base
Priority: required
Package: ncurses-bin
Priority: required
--
Package: libpam-modules
Priority: required
Package: libpam-modules-bin
Priority: required
Package: libpam-runtime
Priority: required
--
Package: perl-base
Priority: required
--
Package: sed
Priority: required
--
Package: login
Priority: required
Package: passwd
Priority: required
--
Package: sysvinit-utils
Priority: required
--
Package: tar
Priority: required
--
Package: tzdata
Priority: required
--
Package: bsdutils
Priority: required
--
Package: mount
Priority: required
--
Package: util-linux
Priority: required