Как получить имя более старого пакета?

Это лишь частичный ответ (я постараюсь обновить его, если не забуду и найду решение всех перечисленных проблем) относительно заикание Flash-видео - проблема исходила от PulseAudio . Я нашел решение, работая с вики-сайтами Debian и Arch.

Я добавил / изменил следующие настройки в /etc/pulse/daemon.conf :

# For stutter in Flash videos (perhaps also the additional settings at the end have affect this)
high-priority = no
nice-level = -1
realtime-scheduling = yes
realtime-priority = 5
flat-volumes = no
resample-method = speex-float-1

# For distortion and high CPU usage in Wine and Skype
default-fragments = 25
default-fragment-size-msec = 25
default-sample-rate = 48000
2
15.12.2016, 13:56
3 ответа

Я не совсем понимаю, как вам удалось установить две версии одного и того же пакета, но это должно сработать:

rpm -q --queryformat "%{VERSION} %{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}\n" my-package-name | \
  sort -V | \
  awk 'NR==1 { print $2 }'

Первая строка запросов база данных RPM для my-package-name, прося RPM предоставить результаты в определенном формате - ВЕРСИЯ, за которой следуют поля по умолчанию «rpm -qa». Это передается по конвейеру sort -V , чтобы (попытаться) отсортировать номера версий, за которым следует канал к awk , чтобы вывести только первую строку, удаляя дополнительное поле VERSION, в результате в выводе по умолчанию rpm -qa .

Это делает надежное предположение, что вы запускаете это в системе RHEL с флагом -V для сортировки.

3
27.01.2020, 21:54

Я всегда параноидально относился к зависимости от программ, интерпретирующих строки версии, поэтому в качестве альтернативы решению Джеффа вы также можете сделать это:

[root@jb87-workstation ~]# rpm -q kernel --queryformat "%{INSTALLTIME} %{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}\n" | sort -n | head -1 | awk '{print $NF}'
kernel-4.8.13-300.fc25.x86_64

(заменив kernel на имя вашего пакета)

Это по сути печатает полное имя пакета, выполнив ту же команду rpm -qa и просто используя - queryformat для добавления к каждой строке префикса с меткой времени Unix, когда он был установлен (который находится в тег% {INSTALLTIME} ). Затем он использует sort -n для сортировки вывода от самого старого к самому новому и просто берет первую строку вывода и печатает последний столбец, который будет полным именем пакета.

Хотя Джефф работает отлично. Вероятно, это больше вопрос личных предпочтений.

3
27.01.2020, 21:54

Вы можете использовать yum downgrade имя-пакета. Иногда в новых пакетах возникала ошибка. Я перешел на старый пакет.

0
27.01.2020, 21:54

Теги

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