четверг, 14 февраля 2008 г.

Имена пакетов slackware

Как прочитать имя slackware пакета? Как правильно назвать slackware пакет?

Синтаксис имени slackware пакета:

    {program}-{version}-{arch}-{build}{tag}.tgz

Где:

  • {program} — имя программы, как назвал ее автор, строчными буквами.
  • {version} — версия программы.
  • {arch} — архитектура процессора, возможные значения:
    i386
    i486
    i586
    i686
    x86_64
    noarch — для пакетов без бинарных исполняемых файлов
    ppc
    s390
    Все пакеты дистрибутива slackware используют архитектуру i486 или noarch.

  • {build} — номер сборки пакета. Сборщик пакетов тоже человек, а значит может ошибаться. Исправленный пакет выпускается под тем же именем, но с измененным номером сборки.
  • {tag} — уникальный идентификатор создателя пакета, обычно 3-х буквенный. Поле необязательное для автора дистрибутива и обязательное для всех остальных сборщиков. Иногда в конце поля {tag} добавляют номер версии дистрибутива для которого предназначен данный пакет, отделяя его символом подчеркивания.


Пример: ipcad-3.7.3-i486-2nmu_slack11.0.tgz

Это пакет с программой IPCAD (сбор статистики по трафику) версии 3.7.3, собранный и оптимизированный под архитектуру процессора intel 486. Сборщик пакета — некто nmu. Пакет собран для Slackware 11. Версия сборки пакета — 2.



В завершение несколько советов по работе с slackware пакетами.

  • Как узнать, какая версия slackware установлена?

        cat /etc/slackware-version
  • Как получить список установленных пакетов в slackware?

        ls -1 /var/log/packages
  • Как получить список 10-и последних установленных пакетов в slackware?

        ls -t1 /var/log/packages | head
  • Как получить список файлов в файле пакета slackware?

        tar -tzf имя_пакета.tgz
  • Как получить список файлов в установленном пакете slackware?

        cat /var/log/packages/имя_пакета
  • Как определить к какому из пакетов slackware принадлежит данный файл?

        cd /var/log/packages; grep path/to/file *

    Надо указать абсолютный путь к файлу, но без начального слеша, пример:

        cd /var/log/packages; grep bin/chmod *
        coreutils-6.9-i486-1:bin/chmod
  • Как узнать какой пакет нужно установить чтобы появился нужный файл?

    Перестать выпендриваться с командной строкой и воспользоваться поиском на сайте http://packages.slackware.it

Комментариев нет: