Проблема с обновлением пакета base-devel (ошибка: не удалось завершить транзакцию (неправильный или пустой аргумент))

Вопросы по менеджеру пакетов и обновлениям
Ответить
jarocki
Сообщения: 1
Зарегистрирован: 08.12.2023

#

Собственно, проблема вот:
$ sudo pacman -Syu base-devel
:: Обновление баз данных пакетов...
 core is up to date
 extra is up to date
 community is up to date
 multilib is up to date
:: Запускается полное обновление системы...
разрешение зависимостей...
проверка конфликтов...

Пакеты (1) base-devel-1-1


:: Приступить к установке? [Y/n]
:: Получение пакетов...
(1/1) проверка ключей                                                                [#################################################] 100%
(1/1) проверка целостности пакета                                                    [#################################################] 100%
ошибка: не удалось завершить транзакцию (неправильный или пустой аргумент)
Обнаружены ошибки, пакеты не обновлены.
Не могу понять, чего ему надо? С чем может быть связана ошибка: не удалось завершить транзакцию (неправильный или пустой аргумент)?

(Господа модераторы, если топик в некорректной ветке, дайте знать, куда его перенести — я не со зла здесь это создал :-)).
indeviral
Аватара пользователя
Сообщения: 176
Зарегистрирован: 15.08.2022

#

# pacman -Rdd base-devel
# pacman -S base-devel

Ошибки в тексте-неповторимый стиль автора©

vall
Аватара пользователя
Администрация
Сообщения: 518
Зарегистрирован: 09.08.2022

#

jarocki:sudo pacman -Syu
Неверный ключ -Syu
sudo pacman -S base-devel
Предложенный выше способ с ключом -Rdd позволяет удалить пакет без проверки существующих зависимостей пакета (если твёрдо уверены в том, что делаете). И затем переустановка.

P.S. Тему перенёс.
ALiEN
Аватара пользователя
Сообщения: 60
Зарегистрирован: 23.08.2022

#

vall:Неверный ключ -Syu
Почему неверный? Обновиться + установить пакет. УМВР.
Cкрытый текст
sudo pacman -Suy  gptfdisk
[sudo] пароль для alien:
:: Обновление баз данных пакетов...
 core                  129,1 KiB  49,9 KiB/s 00:03 [######################] 100%
 extra                   8,3 MiB  2,48 MiB/s 00:03 [######################] 100%
 archlinuxcn             3,4 MiB   733 KiB/s 00:05 [######################] 100%
:: Запускается полное обновление системы...
разрешение зависимостей...
проверка конфликтов...

Пакеты (8) fltk-1.3.9-1  linux-zen-6.6.6.zen1-1  luajit-2.1.1702233742-1
           qpdf-11.6.4-1  syncthing-1.27.1-1  thin-provisioning-tools-1.0.9-1
           zabbix-agent-6.4.9-2  gptfdisk-1.0.9-2

Будет загружено:    145,78 MiB
Будет установлено:  172,36 MiB
Изменение размера:    0,27 MiB

:: Приступить к установке? [Y/n]
:: Получение пакетов...

🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

vall
Аватара пользователя
Администрация
Сообщения: 518
Зарегистрирован: 09.08.2022

#

ALiEN:Обновиться + установить пакет.
Хм.. Когда-то очень давно в голове зафиксировалась последовательность установки пакета в Arch Linux: сначала обновление системы, а затем уже установка требуемого пакета.

Соответственно в командах:
sudo pacman -Syu
sudo pacman -S 'требуемый пакет'
Совмещать всё сразу не доводилось. Надо будет на досуге почитать в wiki pacman. Ваш вывод исполнения команды вижу. Но и топик открыт из-за того, что такая команда не сработала. Хотя причины проблемы у ТС, безусловно, могут быть другими.
vall
Аватара пользователя
Администрация
Сообщения: 518
Зарегистрирован: 09.08.2022

#

vall:Надо будет на досуге почитать в wiki pacman.
Заглянул в man. Раздел EXAMPLES (почти в конце, 95%). Действительно, такая команда возможна. ALiEN, Вы абсолютно правы.
pacman -Syu gpm
Обновите список пакетов, обновите все пакеты, а затем установите gpm, если он еще не установлен.

Фраза, выделенная курсивом, вызвала вопрос: а если уже установлен? Поэтому попробовал обновить и переустановить eza. Всё получилось.
Cкрытый текст
sudo pacman -Syu eza
[sudo] пароль для xxxXXX
:: Обновление баз данных пакетов...
 core                                   129,1 KiB   346 KiB/s 00:00 [####################] 100%
 extra                                    8,3 MiB  6,73 MiB/s 00:01 [####################] 100%
 multilib                               140,0 KiB   336 KiB/s 00:00 [################### ] 100%
предупреждение: eza-0.17.0-1 не устарел -- переустанавливается
:: Запускается полное обновление системы...
разрешение зависимостей...
проверка конфликтов...

Пакеты (1) eza-0.17.0-1

Будет загружено:    0,44 MiB
Будет установлено:  1,12 MiB
Изменение размера:  0,00 MiB

:: Приступить к установке? [Y/n] 
RusWolf
Аватара пользователя
Сообщения: 151
Зарегистрирован: 16.08.2022

#

vall: Заглянул в man. Раздел EXAMPLES (почти в конце, 95%). Действительно, такая команда возможна.
А если заглянуть в вики арча, то там есть предупреждение, которое снимает все вопросы и проверки:
https://wiki.archlinux.org/title/Pacman ... g_packages
Предупреждение: При установке пакетов в Arch избегайте обновления списка пакетов без обновления системы (например, когда пакет больше не найден в официальных репозиториях). На практике не запускайте pacman -Sy package_name вместо pacman -Syu package_name, поскольку это может привести к проблемам с зависимостями. Смотрите раздел Обслуживание системы#Частичные обновления не поддерживаются.

Arch Linux x86-64 на BTRFS

vall
Аватара пользователя
Администрация
Сообщения: 518
Зарегистрирован: 09.08.2022

#

В вики есть оговорка для отдельного случая.

Важно: При установке пакетов старайтесь не синхронизировать базу данных пакетов без последующего обновления системы (например, на случай, если пакета уже нет в официальных репозиториях). В частности, не используйте команду
pacman -Sy название_пакета 
вместо
pacman -Syu название_пакета
потому что это может привести к проблемам с зависимостями. Подробнее смотрите статью System maintenance#Частичные обновления не поддерживаются и ветку форума BBS#89328.
vall
Аватара пользователя
Администрация
Сообщения: 518
Зарегистрирован: 09.08.2022

#

RusWolf:А если заглянуть в вики арча
Мой пост, чуть позже, фактически продублировал Ваше сообщение. Оставлю как получилось.

P.S. Забавно, что ТС после своей публикации до сих пор не логинился на форуме. Зато помог разобрать вопрос)
RusWolf
Аватара пользователя
Сообщения: 151
Зарегистрирован: 16.08.2022

#

vall:Оставлю как получилось.
Да суть одна, не использовать команду pacman -Sy, а использовать pacman -Syu :)

Arch Linux x86-64 на BTRFS

vasek
Сообщения: 358
Зарегистрирован: 31.08.2022

#

В части не использования команды pacman -Sy package_name .... есть одно исключение из этого правила (отмечено также в Wiki):
Если система долго не обновлялась, то не обходимо сначала обновить пакет archlinux-keyring --- # pacman -Sy archlinux-keyring

Ошибки не исчезают с опытом - они просто умнеют

RusWolf
Аватара пользователя
Сообщения: 151
Зарегистрирован: 16.08.2022

#

vasek: Если система долго не обновлялась, то не обходимо сначала обновить пакет archlinux-keyring --- # pacman -Sy archlinux-keyring
Хочу заметить, что уже давно есть альтернатива, /usr/bin/archlinux-keyring-wkd-sync

Arch Linux x86-64 на BTRFS

ALiEN
Аватара пользователя
Сообщения: 60
Зарегистрирован: 23.08.2022

#

vall:а если уже установлен?
--needed

Если пакет соответствует версии в репозитории - будет пропущен.
Если есть версия новее - будет обновлён.
Cкрытый текст
 $: sudo pacman -Syu zabbix-agent --needed
[sudo] пароль для alien:
:: Обновление баз данных пакетов...
 core                  129,1 KiB   260 KiB/s 00:00 [######################] 100%
 extra                   8,3 MiB   355 KiB/s 00:24 [######################] 100%
 archlinuxcn             3,4 MiB   929 KiB/s 00:04 [######################] 100%
предупреждение: zabbix-agent-6.4.9-2 не устарел -- пропускается
:: Запускается полное обновление системы...
разрешение зависимостей...
проверка конфликтов...

🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

vasek
Сообщения: 358
Зарегистрирован: 31.08.2022

#

RusWolf:Хочу заметить, что уже давно есть альтернатива, /usr/bin/archlinux-keyring-wkd-sync
Точнее, имеются archlinux-keyring-wkd-sync.service и archlinux-keyring-wkd-sync.timer … и в нормальной системе все это работает автоматом.
Цитата из Wiki (ru)
... С 2022года созданы и включены по умолчанию служба archlinux-keyring-wkd-sync.service и связанный с ней archlinux-keyring-wkd-sync.timer, который запускает получение новых ключей раз в неделю и таким образом решает проблему без вмешательства пользователя ...
Но если имеются проблемы и что то пошло не так, то разумнее выполнить это в ручную.

Ошибки не исчезают с опытом - они просто умнеют

RusWolf
Аватара пользователя
Сообщения: 151
Зарегистрирован: 16.08.2022

#

vasek: Точнее, имеются archlinux-keyring-wkd-sync.service и archlinux-keyring-wkd-sync.timer
По факту, сервис запускает /usr/bin/archlinux-keyring-wkd-sync, по этому при длительном не обновление системы, ничего не мешает запустить руками sudo /usr/bin/archlinux-keyring-wkd-sync

Arch Linux x86-64 на BTRFS

vasek
Сообщения: 358
Зарегистрирован: 31.08.2022

#

RusWolf:ничего не мешает запустить руками sudo /usr/bin/archlinux-keyring-wkd-sync
Можно и так ... кому как удобнее.

Ошибки не исчезают с опытом - они просто умнеют

Ответить