Ошибка не удалось получить файл arch
Я запустил sudo pacman -Syu , и у меня появилось несколько интересных ошибок:
ошибка: не удалось зафиксировать транзакцию (конфликтующие файлы)
Что мне делать? Должен ли я проверять все файлы и удалять те, у которых нет связанного пакета? Должен ли я принудительно обновлять (с помощью sudo pacman -S --force ?)
Обновление
Я попытался запустить sudo pacman -S --force и получил следующее:
Использование --force не позволит перезаписывать каталог с файлом или устанавливать пакеты с конфликтующими файлами и каталогами.
Должен ли я просто удалять конфликтующие каталоги? (у них нет связанных пакетов)
Arch Linux перестал обновляться
Если вы запускаете команду «sudo pacman -Syu» каждый день, то вы могли заметить, то в редкий день не бывает обновлений. Если вдруг для вашей системы на протяжении нескольких дней перестали приходить обновления, это может означать, что кэш пакетов скачивается с некачественного зеркала.
Для исправления - выполните точно такие же действия, как описаны для предыдущей ошибки. То есть нужно переключиться на другое зеркало.
25 комментариев
С недавних пор Формат архивов в репозиториях переводится на zst. Если Вы давно не обновлялись или установили систему с устаревшего образа, для обновления до актуального состояния придется сделать следующее:
Пакеты (3) archlinux-keyring-20200422-1 manjaro-keyring-20200421-1
manjaro-system-20200427-1
Будет установлено: 1,38 MiB
Изменение размера: 0,38 MiB
:: Запускается полное обновление системы…
:: Заменить ca-certificates-cacert на core/ca-certificates? [Y/n] Y
:: Заменить gcc-libs-multilib на core/gcc-libs? [Y/n] Y
:: Заменить gcc-multilib на core/gcc? [Y/n] Y
:: Заменить geoclue2 на extra/geoclue? [Y/n] Y
:: Заменить gnome-themes-standard на extra/gnome-themes-extra? [Y/n] Y
:: Заменить gtk3-print-backends на extra/gtk3? [Y/n] Y
:: Заменить gtk3-print-backends на community/gtk3-typeahead? [Y/n] Y
:: Заменить ilmbase на extra/openexr? [Y/n] Y
:: Заменить libsystemd на core/systemd-libs? [Y/n] Y
:: Заменить libwbclient на extra/smbclient? [Y/n] Y
:: Заменить libx264 на extra/x264? [Y/n] Y
:: Заменить libx264-all на extra/x264? [Y/n] Y
:: Заменить mhwd-nvidia на core/mhwd-nvidia-430xx? [Y/n] Y
:: Заменить mime-types на extra/mailcap? [Y/n] Y
:: Заменить pamac на extra/pamac-gtk? [Y/n] Y
:: Заменить pamac на extra/pamac-gtk-dev? [Y/n] Y
:: Заменить pkg-config на core/pkgconf? [Y/n] Y
:: Заменить pygobject2-devel на extra/python2-gobject2? [Y/n] Y
:: Заменить python-xdg на extra/python-pyxdg? [Y/n] Y
:: Заменить rfkill на core/util-linux? [Y/n] Y
:: Заменить xorg-mkfontdir на extra/xorg-mkfontscale? [Y/n] Y
разрешение зависимостей…
:: Найдено 2 поставщика для libjack.so=0-32:
:: Репозиторий multilib
1) lib32-jack 2) lib32-jack2
Введите число (по-умолчанию=1): 1
проверка конфликтов…
предупреждение: удаление 'gtk3' из списка целей, поскольку он конфликтует с 'gtk3-typeahead'
ошибка: обнаружен неразрешимый конфликт пакетов
ошибка: не удалось подготовить транзакцию (конфликтующие зависимости)
:: 'pamac-gtk' и 'pamac-gtk-dev' конфликтуют
[kris@kris-pc ~]$
ну вообще ни тем ни другим способом не получается
[kris@kris-pc ~]$ sudo pacman -Rsn pamac-gtk-dev
ошибка: не найдена цель: pamac-gtk-dev
Enter a number (default=1): 1
looking for conflicting packages…
warning: removing 'gtk3' from target list because it conflicts with 'gtk3-typeahead'
error: unresolvable package conflicts detected
error: failed to prepare transaction (conflicting dependencies)
:: pamac-gtk and pamac-gtk-dev are in conflict
Во, а теперь удалить все pamac'и (потом восстановим)
sudo ./pacman-static -Rsn pamac-gtk pamac-gtk-dev
и снова
sudo ./pacman-static -Syyu
Enter a number (default=1): 1
looking for conflicting packages…
warning: removing 'gtk3' from target list because it conflicts with 'gtk3-typeahead'
error: unresolvable package conflicts detected
error: failed to prepare transaction (conflicting dependencies)
:: pamac-gtk and pamac-gtk-dev are in conflict
Ну он же предлагает два варианта-
:: Replace pamac with extra/pamac-gtk? [Y/n] y
:: Replace pamac with extra/pamac-gtk-dev? [Y/n] y
На второй нужно ответить «нет»
И удалять памаки уже будет не нужно просто обновиться
sudo ./pacman-static -Syyu
Enter a number (default=1): 1
looking for conflicting packages…
warning: removing 'gtk3' from target list because it conflicts with 'gtk3-typeahead'
:: gtk3-typeahead and gtk3 are in conflict. Remove gtk3? [y/N] y
:: python-pyqt5 and pyqt5-common are in conflict. Remove pyqt5-common? [y/N] y
error: failed to prepare transaction (could not satisfy dependencies)
:: installing python2-gobject2 (2.28.7-5) breaks dependency 'pygobject' required by pygtk
Пакеты (3) archlinux-keyring-20200422-1 manjaro-keyring-20200421-1
manjaro-system-20200427-1
Будет установлено: 1,38 MiB
Изменение размера: 0,38 MiB
предупреждение: pacman-static-5.2.1-3.2 не устарел — переустанавливается
разрешение зависимостей…
проверка конфликтов…
Пакеты (1) pacman-static-5.2.1-3.2
Будет установлено: 4,78 MiB
Изменение размера: 0,00 MiB
Enter a number (default=1): 1
looking for conflicting packages…
warning: removing 'gtk3' from target list because it conflicts with 'gtk3-typeahead'
error: unresolvable package conflicts detected
error: failed to prepare transaction (conflicting dependencies)
:: pamac-gtk and pamac-gtk-dev are in conflict
У меня не устанавливается вайн(((((
При попытке установить пишет:
ошибка: не удалось получить файл 'custom.db' из диск : Нет такого файла или каталога
ошибка: не удалось обновить custom (Нет такого файла или каталога)
archlinuxfr не устарел
ошибка: не удалось открыть файл /var/lib/pacman/sync/custom.db: Failed to open '/var/lib/pacman/sync/custom.db'
ошибка: цель не найдена: wine
есть подозрение что в pacman.conf убрано комментирование с дефолтной строчки [custom] и далее. А сама строчка не изменена.
теперь просто пишет
ошибка: цель не найдена: wine
и при проверке зависимостей пишет
ошибка: не удалось подготовить запрос (не удалось удовлетворить зависимости)
:: qtcreator-artisticstyle-plugin: требует qtcreator=2.1.0
"pacman -Syyu" пробовал, не помогло((
А зеркало французское, точно не скажу, сейчас не в арче
терь сам обновился увидел тоже самое , сноси qtcreator-artisticstyle-plugin ему нужен qtcreator 2.10 , а креатор обновился до 2.20
Эта статья посвящена ошибкам, которые возникают из-за проблем со списком зеркал.
Ошибка pacman «The requested URL returned error: 404»
Для работы менеджера пакетов имеется кэш - в этом кэше собрана информация о существующих пакетах для установки, их версиях и ссылки на скачивание. Чтобы обновить (или скачать впервые) этот кэш, нужно выполнить команду:
После этого можно выполнять обновление системы или обновление пакета.
Если кэш устарел и вы пытаетесь установить пакет, версия которого обновилась и для которого в вашем локальном кэше старая ссылка, вы можете получить примерно следующую ошибку:
Для её исправления нужно выполнить приведённую выше команду, а затем повторить установку.
Но аналогичная проблема может возникнуть при запуске обновления системы - это странно, поскольку следующая команда начинает с обновления кэша, следовательно, кэш самый новый и ошибка «файл не найден» не должна возникать:
Эта команда привела к ошибке:
Многократное повторение команды ничего не меняет.
Причина в следующем: pacman скачивает кэш с некачественного зеркала, в котором содержится неверная информация. Для исправления, нужно выбрать другое зеркало, или переместить другое зеркало вверх списка, если вы используете несколько зеркал.
Начнём с того, что переключимся на новый список зеркал. Дело в том, что при установке пакета pacman-mirrorlist (в этом пакете содержится список зеркал), новый файл /etc/pacman.d/mirrorlist не заменяет существующий, а сохраняется с именем /etc/pacman.d/mirrorlist.pacnew. То есть даже если у вас последняя версия пакета pacman-mirrorlist, это не означает, что у вас актуальная версия файла /etc/pacman.d/mirrorlist. Проверте, существует ли файл /etc/pacman.d/mirrorlist.pacnew:
Если файл существует, то выполните следующие две команды (в противном случае пропустите их):
В моём случае проблемным зеркалом, вызвавшим описанную выше ошибку, стало следующее (не используйте его):
ошибка: не удалось обновить core (не настроены сервера для репозитория)
Ещё одна возможная ошибка после того, как вы выполнили какие-либо работы со списком зеркал установочных пакетов:
Её причина в том, что в файле /etc/pacman.d/mirrorlist закомментированы все строки. Откройте этот файл:
2 ответа
Хорошо, похоже, что работает sudo pacman -S --force , но он не разрешает конфликтующие каталоги. В таких случаях запуск sudo rm -rf в конфликтующих каталогах, за которыми следует sudo pacman -S --force работает.
Теперь мой код pacman -Syu хорошо разрешен.
tl; dr: удалите конфликтующее приложение перед запуском pacman .
pacman (и другие менеджеры пакетов) сохраняют индекс пакетов и файлов , которыми они управляют ( ---- +: = 2 = + ----). Некоторые файлы, такие как конфигурация, будут помечены как модифицируемые и не будут перезаписаны во время обновления (за исключением особых обстоятельств, когда диспетчер пакетов обычно удаляет старый файл перед созданием нового). Другие файлы будут помечены как не поддающиеся изменению. Если другое приложение каким-либо образом изменяет эти файлы без обновления индекса, менеджеру пакетов не будет знать, что делать с этими файлами во время обновления.
Многие приложения, установленные с использованием стандартного шаблона pacman --query --list , могут быть удалены с помощью ./configure && make && sudo make install . Если вы установили приложение каким-либо другим способом, вам может понадобиться что-то еще, чтобы удалить его. В общем случае может быть хорошей идеей сохранить копию установочных файлов где-нибудь (например sudo make uninstall ), чтобы быть в состоянии надежно удалить их в таких случаях. Просто удаление конфликтующих файлов, вероятно, оставит другие файлы, которые могут вызвать другие проблемы.
При установке программного обеспечения с другими менеджерами пакетов есть способы изолировать их от системных файлов. Это эффективная практика, например, во время разработки программного обеспечения, где вы действительно хотите поддерживать совместимость версий и избегать конфликтов с другим программным обеспечением. Примеры включают:
В arch'е я немногим менее месяца, и впервые столкнулся с такой ситуацией.
Пробую установить пакет vuze и не выходит.
[alejandro@arch ~]$ sudo pacman -Sy vuze
:: Синхронизируются базы данных пакетов.
core не устарел
extra не устарел
community не устарел
archlinuxfr не устарел
разрешение зависимостей.
предупреждение: выбран пакет openjdk6, предоставляющий java-runtime
проверка на взаимную несовместимость.
Цели (3): ca-certificates-java-20090629-2 openjdk6-1.6.2-1 vuze-4.3.1.2-1
Размер загружаемых файлов: 57,96 МБ
Размер устанавливаемых файлов: 140,41 МБ
Пробовал в /etc/pacman.d/mirrorlist подключать другие серверы (и путем раскомментирования строк в mirrorlist'e, и путем добавления отсюда) -- результат тот же.
Буду признателен за любую подсказку.
[alejandro@arch ~]$ sudo pacman -Sy vuze
:: Синхронизируются базы данных пакетов.
core не устарел
extra не устарел
community не устарел
archlinuxfr не устарел
разрешение зависимостей.
проверка на взаимную несовместимость.
Цели (1): vuze-4.3.1.2-1
Размер загружаемых файлов: 13,80 МБ
Размер устанавливаемых файлов: 15,47 МБ
А дальше совсем мне не нравится:
[alejandro@arch ~]$ sudo pacman -Syu
:: Синхронизируются базы данных пакетов.
core не устарел
extra не устарел
community не устарел
archlinuxfr не устарел
:: Запускается полное обновление системы.
разрешение зависимостей.
проверка на взаимную несовместимость.
Цели (1): openjdk6-1.6.2-1
Размер загружаемых файлов: 44,16 МБ
Размер устанавливаемых файлов: 124,73 МБ
Т.е. "а воз и ныне там".
Мне это сильно не нравится! Что придумать?
UPD 2. Вопрос, в принципе, решается подбором "правильных" (вовремя обновляемых) зеркал в /etc/pacman.d/mirrorlist.
Далее
$ sudo pacman -Syy
$ sudo pacman -Syu
Сейчас обновляюсь.
Очень надеюсь, что ничего не посыпется, ибо обновлений качать под 500М!
Спасибо. Всё это, конечно же, так.
И, хотя, вопрос имеет непосредственное отношение к torrent-клиенту, но всё же хочется понять, что не так в системе, и что это за штука такая?
У Яндекса зеркало протухло. Та БД, которая "не устарела", у вас, должно быть, оттуда. Попробуйте его отключить.
Пробовал раньше.
Опять сейчас отключил.
Оставил только это:
[alejandro@arch ~]$ sudo pacman -Sy vuze
:: Синхронизируются базы данных пакетов.
core не устарел
extra не устарел
community не устарел
archlinuxfr не устарел
разрешение зависимостей.
предупреждение: выбран пакет openjdk6, предоставляющий java-runtime
проверка на взаимную несовместимость.
Цели (3): ca-certificates-java-20090629-2 openjdk6-1.6.2-1 vuze-4.3.1.2-1
Размер загружаемых файлов: 57,96 МБ
Размер устанавливаемых файлов: 140,41 МБ
Простите за много букв, но. что посоветуете?
Размер загружаемых файлов: 454,22 МБ
Размер устанавливаемых файлов: 1310,17 МБ
Читайте также: