Установка новой версии lsblk в RHEL

Как указали Earnestly и demonicmaniac3 на #archlinux irc-канале, это потому, что pacman не будет повторно скачать что-нибудь, если оно уже установлено локально. Но он загрузит то, что вы специально дадите ему в , что имеет большой смысл, если подумать.

Это означает, что если вы пытаетесь загрузить пакеты, предназначенные для настраиваемого / локального репозитория, вам необходимо либо убедиться, что пакеты, которые вы собираетесь загрузить, не установлены локально, либо выполнить один из следующих вариантов:

Использовать временная / локальная пустая база данных пакетов

pacman -y --dbpath /tmp ...

Это создаст иллюзию, что ничего не установлено локально и загружаются все необходимые пакеты. Это также требует от вас выполнения -y , поскольку в вашей созданной базе данных нет главного списка пакетов.

Выполните обновление системы

pacman -Syuw ...

Это должно переустановить / обновить любой пакет, независимо от того, установлен он или еще не установлен.
Примечание: Не проверено (Я мало знаю о логике pacman, и сейчас готов ее проверить)

Сгенерируйте список зависимостей, используя expac

expac -S '%E' -l '\n' xorg-xinit xorg-server-utils ...

Вызов expac в (все пакеты, которые вы собираетесь загрузить) предоставит вам список пакетов, необходимых для запуска того, что вы загружаете. Вы можете использовать этот список для извлечения / добавления к уже существующей строке пакетов, запланированных для установки.


Я предпочитаю версию expac , поскольку она поддерживается программно и может использоваться во многих сценариях, но быстрая и «грязная» версия просто перенаправляет базу данных, которую проверяет pacman.

1
21.03.2019, 11:42
1 ответ

Вы можете использовать сторонний -менеджер пакетов Nix для установки более новой версии util -linux.

На самом деле, чтобы избежать любых потенциальных проблем совместимости с остальной частью RHEL 7.6, я рекомендую запускать ваше приложение в среде Nix, которая содержит более новую утилиту -linux. Другими словами, я рекомендую использовать nix-shellвместо nix-env. Например, после установки Nix вы можете запустить nix-shell -p utillinux, чтобы войти в оболочку, содержащую более новую версию утилиты -linux. За пределами указанной оболочки будет доступна утилита RHEL -linux.

0
28.01.2020, 00:18

Теги

Похожие вопросы