[временное РЕШЕНие]pacman ОШИБКА НЕ УДАЛОСЬ ОТКРЫТЬ ФАЙЛ /desc

Опрос

Было ли вам полезно содержание темы ?
Да
Нет
Bendalf
я в один приём переносил кэш пакмана, базу из места по умолчанию и через 2 минуты конфиг пакмана изменил на актуальный .
разве ? вы же что-то делали с базой, переносили не знаю что и куда а потом получили на выходе какие-то проблемы с пакетами, я же помню, вот этот пост https://archlinux.org.ru/forum/post/221834/ когда по наитию присмотревшись к одной из ваших картинок что вы тогда выложили и обнаружил несоответствие, ведь уже тогда было несоответствие нахождение реальной базы с конфигом

p.s.
есть еще один способ исправления локальной базы
$ sudo rm -r $(pacman-conf DBPath)local/{пакет1-версия, ...}
$ sudo pacman --dbonly -S пакет1 ...
здесь вместо --overwrite=* используется --dbonly что позволит не трогать файлы пакетов установленных в системе а обновить непосредственно метаданные в базе
red
/var/lib/pacman …. var/cache …/…..
я же чайник. переносил все папки разом по путям в конфиге . .
Потом пакман сам себя обновил и перезаписал свой конфиг.

Возможно я не заметил вовремя, тк не ожидал такой подляны )).
Потому что в пяти других дистрибутивах такого не было -- 1 раз настроил и забыл.

неделю или две назад я занес его конфиги в noupgrade
NoUpgrade=path/to/pacman.conf  path/to/mirrorlist
без  /  в начале пути. в wiki так сказано. теперь пакман не перезаписывет их

у меня ума хватает wiki(man) прочесть. но не хватает глубоких познаний, таких как у вас.
просто в другой моей записи(в конце темы) про jdk отчетливо видны как пакман не воспринял изменения в конфиге.
red
так у вас со всеми новыми пакетами проблемы при установке или только с некоторыми ?
С некоторыми
red
с какими правами у вас пакеты в базе ?
должно быть drwxr-xr-x root root для папок и rw-r–r– root root для файлов
chown -R root:root ./
у пакетов без проблем
файлы find ./ -type=f -exec chmod -R 644 {} \; владелец рут. = rw- r-- r--
папки find ./ -type=d -exec chmod -R 755 {} \; владелец рут. = drwx r-x r-x

последний проблемный chromaprint. который еще не правил права руками...../lib/pacman/local/chromaprint-версия/
файлы не могу посмотреть. папка где дб desc пуста
папка chromaprint-версия 755. владелец рут.

red
pacman -S lsd
не установит и не обновит, а выдаст ошибку
ая wiki и man читал. -S очень не рекомендуют.
рулит -Syyu

за советы я вам очень признателен. уважаю ). всё попробую.
С уважением, .
Bendalf
его конфиги в noupgrade
wiki(man) прочесть
Внимательней читайте
https://wiki.archlinux.org/index.php/Pacman/Pacnew_and_Pacsave

И пожалуйста выбирайте правильно разделы, для пакмана есть
https://archlinux.org.ru/forum/forum/7/
ОФФТОП

vs220
И пожалуйста выбирайте правильно разделы, для пакмана есть
https://archlinux.org.ru/forum/forum/7/
я вначале думал относится к установке. пока стало ясно, я первое сообщение редактировал раз 15.
сам я не могу тему свою перенести. прав нет.
в прошлый раз я написал по теме куда вы счас говорите писать. так нашлись недовольные и стуканули в админку.
vs220
https://wiki.archlinux.org/index.php/Pacman/Pacnew_and_Pacsave
проще важное в параметр NoUpgrade занести и атрибут только чтение в тч для рут. или не ? )
С уважением, .
Bendalf
проще
Новый конфиг может содержать параметры которых нет в старом или устаревшие параметры( для пакмана например недавно убрали дельтаобновления). Ваш конфиг все равно автоматом не перезапишется. Проверка на новые параметры рекомендуется при обновлении, есть специальные утилиты для удобства.
Зачем изобретать велосипед?
jоффтоп
vs220
автоматом не перезапишется
он уже заколебал. перезаписывался автоматом пару раз за время пользования arch и миррор лист тоже.
потому то я и сделал так. я наверное и сам пакман заблочу чтоб не обновлялся. потому что задолбало.
С уважением, .
Bendalf
перезаписывался автоматом
За десять лет на 4 машинах не разу не встречал. В мане тоже указано.
Не вникал правдо как идет проверка на изменение файла, должна идти проверка по контрольной сумме( так что склоняюсь к тому что опять что то у вас не то)
P.s. и ноапгрейд для пакетов например pacman-mirrorlist.
А для файлов в том числе конфигов - ноэкстрат нужен.

