Kā izmantot 8 noderīgus Debian Goodies Utilities, lai pārvaldītu Debian paketes


Debian-goodies ir pakete, kas ietver rīkjoslas stila utilītprogrammas, kuras izmanto, lai pārvaldītu Debian un tā atvasinātās sistēmas, piemēram, Ubuntu, Kali Linux. Šajā pakotnē esošie utilīti ir izstrādāti tā, lai tos varētu apvienot ar daudziem atzītiem čaulas rīkiem, un tiek iekļauti arī citi, jo tos nevar izstrādāt kā savus paketus uz Debian bāzes Linux izplatījumiem.

Šajā rokasgrāmatā mēs aplūkosim, kā izmantot utilītus paketē debian-goodies, kas ietver dglob, debget, dpigs, dgrep, debmany, checkrestart, popbugs un which-pkg-broken.

Apskatīsim katra rīka aprakstu zemāk:

  1. dglob - izveidojiet sarakstu ar pakotņu nosaukumiem, kas atbilst paraugam
  2. dgrep - meklējiet regex visu norādīto pakotņu failos.
  3. dpigs - parādiet, kuras instalētās paketes aizņem visvairāk vietas diskā
  4. debget - iegūstiet .deb pakotnei APT datu bāzē
  5. debmany - izvēlieties instalēto vai noņemto pakotņu Manpages
  6. checkrestart - atrod un restartē procesus, kuros tiek izmantotas novecojušas jaunināto failu versijas
  7. popbugs - parādiet pielāgotu laidienam kritisku kļūdu pārskatu, pamatojoties uz jūsu izmantotajām pakotnēm
  8. which-pkg-broken - noķeriet, kurš iepakojums varētu būt salauzis citu

Šīs ir ļoti noderīgas utilītas, kas var ievērojami atvieglot sistēmas administrēšanu, ja to lieto kopā ar citiem čaulas rīkiem. Patiesībā Debian-goodies rīks parāda vairāk informācijas par pakotnēm nekā standarta rīki, piemēram, dpkg un apt rīki.

Kā instalēt Debian labumus Debian, Ubuntu un Linux Mint

Lai instalētu paketi debian-goodies, palaidiet šo komandu zemāk.

# sudo apt-get install debian-goodies

Kad debian-goodies pakotne ir instalēta, ir pienācis laiks pārbaudīt katras šīs pakotnes nodrošinātās utilītas izmantošanu pārējā rakstā.

Kā izmantot Debian-Goodies Utilities

Dglob ģenerē pakotņu vai failu nosaukumu sarakstu, kā norādīts modelī. Lai ģenerētu visu pakotņu nosaukumu, vienkārši palaidiet dglob vai iekļaujiet opciju -a.

[email :~# 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
...

Lai uzzinātu, vai jūsu sistēmā ir pakete, palaidiet dglob ar pakotnes nosaukumu. Šajā piemērā mēs meklēsim Firefox, Apache2 un debain-goodies.

[email :~# dglob firefox
firefox-locale-en
unity-scope-firefoxbookmarks
firefox
[email :~# dglob apache2
apache2
apache2-utils
apache2-bin
apache2-data
[email :~# dglob debian-goodies
debian-goodies

Izmantojot opcijas -f , varat izdrukāt visu norādītajā paketē esošo failu sarakstu.

[email :~# dglob -f firefox
/usr/share/doc/firefox-locale-en/copyright
/usr/share/doc/firefox-locale-en/changelog.Debian.gz
/usr/lib/firefox-addons/extensions/[email 
/usr/lib/firefox-addons/extensions/[email 
/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/[email 
/usr/lib/firefox/webapprt/extensions/[email 
/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
....

Lietotne dgreb tiek izmantota, lai meklētu failus regulārai izteiksmei noteiktos pakotņu nosaukumos. Tas galvenokārt greps caur jūsu sistēmā instalēto pakotņu failiem, un lielākā daļa no opcijām, kas tiek izmantotas, ir tās, kuras tiek izmantotas ar grep, izņemot dažas.

Lai norādītu modeli, izmantojiet opciju -e šādi.

[email :~# 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.
...

Lai izdrukātu katra ievades faila nosaukumu, no kura tiktu izdrukāta izvade, izmantojiet opciju -l .

[email :~# 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
...

Lai parādītu tikai atbilstošās rindas atbilstošās daļas, izmantojiet opciju -o .

[email :~# 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
...

Šo utilītu izmanto, lai parādītu paketes, kurās jūsu sistēmā ir aizņemts visvairāk vietas. Tas ir ļoti svarīgi, īpaši, ja jums pietrūkst vietas un vēlaties noņemt dažus iepakojumus.

Lai uzzinātu paketes, kas aizņem visvairāk vietas jūsu sistēmā, vienkārši palaidiet šo komandu.

[email :~# 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

Varat izmantot opciju -H , lai lasītu iepakojuma izmērus cilvēkiem lasāmā formātā.

[email :~# 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

Lai norādītu noteiktu paku skaitu, izņemot noklusējuma vērtību 10, izmantojiet opciju -n .

[email :~# 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

Lai meklētu palīdzību dpigs izmantošanā, izmantojiet opciju -h .

[email :~# 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.

Debets tiek izmantots, lai iegūtu APD pakotņu datubāzē norādīto .deb par paketi. Nākamajos piemēros mēs ielādēsim .deb failus apache2, zip un tar utilītprogrammām.

[email :~# debget apache2
(apache2 -> 2.4.12-2ubuntu2)
[email :~# 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
[email :~# 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

Visas ielādētās .deb paketes.

[email :~# 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

To izmanto, lai atlasītu manuāli instalēto vai atinstalēto pakotņu ievades lapas jūsu sistēmā. Šī utilīta ļauj jums apskatīt visas paketes manpages.

Dažas no šīm opcijām, kuras varat izmantot kopā ar debmany, lai parādītu manu lapu, izmantojot izvēlēto skatītāju:

Ja izmantojat KDE darbvirsmas vidi, izmantojiet opciju -k , lai izmantotu kfmclient.

[email :~# debmany -k tar

Piezīme: Manā sistēmā nav instalēts KDE DE, tāpēc ir grūti parādīt iepriekš minētās komandas izvadi.

Ja izmantojat GNOME darbvirsmas vidi, izmantojiet opciju -g , lai izmantotu gnome-open.

[email :~# debmany -g tar

Ja izmantojat darbvirsmas vidi KDE/GNOME/Xfce, izmantojiet opciju -x , lai izmantotu kdg-open.

[email :~# debmany -x tar

Pirms jūs varat tos izmantot, pārliecinieties, vai iepriekš minētie skatītāji ir instalēti, pretējā gadījumā var rasties kļūda.

Chechstart tiek izmantots, lai atrastu un restartētu procesus, kuros tiek izmantotas vecās failu versijas, kas jau ir jauninātas.

Lai visiem procesiem izmantotu checkrestart, izmantojiet opciju -a .

[email :~# 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
...

Lai norādītu tikai tos izdzēstos failus, kas sistēmā ir pievienoti konkrētai pakotnei, izmantojiet opciju -p .

[email :~# 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

Izmantojot -v opciju, varat ģenerēt detalizētu informāciju par izvadi.

[email :~# 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

To izmanto, lai parādītu pielāgotu izlaišanai kritisko kļūdu sarakstu, pamatojoties uz pakotnēm, kuras parasti izmantojat savā sistēmā. Pirmo reizi palaižot popbugs bez jebkādas opcijas, tas parādīs tādu ziņojumu kā zemāk redzamais.

[email :~# 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

Lai izveidotu popularitātes konkursa žurnālu, izpildiet šo komandu zemāk.

[email :~# /usr/sbin/popularity-contest > /var/log/popularity-contest

Lai saglabātu izvadi failā, izmantojiet opciju –output =/path/to/file. Izvades failam jābūt HTML failam.

[email :~# popbugs --output=/tmp/output.html

Lai skatītu izvades failu, atveriet failu no tīmekļa pārlūkprogrammas, norādot faila atrašanās vietu.

Lai parādītu atkļūdošanas informāciju, izmantojiet opciju -d .

[email :~# 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
..

To izmanto, lai atrastu pakas, kurās ir salauzta cita pakete. Dažreiz jūsu sistēma var būt bojāta atsevišķās paketēs, īpaši tās jaunināšanas laikā. Tādēļ which-pkg-broken var palīdzēt jums atrast pakas, kas ir salauzušas jūsu sistēmu, vai kādu konkrētu paketi sistēmā.

Lai uzzinātu paketes, kurās ir bojāts apache2, palaidiet šo komandu zemāk.

[email :~# 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
...

Kopsavilkums

Ir daudz citu utilītu, kas saistītas ar tām, kuras mēs apskatījām, un par kurām mēs varam uzzināt nākamajos rakstos. Ceru, ka šī rokasgrāmata jums būs noderīga, un, ja to lietojot rodas kādas kļūdas, vai jums ir kādas citas idejas, ko pievienot, lūdzu, ievietojiet komentāru. Uzturiet savienojumu ar Tecmint.