如何使用8有用的“Debian好的工具”来管理Debian包

Debian的好东西是一个包,其中包括用于管理的Debian及其衍生系统如Ubuntu,Linux的Kali工具箱式实用程序。 此包下的实用程序以与许多公认的shell工具结合的方式开发,其他包括在内,因为它们不能在基于Debian的Linux发行版上开发为自己的包。

8 Debian Goodies管理Debian软件包的实用程序

在本指南中,我们将看看如何使用Debian的好吃的东西 ,其中包括dglob,debget,dpigs,dgrep,debmany,checkrestart,popbugs 和-PKG-破产下的实用程序。

让我们看看下面每个工具的描述:

  1. dglob -制作匹配的模式其包名称的列表
  2. dgrep -搜索所有的文件中给出包一个正则表达式
  3. dpigs -这已安装的软件包显示拍摄的磁盘空间最多
  4. debget -获得一个包一个.deb在APT的数据库
  5. debmany -选择安装或删除软件包手册页
  6. checkrestart -这是使用升级后的文件过时的版本查找并重启进程
  7. popbugs -显示根据你使用的软件包定制版本的关键bug报告
  8. 这-PKG-破产 -渔获物包可能打破另

这些都是非常有用的工具,可以使系统管理更大量容易与其他shell工具使用时。 事实上,Debian-goodies工具显示了比标准工具(如dpkg和apt工具)更多的关于包的信息。

另请阅读了解dpkg的15命令25的apt-get命令来管理Debian软件包和它的衍生物。

如何在Debian,Ubuntu和Linux Mint中安装Debian好东西

要安装Debian的好东西包,下面运行此命令。

# sudo apt-get install debian-goodies

安装Debian好康

一旦Debian的好东西包已经安装完毕,现在是时候看看这个包在本文的其余部分提供的每个工具的使用。

如何使用Debian-Goodies实用程序

dglob实用程序

如在图案中指定的dglob生成包或文件的名称的列表。 要生成所有软件包的名称,只需运行dglob或包含-a选项。

root@youcl:~# dglob 
fonts-sil-abyssinica
libatk-adaptor
openoffice-onlineupdate
libvorbisfile3
libquadmath0
libxkbfile1
linux-sound-base
python-apt-common
python-gi-cairo
libgs9-common
libgom-1.0-common
libqt5qml5
libgtk2.0-bin
libregexp-common-perl
evolution-data-server
libaccount-plugin-generic-oauth
bind9-host
libhtml-tagset-perl
iputils-ping
libcgmanager0
evince
...

要了解您的系统,产品包名称运行dglob上存在的程序包。 在下面的例子中,我们将针对Firefox,Apache2的Debain,好吃的东西搜索。

root@youcl:~# dglob firefox
firefox-locale-en
unity-scope-firefoxbookmarks
firefox
root@youcl:~# dglob apache2
apache2
apache2-utils
apache2-bin
apache2-data
root@youcl:~# dglob debian-goodies
debian-goodies

您可以通过使用打印出指定包中的所有文件的列表-f选项。

root@youcl:~# dglob -f firefox
/usr/share/doc/firefox-locale-en/copyright
/usr/share/doc/firefox-locale-en/changelog.Debian.gz
/usr/lib/firefox-addons/extensions/langpack-en-GB@firefox.mozilla.org.xpi
/usr/lib/firefox-addons/extensions/langpack-en-ZA@firefox.mozilla.org.xpi
/usr/lib/firefox/distribution/searchplugins/locale/en-ZA/amazondotcom.xml
/usr/lib/firefox/distribution/searchplugins/locale/en-ZA/google.xml
/usr/lib/firefox/distribution/searchplugins/locale/en-ZA/ddg.xml
/usr/lib/firefox/distribution/searchplugins/locale/en-GB/google.xml
/usr/lib/firefox/distribution/searchplugins/locale/en-GB/amazon-en-GB.xml
/usr/lib/firefox/distribution/searchplugins/locale/en-GB/ddg.xml
/usr/lib/firefox/webapprt/extensions/langpack-en-GB@firefox.mozilla.org.xpi
/usr/lib/firefox/webapprt/extensions/langpack-en-ZA@firefox.mozilla.org.xpi
/usr/share/unity/scopes/web/firefoxbookmarks.scope
/usr/share/unity-scopes/firefoxbookmarks/unity_firefoxbookmarks_daemon.py
/usr/share/unity-scopes/firefoxbookmarks/__init__.py
/usr/share/doc/unity-scope-firefoxbookmarks/copyright
....

