Hold: различия между версиями

Материал из ALT Linux Wiki
(init off http://lists.altlinux.org/pipermail/sisyphus/2002-December/234917.html)
 
(→‎Как «поставить пакеты на холд»: добавлено про взаимосвязанную группу)
 
(не показано 10 промежуточных версий 5 участников)
Строка 2: Строка 2:
Бывает нужно, чтобы при установке обновлений не затрагивались какие-либо пакеты — или известны регрессии в новой версии (о чём стоит сообщить сборщику пакета или разработчикам программы), или стоит сборка с иными патчами (о чём тоже хорошо бы уведомить майнтейнера).
Бывает нужно, чтобы при установке обновлений не затрагивались какие-либо пакеты — или известны регрессии в новой версии (о чём стоит сообщить сборщику пакета или разработчикам программы), или стоит сборка с иными патчами (о чём тоже хорошо бы уведомить майнтейнера).


При использовании менеджера пакетов [[APT]] этого можно достигнуть указанием в файле {{path|/etc/apt/apt.conf}}:
При использовании менеджера пакетов [[APT]] этого можно достигнуть созданием файла {{path|/etc/apt/apt.conf.d/hold-нужное.conf}} вида
RPM::Hold:: "имя_пакета";
<pre>
либо добавлением строчки в секцию
/* held due to problems with this package in sisyphus as of 20150323 -- mike@ */
RPM::Hold {
        "^имя_пакета";
};
</pre>
 
либо добавлением в файле {{path|/etc/apt/apt.conf}} строчки в секцию
  RPM
  RPM
  {
  {
Строка 12: Строка 18:
  };
  };


Обратите внимание: строчки являются ''регулярными выражениями'', т.е. при необходимости можно захолдить сразу несколько пакетов:
Обратите внимание: строчки являются ''регулярными выражениями'', т.е., при необходимости, можно захолдить сразу несколько пакетов:
  "^FlightGear.*";
  "^FlightGear.*";


Не забывайте про точки запятой в конце строки!
Из-за этого же, перед именем, всегда стоит указывать символ начала строки "^". Не забывайте про точки с запятой в  
конце строки! В некоторых случаях взаимосвязанную группу пакетов необходимо задавать одним регулярным выражением.
 
= С помощью epm =
 
Поставить пакет на удержание (не обновлять при обновлении):
  # epm mark hold <пакет>
Снять пакет с удержания:
  # epm mark unhold <пакет>
 
= Ограничение =
 
Hold не препятствует обновлению по зависимостям: {{altbug|18636}}.
 


== См. тж. ==
= См. тж. =
* [[APT в ALT Linux/aptitude]]
* [[APT в ALT Linux/aptitude]]
* [[APT в ALT Linux/Советы по использованию]]


{{Category navigation|title=APT|category=APT|sortkey={{SUBPAGENAME}}}}
{{Category navigation|title=APT|category=APT|sortkey={{SUBPAGENAME}}}}
[[Категория:APT]]
[[Категория:APT]]

Текущая версия от 09:19, 21 августа 2023

Как «поставить пакеты на холд»

Бывает нужно, чтобы при установке обновлений не затрагивались какие-либо пакеты — или известны регрессии в новой версии (о чём стоит сообщить сборщику пакета или разработчикам программы), или стоит сборка с иными патчами (о чём тоже хорошо бы уведомить майнтейнера).

При использовании менеджера пакетов APT этого можно достигнуть созданием файла /etc/apt/apt.conf.d/hold-нужное.conf вида

/* held due to problems with this package in sisyphus as of 20150323 -- mike@ */
RPM::Hold {
        "^имя_пакета";
};

либо добавлением в файле /etc/apt/apt.conf строчки в секцию

RPM
{
   Hold {
   // ...
   };
};

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

"^FlightGear.*";

Из-за этого же, перед именем, всегда стоит указывать символ начала строки "^". Не забывайте про точки с запятой в конце строки! В некоторых случаях взаимосвязанную группу пакетов необходимо задавать одним регулярным выражением.

С помощью epm

Поставить пакет на удержание (не обновлять при обновлении):

 # epm mark hold <пакет>

Снять пакет с удержания:

 # epm mark unhold <пакет>

Ограничение

Hold не препятствует обновлению по зависимостям: altbug #18636.


См. тж.