Хотя перечитал еще раз ман и ваш способ тоже рабочий, новые конфиги должны так же pacnew расширение иметь.
Век живи век учись , прошу прощения
Хоспади, да сделайте свой myultimateinterstellarmirrorlist.conf из 2 строк или сколько там Вам нужно и забудьте!
такие дела.
Bendalf
я же чайник. переносил все папки разом по путям в конфиге . .
так по какому пути вы перенесли тогда базу ? если бы вы действительно так поступили то и проблем было бы меньше
старый DBPath /var/lib/pacman/
новый DBPath /home/var/lib/pacman/
достаточно было просто переместить папку по указанному пути(или скопировать, проверить, а потом удалить старую):
$ sudo mv /var/lib/pacman/ /home/var/lib/pacman/
но как оказалось, судя по картинке база установленных пакетов отсутствует по новому пути /home/var/lib/pacman/local/ а присутствует только один файл ALPM_DB_VERSION

Bendalf
Потом пакман сам себя обновил и перезаписал свой конфиг.
pacman сам себя да ну никак, даже спецом провели, удалил из базы после чего восстановил с перезаписью файлов
$ sudo pacman --overwrite=* -S pacman
как и ожидалось новый pacman.conf лёг рядом как pacman.conf.pacnew а старый остался на месте
предупреждение: '/etc/pacman.conf' установлен как '/etc/pacman.conf.pacnew'
то есть pacman.conf который был изменён пользователем может изменить только сам пользователь, пакман при обновлении проверяет(по md5) если конфиг дефолтный и никем не изменялся то перезаписывает на новый дефолтный, если же он отличается от дефолтного то новый ложится рядом с расширением *.pacnew
возможно вы юзали какой то специфический софт для работы с пакманом или что-то напутали, вариант со сбоем не исключаю он он маловероятен, в любом случае попробуйте воспроизвести пошаговые действия(консольные команды) которые у вас приводят к затиранию конфига пакмана

Bendalf
неделю или две назад я занес его конфиги в noupgrade
конфиг пакмана по умолчанию защищен от перезаписи при обновлении(noupgrade), вы просто продублировали это

Bendalf
просто в другой моей записи(в конце темы) про jdk отчетливо видны как pacman не воспринял изменения в конфиге.
то конфиг сам перезаписывается то пакман его игнорирует, у вас там случайно барабашка на компе не завёлся ?)
по поводу "отчетливо видны" я наверное что-то упустил, рыться уже нету сил, ткните пальцем куда смотреть

Bendalf
red
с какими правами у вас пакеты в базе ?
должно быть drwxr-xr-x root root для папок и rw-r–r– root root для файлов
chown -R root:root ./
у пакетов без проблем
файлы find ./ -type=f -exec chmod -R 644 {} \; владелец рут. = rw- r– r–
папки find ./ -type=d -exec chmod -R 755 {} \; владелец рут. = drwx r-x r-x
chown и chmod это преобразование владений и прав к нужному виду, но тока зачем вы это сделали если и так переносили под суперпользователем, там должно было перенестись всё как надо, вам же нужно было не перезаписывать а найти отличия если таковы имелись, а вы тщательно вымыли предполагаемое орудие убийства чтобы 'помочь' следствию
вот что нужно было сделать:
$ find $(pacman-conf DBPath) -not -user root -o -not -group root
$ find $(pacman-conf DBPath) -type d -not -perm 0755
$ find $(pacman-conf DBPath) -type f -not -perm 0644

Bendalf
последний проблемный chromaprint. который еще не правил права руками…../lib/pacman/local/chromaprint-версия/
файлы не могу посмотреть. папка где дб desc пуста
папка chromaprint-версия 755. владелец рут.
хм, а попробуйте вылечить, потом удалить пакет через pacman а затем снова попробовать установить, ошибка появится ?
и что вы за зеркало используете ?

Bendalf
red
pacman -S lsd
не установит и не обновит, а выдаст ошибку
ая wiki и man читал. -S очень не рекомендуют.
рулит -Syyu
мм, да вообщето когда пишут -S то уже подразумевают что базы недавно были синхронизированы, это как если поход по нужде подразумевает снятие штанов.
а для обновления хватает и одного "y", две "yy" необходимы в процессе смены зеркала для принудительной синхронизации.
 
Зарегистрироваться или войдите чтобы оставить сообщение.