2.如何使用dgrep实用工具

dgreb实用程序用于搜索文件中指定的包名的正则表达式。 它基本上里grep通过安装在系统上的软件包的文件,大部分与使用的选项是那些使用grep用于除少数。

要指定一种模式,使用-e如下选项。

root@youcl:~# dgrep -e README apache2
/usr/sbin/apache2ctl:        echo Setting ulimit failed. See README.Debian for more information. >&2
/usr/sbin/a2enmod:                info(     "See /usr/share/doc/apache2/README.Debian.gz on "
/etc/apache2/mods-available/autoindex.conf:	AddIcon /icons/hand.right.gif README
/etc/apache2/mods-available/autoindex.conf:	# ReadmeName is the name of the README file the server will look for by
/etc/apache2/mods-available/autoindex.conf:	ReadmeName README.html
/etc/apache2/mods-available/cache_disk.conf:	# /usr/share/doc/apache2/README.Debian, and the htcacheclean(8)
/etc/apache2/sites-available/default-ssl.conf:		#   /usr/share/doc/apache2/README.Debian.gz for more info.
...

要打印从中将已打印输出的每个输入文件的名称,请使用-l选项。

root@youcl:~# dgrep -l conf apache2
/usr/sbin/a2query
/usr/sbin/apache2ctl
/usr/sbin/a2enmod
/usr/share/doc/apache2/migrate-sites.pl
/usr/share/doc/apache2/copyright
/usr/share/doc/apache2/README.multiple-instances
/usr/share/doc/apache2/examples/setup-instance
/usr/share/doc/apache2/examples/secondary-init-script
/usr/share/doc/apache2/README.backtrace
/usr/share/apache2/apache2-maintscript-helper
/usr/share/lintian/overrides/apache2
/etc/bash_completion.d/apache2
/etc/init.d/apache2
...

要显示匹配行的唯一匹配的部分,可以使用-o选项。

root@youcl:~# dgrep -o conf apache2
/usr/sbin/a2query:conf
/usr/sbin/a2query:conf
/usr/sbin/a2query:conf
/usr/sbin/a2query:conf
/usr/sbin/a2query:conf
/usr/sbin/a2query:conf
/usr/sbin/a2query:conf
/usr/sbin/a2query:conf
...

3.如何使用dpigs实用程序

此实用程序用于显示在系统上使用最多空间的软件包。 这是非常重要的,尤其是当你的空间不足,并希望删除一些包。

要找出在系统上占用最多空间的程序包,只需运行此命令即可。

root@youcl:~# dpigs
158762 linux-image-extra-4.2.0-16-generic
157066 linux-image-extra-3.19.0-31-generic
155037 wine1.8-amd64
143459 wine1.8-i386
103364 linux-firmware
100412 firefox
96741 openjdk-8-jre-headless
96302 libgl1-mesa-dri
90808 thunderbird
90652 liboxideqtcore0

您可以使用-H选项在人类可读的格式读取的封装尺寸。

root@youcl:~# dpigs -H
155.0M linux-image-extra-4.2.0-16-generic
153.4M linux-image-extra-3.19.0-31-generic
151.4M wine1.8-amd64
140.1M wine1.8-i386
100.9M linux-firmware
98.1M firefox
94.5M openjdk-8-jre-headless
94.0M libgl1-mesa-dri
88.7M thunderbird
88.5M liboxideqtcore0

从默认是10分开指定包的给定数量,使用-n选项。

root@youcl:~# dpigs -H -n 15
155.0M linux-image-extra-4.2.0-16-generic
153.4M linux-image-extra-3.19.0-31-generic
151.4M wine1.8-amd64
140.1M wine1.8-i386
100.9M linux-firmware
98.1M firefox
94.5M openjdk-8-jre-headless
94.0M libgl1-mesa-dri
88.7M thunderbird
88.5M liboxideqtcore0
87.9M libgl1-mesa-dri
81.3M openoffice-core04
77.8M fonts-horai-umefont
64.2M linux-headers-4.2.0-16
61.5M ubuntu-docs

为了寻求帮助,使用dpigs,使用-h选项。

root@youcl:~# dpigs -h
Usage: dpigs [options]
Options:
-n, --lines=N
Display the N largest packages on the system (default 10).
-s, --status=status-file
Use status-file instead of the default dpkg status file.
-S, --source
Display the largest source packages of binary packages installed
on the system.
-H, --human-readable
Display package sizes in human-readable format (like ls -lh or du -h)
-h, --help
Display this message.

4.如何使用debget实用程序

debget用于获取从APT的软件包数据库包一个给定的.deb文件 在下面的例子中,我们应的Apache2,ZIP和tar公用事业获取的.deb文件。

root@youcl:~# debget apache2
(apache2 -> 2.4.12-2ubuntu2)
root@youcl:~# debget zip
(zip -> 3.0-11)
Downloading zip from http://in.archive.ubuntu.com/ubuntu/pool/main/z/zip/zip_3.0-11_amd64.deb
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--   0  154k    0  1211    0     0   2039      0  0:01:17 --:--:--  0:01:17  47  154k   47 75059    0     0  44694      0  0:00:03  0:00:01  0:00:02 100  154k  100  154k    0     0  74182      0  0:00:02  0:00:02 --:--:-- 74220
root@youcl:~# debget tar 
(tar -> 1.27.1-2)
Downloading tar from http://in.archive.ubuntu.com/ubuntu/pool/main/t/tar/tar_1.27.1-2_amd64.deb
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--  15  191k   15 30155    0     0  48338      0  0:00:04 --:--:--  0:00:04 100  191k  100  191k    0     0   201k      0 --:--:-- --:--:-- --:--:--  201k

所有获取的.deb软件包。

root@youcl:~# dir -hl
total 348K
-rw-r--r-- 1 root root 86K Dec 30 12:46 apache2_2.4.7-1ubuntu4.6_amd64.deb
-rw-r--r-- 1 root root 192K Dec 30 12:46 tar_1.27.1-2_amd64.deb
-rw-r--r-- 1 root root 155K Dec 30 12:46 zip_3.0-11_amd64.deb

5.如何使用debmany实用程序

它用于在系统上选择已安装或卸载软件包的手动输入页面。 此实用程序允许您查看软件包的所有联机帮助页。

以下一些选项可以与debmany一起使用,以使用您选择的查看器显示联机帮助页:

如果你使用KDE桌面环境,请使用-k选项来使用kfmclient。

root@youcl:~# debmany -k tar

:我没有做我的系统上安装KDE DE,所以它很难显示上述命令的输出。

如果你使用GNOME桌面环境,请使用-g选项可以使用GNOME开放

root@youcl:~# debmany -g tar

查看已安装软件包的手册页

如果你使用KDE / GNOME / Xfce桌面环境中,使用-x选项可以使用KDG开放

root@youcl:~# debmany -x tar

确保在您可以使用上述浏览器之前已安装,否则您可能会收到错误。

6.如何使用checkrestart实用程序

chechstart用于查找并重新启动正在使用已升级的旧版本文件的过程。

与所有进程都使用checkrestart,使用-a选项。

root@youcl:~# checkrestart -a
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
Output information may be incomplete.
Found 30 processes using old versions of upgraded files
(28 distinct programs)
(23 distinct packages)
Of these, 1 seem to contain systemd service definitions or init scripts which can be used to restart them.
The following packages seem to have definitions that could be used
to restart their services:
openssh-server:
1947	/usr/sbin/sshd
1889	/usr/sbin/sshd
These are the initd scripts:
service ssh restart
...

要指定连接到一个给定的包在系统上只处理删除的文件,请使用-p选项。

root@youcl:~# checkrestart -p
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
Output information may be incomplete.
Found 0 processes using old versions of upgraded files

您可以生成使用详细的输出信息-v选项。

root@youcl:~# checkrestart -v
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
Output information may be incomplete.
Found 1 processes using old versions of upgraded files
(1 distinct program)
[DEBUG] Process /usr/bin/update-manager (PID: 2027) 
List of deleted files in use:
/var/cache/apt/pkgcache.bin
/var/lib/dpkg/status (deleted)
/var/cache/apt/pkgcache.bin
/var/lib/dpkg/status (deleted)
/var/cache/apt/pkgcache.bin
/var/lib/dpkg/status (deleted)
/var/cache/apt/pkgcache.bin
/var/lib/dpkg/status (deleted)
[DEBUG] Running:['dpkg-query', '--search', '/usr/bin/update-manager']
[DEBUG] Reading line from dpkg-query: update-manager: /usr/bin/update-manager
[DEBUG] Found package update-manager for program /usr/bin/update-manager
(1 distinct packages)
[DEBUG] Running:['dpkg-query', '--listfiles', 'update-manager']
These processes (1) do not seem to have an associated init script to restart them:
update-manager:
2027	/usr/bin/update-manager

7.如何使用popbugs实用程序

它用于显示基于您通常在系统上使用的软件包的自定义版本关键错误的列表。 当你没有在第一次的任何选项运行popbugs,它会告诉你一个消息,如下面的之一。

root@youcl:~# popbugs
There is no popularity-contest data present on your system.  This
probably means that popularity-contest has not yet run since it
was installed.  Try waiting for /etc/cron.daily/popularity-contest to
to collect some data or manually run (as root user):
/usr/sbin/popularity-contest >/var/log/popularity-contest

要生成的普及,竞赛日志,下面运行此命令。

root@youcl:~# /usr/sbin/popularity-contest > /var/log/popularity-contest

要存储输出的文件,使用-output = /路径/要/文件选项。 输出文件应该是一个HTML文件。

root@youcl:~# popbugs --output=/tmp/output.html

要查看输出文件,请通过指定文件位置从Web浏览器打开文件。

popbugs输出

要显示调试信息,使用-d选项。

root@youcl:~# popbugs --d
POPCON: Adding package zeitgeist-core
POPCON: Adding package upstart
POPCON: Adding package unity-gtk2-module
POPCON: Adding package whoopsie
POPCON: Adding package xserver-xorg-input-evdev
POPCON: Adding package unity-services
POPCON: Adding package zlib1g
POPCON: Adding package xserver-xorg-core
..

8.如何使用which-pkg-broke实用程序

它用于查找已损坏另一个包的包。 有时您的系统可能会被某些软件包破坏,尤其是在升级时。 因此这-PKG-破产可以帮助你找到打破您的系统或系统上的一个特定的包的包。

要找出断开apache2的软件包,请运行以下命令。

root@youcl:~# which-pkg-broke apache2 
Package apache2 has no install time info
Package mysql-common has no install time info
Package libaprutil1-ldap has no install time info
Package  has no install time info
Package libmysqlclient18 has no install time info
Package  has no install time info
Package libaprutil1-dbd-sqlite3 has no install time info
Package  has no install time info
Package libaprutil1-dbd-mysql has no install time info
Package apache2-utils has no install time info
Package libpq5 has no install time info
Package apache2-data has no install time info
Package libaprutil1-dbd-pgsql has no install time info
Package libaprutil1-dbd-odbc has no install time info
libacl1:amd64                                          Wed Apr 22 17:31:54 2015
libattr1:amd64                                         Wed Apr 22 17:31:54 2015
insserv                                                Wed Apr 22 17:31:54 2015
libc6:amd64                                            Wed Apr 22 17:31:55 2015
...

概要

还有许多其他实用程序与我们所看到的实用程序相关,我们可以在后续文章中了解。 希望您认为本指南很有用,如果您在使用它们时遇到任何错误或有任何其他想法添加,请发表评论。 保持与youcl的连接。

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