MAN eclean 5

Материал из Gentoo Linux Wiki

Перейти к: навигация, поиск
Вернуться в раздел мануалов

Содержание

[править] Имя

eclean - Утилита для очистки локального репозитария дистрибутивов и бинарных пакетов.

[править] Использование

eclean [глобальные параметры] ... <действия> [параметры для текущего режима] ...

eclean-dist [глобальные параметры, параметры для режима удаления 'distfiles'] ...

eclean-pkg [глобальные параметры, параметры для режима удаления 'packages'] ...

eclean(-dist,-pkg) [--help, --version]

[править] Описание

eclean это небольшая утилита для удаления устаревших исходников и бинарных файлов пакетов. Используя стандартные операции она очищает каталоги, описываемые переменными DISTDIR и PKGDIR, пока там не останутся только пакеты, которые действительно актуальны на момент очистки.

По умолчанию eclean не трогает все пакеты, прописаные в дереве портежей. Это наиболее безопасный режим, позволяющий сохранить старые пакеты на случай отката на старые или стабильные версии, а также для переустановки пакетов. Учтите, что этот режим сохраняет размер ваших DISTDIR и PKGDIR довольно большими. Для дистрибутивных файлов этот режим довольно медленный, поскольку требует проверки всего дерева портежей.

Если же вы используете опцию --destructive, eclean защищает только некоторые файлы, отвечающие за установленные в системе пакеты(буквально учитывая версию пакета). Этот режим освободит гораздо больше места, всё ещё "беспокоясь" о сохранности большинства пакетов, основываясь на младшей части версии каждого пакета, а также позволяя восстановить повреждённые пакеты. Но в этом случае утилита не будет заботиться о менее важных пакетах, необходимых например для отката или установки нового пакета. Это тоже быстрый режим работы, используемый в большинством подобных скриптов вроде yacleaner(это верно по меньшей мере относитеьно версии 0.3).

Где-то посередине между этими режимами находится режим, определяемый опцией --package-names (при использовании опции --destructive), в котором eclean оставит только те дистрибутивы, которые необходимы для установленных пакетов. Он позволит легко откатиться на старую версию пакета без пересборки или закачки пакета заново, но не защитит вас в случае удаления пакета.

В дополнение к этим основным режимам некторые опции позволяют описать некоторые специфические условия работы утилиты:

--time-limit
окажется полезной в том случае, если необходимо сохранить файлы, созданные позже указанного времени
--size-limit
может применяться только к дистрибутивам и позволяет оставить в системе файлы большего размера, нежели указано в данной опции
--fetch-restricted
применима к файлам вручную скачанных дистрибутивов, не подвергая их уничтожению. Параметр сильно замедляет работу утилиты, поскольку обработке подвергается всё дерево portage

Ну и наконец вы можете указать список категорий, исключаемых из обработки (см. ниже параметр EXCLUSION FILES).

[править] Параметры

[править] Глобальные параметры

-C, --nocolor
не использовать цвета в выводе на консоль
-d, --destructive
оставить только самый необходимый для переустановки минимум файлов
-e, --exclude-file=<путь>
путь к файлу, содержащему список категорий, исключаемых из обработки.
Примечание: Здесь <путь> - это абсолютный путь к файлу исключений. Если путь не указан, используется значение по умолчанию /etc/eclean/{packages,distfiles}.exclude (если он, конечно, существует). Используйте, пожалуйста, путь /dev/null в том случае, если файл у вас имеется, но временно вы не хотите к нему обращаться.
-i, --interactive
запросить подтверждение перед удалением файлов
-n, --package-names
защитить все версии (только при использовании опции --destructive )
-p, --pretend
вывести список того, что подлежит уничтожению, но не удалять немедленно
-q, --quiet
подавлять любые сообщения на выводе, оставлять только ошибки
-t, --time-limit=<время>
не удалять файлы, созданные позже указанного параметра <время>
Примечание: <время> здесь указывается как период времени: "1y" означает один год, "2w" это две недели, и т.д.
Принятые единицы времени: y (годы), m (месяцы), w (недели), d (дни) и h (часы).
-h, --help
показать страницу помощи
-V, --version
отобразить версию утилиты

[править] Действия (actions)

