Ниже идёт пример как можно поступить в случае, если доступен только deb-пакет и нет его дебианизированных исходников.
Для начала советую прочитать это. И это. Тут полная документация на русском.
Предположим, что работаем в каталоге ~/tmp. Создадим подкаталог ~/tmp/someprog, чтобы распаковать файлы какого-нибудь пакета, нужно выполнить
dpkg -x ~./tmp/some-prog-123.deb ./someprog
Для того, чтобы извлечь контрольную информацию, выполним
mkdir ~/tmp/someprog/DEBIAN
dpkg -e ~/tmp/some-prog-123.deb ./someprog/DEBIAN
ну а теперь, чтобы всё это собрать обратно в пакет, нужно выполнить
dpkg -b ./someprog ~/tmp/some-prog-123-new.deb
В каталоге ~/tmp/someprog/DEBIAN содержатся файлы, описывающие, что это за пакет, от чего он зависит, и контрольные суммы файлов, находящихся в нём. Для того, чтобы собрать свой пакет, нужно поместить файлы в каталоге ~/tmp/someprog так, как будто это корневой каталог.То есть, если нужно, чтобы файл установился в /usr/bin,нужно его поместить в каталог ~/tmp/someprog/usr/bin, ну и, соответственно, если что-то должно лежать в /etc, то в ~/tmp/someprog/etc и т.д.
Затем в ~/tmp/someprog создать каталог DEBIAN, обязательно большими буквами, и в нём файл ~/tmp/someprog/DEBIAN/control, в этом файле описывается название пакета, его зависимости и описание, формат очень простой. Например:
Package: libcurl3
Version: 7.15.2-2
Section: libs
Priority: optional
Architecture: i386
Depends: libc6 (>= 2.3.5-1), libcomerr2 (>= 1.33-3), libidn11 (>= 0.5.18), libkrb53 (>= 1.4.2),
libssl0.9.8 (>= 0.9.8a-1),zlib1g (>= 1:1.2.1), ca-certificates
Suggests: libldap2
Replaces: libcurl2 (<< 1:7.11.2-2)
Installed-Size: 324
Maintainer: Domenico Andreoli <cavok@debian.org>
Source: curl
Description: Multi-protocol file transfer library
libcurl is designed to be a solid, usable, reliable and portable
multi-protocol file transfer library.
.
SSL support is provided by OpenSSL.
To enable LDAP support package libldap2-dev is required.
.
This is the shared version of libcurl.
.
Homepage: http://curl.haxx.se
Ну а теперь собрать:
dpkg -b ./someprog some-prog-123-new.deb
Этой информации достаточно, чтобы собрать/пересобрать простенький пакет. На самом деле можно ещё запускать скрипты при установке пакета, при его удалении и много чего ещё, что нужно нормальному maintainer'у.
Вопросы к изученному материалу (выделенные являются правильным ответом):
Ядро - это:
А) это отдельный многопоточный процесс, работающий в пользовательском режиме.
Б) это отдельный однопоточный процесс, работающий в пользовательском режиме;
В) это специальный код ос, предназначенный для предоставления пользовательского интерфейса;
Г) это главный файл любой программы, предназначенный для предоставления пользовательского интерфейса;
Дата добавления: 2017-06-02; просмотров: 288;