Попередження pkg_info - package info is corrupt
Пошкодження списку встановленого програмного забезпечення FreeBSD в результаті збою комп'ютера під час роботи portupgrade або pkgdb (відсутні файли «+ CONTENTS» в піддиректоріях / var / db / pkg).
В якій ситуації проявилася проблема:
Перезавантаження комп'ютера через збій електроживлення під час роботи portupgrade.
Після включення fsck виявила велику кількість збоїв на / var.
При створенні файлу /var/db/pkg/pkgdb.db після його видалення pkgdb -F не бачить встановленого ПО (наприклад, у висновку присутній «0 packages found»).
Це проявляється тільки при створенні pkgdb.db з нуля; якщо pkgdb.db не видаляти, виводиться інформація про порушені залежностях.
pkg_info 2> 1 виводить такі рядки: pkg_info: the package info for package 'glib-2.14.4' is corrupt
Якщо для встановленої версії FreeBSD є готові пакаджі з версіями ПЗ, що збігаються з версіями встановленого в системі, витягти з цих пакаджей файли «+ CONTENTS» і помістити на відповідне місце в / var / db / pkg /.
Для програм, версії яких в пакаджах не збігаються з встановленими в системі, виконати portupgrade -fN.
Якщо після виконання попереднього пункту у висновку pkg_info 2> 1 | grep corrupt зустрічаються записи виду: libiconv-1.11_1 A character set conversion lpkg_info: the package info for package 'lynx-2.8.6.5_2,1' is corrupt то для всіх друге програм в цьому рядку (тут - lynx):
деінсталювати програму через порт
видалити директорію / var / db /<программа> ;
інсталювати програму через порт.
Оновити ПО через portupgrade.