Gentoolkit
Not to be confused with Genkernel.
Gentoolkit представляет собой набор средств, облегчающих администрирование системы Gentoo и Portage.
Gentoo является уникальнейшим дистрибутивом с некоторыми особенностями, которых нет в других системах. Несколько инструментов были разработаны, чтобы помочь в использовании Gentoo, и сейчас они сгруппированы в пакете app-portage/gentoolkit.
Gentoolkit содержит инструмены, которые помогут пользователям управлять пакетами и отслеживать всё что происходит в их системе. Большинство пользователей — особенно те, кто обновляют систему часто — выиграют от того, что Gentoolkit установлен.
The Gentoolkit commands have man pages, type "man <command>" for each command for full documentation.
Установка
Emerge
root #
emerge --ask app-portage/gentoolkit
euse
euse is used to set (disable/enable) USE flags in make.conf, without having to edit the file directly. It is also used to get detailed information about use flags like description, status of flags (enabled/disabled), type of flag (global/local), etc.
Для получения дополнительной информации об использовании флагов, пожалуйста, обратитесь к главе USE-флаги. Смотрите euse -h для получения помощи и всех опций.
Invocation
user $
euse --help
euse (0.5.1-r1) Syntax: euse <option> [suboptions] [useflaglist] Options: -h, --help - show this message -V, --version - show version information -i, --info - show descriptions for the given useflags -I, --info-installed - show descriptions for the given useflags and their current impact on the installed system -g, --global - show only global use flags (suboption) -l, --local - show only local use flags (suboption) -a, --active - show currently active useflags and their origin -E, --enable - enable the given useflags -D, --disable - disable the given useflags -R, --remove - remove all references to the given flags from make.conf and package.use to revert to default settings -P, --prune - alias for --remove -p, --package - used with -E, -D, and -R to apply to a specific package only Notes: euse currently works for global flags defined in make.globals, make.defaults, make.conf, use.force, and use.mask and local flags defined in package.use and individual package ebuilds. It might have issues with cascaded profiles. If multiple options are specified only the last one will be used.
Просмотр USE-флагов
Команда euse -a показывает текущие активные USE-флаги и где они активированы.
Есть 7 "столбцов", которые euse использует для того, чтобы показать, активен или неактивен флаг и где установлены флаги. Заглавные буквы для установленных, прописные — для неустановленных:
- +/-: активен или нет
- "E": установлен окружением (Environment)
- "C": установлен в make.Conf
- "D": установлен в make.Defaults
- "G": установлен в make.Globals
- "F": установлен в use.force
- "m": заменён с помощью use.mask
Full positive values would be [+ECDGFm]
, full negative values would be [-ecdgfM]
, full missing values would be [- ]
.
Example euse -a output (truncated):
user $
euse -a
[...] flac [+ D ] fortran [+ D ] fuse [- ] (fuse) gbm [- ] (archive) gdbm [+ D ] gif [+ D ] gnutls [- ] (gnutls) gpm [+ D ] gtk [+ D ] gui [+ D ] hdri [+ C ] heif [+ C ] hpcups [+ C ] hwaccel [- ] (hwaccel) iconv [+ D ] [...]
Так же можно использовать команду euse -a -g, чтобы просмотреть только активные глобальные флаги. Команда euse -a -l делает то же самое для активных локальных флагов. -g
и -l
являются суб-опциями для euse и для корректного функционирования перед ними необходима опция (такая как -a
).
Активация и деактивация USE–флагов
euse может активировать, деактивировать или удалять USE-флаги из файла make.conf. Для этого используются команды euse -E flagname(активировать флаг), euse -D flagname (деактивировать флаг) и euse -P flagname (удалить флаг).
Не используйте команды euse -E или euse -D без флага. Это действие активирует/деактивирует ВСЕ USE-ФЛАГИ в /etc/portage/make.conf. Копия будет храниться в /etc/portage/make.conf.euse_backup, тем не менее будьте осторожны при использовании euse -E или euse -D.
Активация USE-флага
Use the -E
option to enable a USE flag.
root #
euse -E 3dfx
/etc/portage/make.conf was modified, a backup copy has been placed at /etc/portage/make.conf.euse_backup
Файл /etc/portage/make.conf выглядит таким, после запуска команды:
make.conf
После активации USE-флага 3dfxUSE="alsa acpi apache2 -arts cups cdr crypt cscope -doc fbcon \ firefox gd gif gimpprint gnome gpm gstreamer gtkhtml imlib \ innodb -java javascript jpeg libg++ libwww mad mbox md5sum \ mikmod mmx motif mpeg mpeg4 mysql ncurses nvidia \ ogg odbc offensive opengl pam pdflib perl png python \ quicktime readline sdl spell sse ssl svga tcltk tiff truetype usb \ vanilla X xosd xv xvid x86 zlib 3dfx"
Деактивация USE-флага
Use the -D
option to remove a USE flag.
root #
euse -D 3dfx
/etc/portage/make.conf was modified, a backup copy has been placed at /etc/portage/make.conf.euse_backup
Пример файла /etc/portage/make.conf после запуска команды:
make.conf
После деактивации USE-флага 3dfxUSE="alsa acpi apache2 -arts cups cdr crypt cscope -doc fbcon \ firefox gd gif gimpprint gnome gpm gstreamer gtkhtml imlib \ innodb -java javascript jpeg libg++ libwww mad mbox md5sum \ mikmod mmx motif mpeg mpeg4 mysql ncurses nvidia \ ogg odbc offensive opengl pam pdflib perl png python \ quicktime readline sdl spell sse ssl svga tcltk tiff truetype usb \ vanilla X xosd xv xvid x86 zlib -3dfx"
euse -D не ``удаляет`` флаг из /etc/portage/make.conf, а добавляет
-
(минус) перед флагом, чтобы деактивировать его. Используйте опцию для удаления USE–флага, чтобы удалить флаг. Также вы можете отредактировать файл вручную в текстовом редакторе.A disabled USE flag is not the same as the absence of the flag in make.conf. A disabled use flag will actively disable features, whereas not listing a flag at all will use the default - enabled or disabled - as set by the package maintainer.
Удаление USE–флага
Use the -P
(purge) option to remove a USE flag.
root #
euse -P 3dfx
The example /etc/portage/make.conf file, after the command:
make.conf
After disabling the 3dfx USE flagUSE="alsa acpi apache2 -arts cups cdr crypt cscope -doc fbcon \ firefox gd gif gimpprint gnome gpm gstreamer gtkhtml imlib \ innodb -java javascript jpeg libg++ libwww mad mbox md5sum \ mikmod mmx motif mpeg mpeg4 mysql ncurses nvidia \ ogg odbc offensive opengl pam pdflib perl png python \ quicktime readline sdl spell sse ssl svga tcltk tiff truetype usb \ vanilla X xosd xv xvid x86 zlib"
Прочие инструменты
revdep-rebuild
It is not necessary to run this tool for general use. The portage FEATURE preserve-libs makes the original purpose obsolete. The primary purpose of this tool is now ABI changes for specific libraries when instructions are provided by developers.
Этот инструмент является инструментом для пересборки обратных зависимостей в Gentoo. Он будет сканировать установленные файлы ebuild, чтобы найти пакеты, которые повредились в результате обновлении пакета, от которого они зависят. Он может собрать эти пакеты для пользователя автоматически, но также может случиться, что данный пакет не работает с текущей установленной зависимостью, и в этом случае вы должны обновить сломанный пакет до более новой версии. revdep-rebuild передает флаги emerge, что позволяет использовать опцию --pretend
, чтобы увидеть что произойдет, прежде чем произвести реальную операцию.
revdep-rebuild will pass flags to emerge which lets the --pretend
flag pass through, to see what is going to be emerged again before going any further.
user $
revdep-rebuild -p
* Configuring search environment for revdep-rebuild * Checking reverse dependencies * Packages containing binaries and libraries broken by a package update * will be emerged. * Collecting system binaries and libraries * Generated new 1_files.rr * Collecting complete LD_LIBRARY_PATH * Generated new 2_ldpath.rr * Checking dynamic linking consistency [ 48% ] * broken /usr/lib/gstreamer-0.10/libgsttaglib.la (requires /usr/lib/libtag.la) [ 64% ] * broken /usr/lib/libgdkglext-x11-1.0.la (requires /usr/lib/libGLU.la) [ 67% ] * broken /usr/lib/libgtkglext-x11-1.0.la (requires /usr/lib/libGLU.la) [ 85% ] * broken /usr/lib/python2.6/site-packages/gtk-2.0/gtk/gdkgl/_gdkgl.la (requires /usr/lib/libGLU.la) * broken /usr/lib/python2.6/site-packages/gtk-2.0/gtk/gtkgl/_gtkgl.la (requires /usr/lib/libGLU.la) [ 97% ] * broken /usr/qt/3/lib/libqt-mt.la (requires -lpng) [ 100% ] * Generated new 3_broken.rr * Assigning files to packages * /usr/lib/gstreamer-0.10/libgsttaglib.la -> media-plugins/gst-plugins-taglib * /usr/lib/libgdkglext-x11-1.0.la -> x11-libs/gtkglext * /usr/lib/libgtkglext-x11-1.0.la -> x11-libs/gtkglext * /usr/lib/python2.6/site-packages/gtk-2.0/gtk/gdkgl/_gdkgl.la -> dev-python/pygtkglext * /usr/lib/python2.6/site-packages/gtk-2.0/gtk/gtkgl/_gtkgl.la -> dev-python/pygtkglext * /usr/qt/3/lib/libqt-mt.la -> x11-libs/qt * Generated new 4_raw.rr and 4_owners.rr * Cleaning list of packages to rebuild * Generated new 4_pkgs.rr * Assigning packages to ebuilds * Generated new 4_ebuilds.rr * Evaluating package order * Generated new 5_order.rr * All prepared. Starting rebuild emerge --oneshot --pretend dev-python/pygtkglext:0 media-plugins/gst-plugins-taglib:0.10 x11-libs/gtkglext:0 x11-libs/qt:3 These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] media-plugins/gst-plugins-taglib-0.10.17 [ebuild R ] x11-libs/gtkglext-1.2.0 [ebuild R ] x11-libs/qt-3.3.8b-r2 [ebuild R ] dev-python/pygtkglext-1.1.0 * Now you can remove -p (or --pretend) from arguments and re-run revdep-rebuild.
Если нужно пересобрать некоторые пакеты запустите команду revdep-rebuild без опции -р
и перечисленные пакеты будут пересобраны.
eread
eread это простая утилита для отображения elog-файлов, представленных в Portage начиная с версии 2.1. Сохранение elog файлов можно настроить, установив пару переменных в /etc/portage/make.conf:
make.conf
Активация elogPORTAGE_ELOG_CLASSES="log" PORTAGE_ELOG_SYSTEM="save"
Это только один из способов сохранения elog сообщений. Для получения дополнительной информации о том, как система elog работает в Portage, пожалуйста, обратитесь к соответствующей странице Настольной книги Portage.
После того, как создали удовлетворяющую настройку elog, запустите eread, чтобы посмотреть log файлы.
user $
eread
This is a list of portage log items. Choose a number to view that file or type q to quit. 1) app-portage:gentoolkit-0.2.4_pre2:20070320-000256.log 2) app-portage:gentoolkit-0.2.4_pre2:20070320-000258.log 3) app-portage:gentoolkit-0.2.4_pre2:20070320-000319.log 4) app-portage:gentoolkit-0.2.3:20070320-000408.log Choice?
Выберите номер и файл будет отображаться с использованием программы, указанной в переменной окружения PAGER. Если переменная PAGER не установлена, будет использоваться less. Переменную окружения PAGER можно задать с помощью eselect (модуль pager
).
После отображения пункта elog, вам будет предложено удалить файл.
eclean
eclean является инструментом для удаления из системы старых файлов исходного кода и бинарных пакетов.
Во время сборки и установки пакетов, исходные файлы загружаются и сохраняются в DISTDIR, обычно это /usr/portage/distfiles. Со временем они могут накапливаться до нескольких гигабайт, если периодически их не очищать. Пользователь должен запустить eclean-dist, чтобы удалить только исходные файлы из DISTDIR.
Можно создавать архивы установленных пакетов с помощью quickpg или функции FEATURES="buildpkg"
. Собранные архивы пакетов хранятся в PKGDIR, обычно это /usr/portage/packages. Если они больше не требуется или устарели, то удалить их из PKGDIR можно командой eclean-pkg. Это хороший способ убедиться, что все бинарные пакеты в системе только последних версий.
Более подробную информацию о eclean и советы о том, как поддерживать систему, свободной хлама вы можете прочитать man eclean или проверить статью об eclean.
Смотрите также
- Equery — инструмент, делающий некоторые операции Portage проще
- Eclean — утилита для очистки репозитория от неиспользуемых архивов исходного кода и бинарных пакетов.
- Epkginfo — a tool used to display package metadata information.
- Q applets
- Useful Portage tools — provides a list of Gentoo-specific system management tools, notably for Portage, available in the ebuild repository.
This page is based on a document formerly found on our main website gentoo.org.
The following people contributed to the original document: Matt Butcher, John P. Davis, Erwin, Shyam Mani, Xavier Neys, Karl Trygve, José Luis Rivero, Joshua Saddler, Douglas Anderson
They are listed here because wiki history does not allow for any external attribution. If you edit the wiki article, please do not add yourself here; your contributions are recorded on each article's associated history page.