====== Пакеты RPM ======
При возникновении ошибки DB_RUNRECOVERY
ошибка: db4 error(-30974) from dbenv->failchk: DB_RUNRECOVERY: Fatal error, run database recovery
ошибка: cannot open Packages index using db4 - (-30974)
ошибка: не могу открыть базу данных Packages
решение
sudo /usr/bin/rpm --rebuilddb
Поиск пакета по файлу
[keremet@comp-core-i5-8250u-0f4293 ~]$ rpm -qf /usr/bin/base32
coreutils-8.31.0.3.6bd78-alt2.x86_64
[keremet@comp-core-i5-8250u-0f4293 ~]$
Удаление пакета
sudo rpm -e flowblade-2.6.0-alt3.noarch
Список файлов пакета
[keremet@comp-core-i5-8250u-0f4293 ~]$ rpm -ql python3-module-mlt
/usr/lib64/python3/site-packages/__pycache__
/usr/lib64/python3/site-packages/__pycache__/mlt.cpython-37.opt-1.pyc
/usr/lib64/python3/site-packages/__pycache__/mlt.cpython-37.opt-2.pyc
/usr/lib64/python3/site-packages/__pycache__/mlt.cpython-37.pyc
/usr/lib64/python3/site-packages/_mlt.so
/usr/lib64/python3/site-packages/mlt.py
[keremet@comp-core-i5-8250u-0f4293 ~]$
Распаковка пакета в текущий каталог
rpm2cpio name.rpm | cpio -id
Узнать зависимости пакета
rpmquery -Rp ~/hasher_flowblade/repo/x86_64/RPMS.hasher/flowblade-2.6.0-alt3.noarch.rpm
rpm -qp mypackage.rpm --requires
Узнать значение макроса
rpm --eval '%{_localstatedir}'
Вывести все макросы
rpm --eval %dump
Создание пакета
rpmbuild --define "_topdir $PWD/rpmbuild" --define "_rpmdir $PWD/x86_64/RPMS.dir/" --define "_rpmfilename acos-archives-0.1-alt1.x86_64.rpm" -bb acos-archives.spec
Изменение зависимостей пакета
rpmrebuild -enp openfire-4.7.3-1.noarch.rpm
Откроется текстовый редактор спецификации пакета. Пересобранный пакет будет в ~/RPM/RPMS/noarch/openfire-4.7.3-1.noarch.rpm
Из какого файла исходников был собран пакет — так можно будет узнать имя репозитория альта.
rpm -q --qf '%{sourcerpm}\n' python-base-2.7.18-alt0.M90P.3.x86_64
Инструкция по сборке пакетов src.rpm
https://www.altlinux.org/%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F_%D0%BF%D0%BE_%D1%81%D0%B1%D0%BE%D1%80%D0%BA%D0%B5_%D0%BF%D0%B0%D0%BA%D0%B5%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_rpm \\
https://www.opennet.ru/docs/RUS/rpm_guide/40.html