distfiles
Очищать каталог /usr/portage/distfiles (или тот каталог, на который ссылается переменная DISTDIR в файле /etc/make.conf). Это действие будет полезно для практически каждого пользователя Gentoo, размер каталога с дистрибутивами которого вырос до значительных величин.
eclean-dist
Превдоним для утилиты eclean, предписывающий обработку дистрибутивных файлов, создан для удобства, не более того.
packages
Производить очистку каталога /usr/portage/packages (или, соответственно, содержимого каталога, указанного переменной PKGDIR в файле /etc/make.conf. Это действие полезно в частности применительно к тем, кто использует "buildpkg" или "buildsyspkg" флаги переменной FEATURES.
eclean-pkg
это также синоним команды eclean в режиме очистки каталога с packages.

[править] Параметры, применяемые в случае указания обработки 'distfiles'

-f, --fetch-restricted
оставить файлы, помеченные в дереве как 'fetch-restricted' (--destructive only)
-s, --size-limit=<размер>
не удалять файлы, размер которых больше чем <размер>
Примечание: <размер> указывается следующим образом: "10M" это "десять мегабайт", "200K" это "двести килобайт", и т.д.
Единицы измерения: G, M, K и B.

[править] Параметры для действия 'packages'

Нет специальных параметров.

[править] Файлы исключений

Файлы исключений это файлы, содержащие списки названий пакетов или целых категорий, не подлежащих обработке утилитой eclean. Такие списки могут пригодиться в том случае, ели необходимо защитить от удаления определённые пакеты, например, пакеты, содержащиеся в каталоге, указываемом в файле /etc/make.conf в переменной PKGDIR. Применяется следующий синтаксис описания списка:
  • пустые строки, а также строки, начинающиеся с символа "#" (обычно обозначает комментарии) игнорируются
  • только одно опредение в одной строке позволяется
  • если строка содержит название категории, например "sys-apps", то все пакеты из этой категории исключаются из обработки. Как вариант, можно написать так: "sys-apps/*", что предусмотрено исключительно в эстетических целях, но никак не означает, что шаблоны могут использоваться во всех иных случаях.
  • если строка содержит имя пакета("app-shells/bash"), то именно этот пакет и будет под защитой. Атомы, подобные ">=app-shells/bash-3" с указанием версий не поддерживаются. Кроме того, обязательно указание полного имени пакета (вместе с категорией).
  • если в строке указан пакет с предшествующим его имени восклицательным знаком("!sys-apps/portage"),то этот пакет исключается из области защиты. Это полезно только в случае защиты всей категории, к которой относится данный пакет.
  • для защиты дистрибутивов можно указать конкретное имя файла. Такие записи могут пригодиться, если в базе данных portage не содержатся такие дистрибутивы, например файлы локализации (i18n) OpenOffice.org ("helpcontent_33_unix.tgz" в частности).

[править] Примеры использования

Удалить только дистрибутивы, спрашивать подтверждение на удаление:

      # eclean -i distfiles

Проверить, что нужно удалить, не использовать цвета при выводе:

      # eclean -Cp packages 

Очистить бинарные пакеты, которые уже были удалены из системы, но оставить все версии установленных в системе пакетов:

      # eclean-pkg -d -n 

Удалить все дистрибутивные файлы за исключением относящихся к уже установленным пакетам (текущая версия), не старше одного месяца, размером большие, чем 50 Мб, а также помеченные как fetch-restricted:

      # eclean-dist -d -t1m -s50M -f 

Из файла crontab, в "тихом" режиме удалить пакеты в наиболее безопасном режиме, а также применив режим --destructive, но сохранив в этом режиме файлы не старше недели, задачу выполнять каждое воскресенье в час ночи:

      0 1 * * sun   eclean -C -q packages ; eclean -C -q -d -t1w distfiles

[править] Смотри также

eclean (1)

[править] Полезные ссылки

Обсуждение на форуме Gentoo, приведшее к написанию утилиты eclean

Запрос на включение утилиты в gentoolkit в багзилле

Yacleaner, утилита, подобная eclean

[править] Авторы

Thomas de Grenier de Latour (tgl) <degrenier@easyconnect.fr> gentoolkit 0.4.1 eclean(1)

Источник — «http://ru.gentoo-wiki.com/MAN_eclean_5»
Личные инструменты