Пропустіть специфічне оновлення у світі, що розвивається -auvD


30

Чи є простий спосіб пропустити певне оновлення emerge -auvD world?

Наприклад, наразі в дереві portage є пошкоджене, media-sound/teamspeak-server-bin-3.0.5-r1 позначене як стабільне, що порушує все оновлення, оскільки цей пакет є першим у списку. Звичайно, я міг би просто замаскувати цю версію за допомогою package.maskфайлу, але я вважаю за краще змінну середовища або перемикач командної лінії , щоб пропустити її лише зараз - вона, швидше за все, буде виправлена ​​найближчим часом.

Зауважте, що я не хочу використовувати emerge -auvD1 list of working packages(тобто лише оновлювати інші пакунки, вказуючи всі їх назви).

Відповіді:


38

Схоже, --excludeваріант робить це:

--exclude ATOMS
Список імен пакетів або атомів слота, розділених пробілом. Emerge не встановить жодного ebuild або бінарного пакета, який відповідає будь-якому із заданих атомів пакета.

Отже, це зробило роботу для мене:

emerge -auvD --exclude=media-sound/teamspeak-server-bin world

Я не зміг знайти приклад того, що хтось виключає кілька пакетів в одному операторі, тому для довідки: для кожного пакета потрібен --excludeтег afaik. emerge --deep --update @world -av --exclude=chromium --exclude=firefox.
NuclearPeon

12

Якщо ви не хочете маскувати його, ви можете скористатись --keep-goingопцією. Це змушує нові групи скинути свій список і продовжувати дію, без невдалого пакету в списку.


3

Відповідь ThiefMaster - це правильний шлях, але є інший варіант, який, на мою думку, покращується після відповіді Кіта . А саме, з його відповіддю, що з'явиться, буде суджено, і це може зайняти час. Якщо ви знаєте, що перший пакет є проблематичним, оскільки ви щойно зіткнулися з проблемою, ви можете використовувати --resumeта --skipfirst:

--resume(-r)

Відновлює останній список злиття, який було скасовано через помилку. Це повторно використовує аргументи та параметри, які були надані з початковою командою, що поновлюється, і користувач також може надавати додаткові опції під час виклику --resume. Помилково надати атоми або набори як аргументи --resume, оскільки замість цього використовуються аргументи відновленої команди. Зауважте, що ця операція поверне помилку лише при відмові. Якщо portage нічого не може зробити, Portage вийде з повідомленням та умовою успіху. Список резюме буде зберігатися до тих пір, поки він не буде заповнений повністю або до того часу, поки інший перерваний список об'єднання не замінить його. Історія резюме здатна зберігати два списки злиття. Після заповнення одного списку резюме можна звернутися до нього--resumeще раз, щоб відновити старіший список. Списки резюме зберігаються в /var/cache/edb/mtimedbі можуть бути явно відкинуті шляхом запуску emaint --fix cleanresume(див. Emaint (1)).

--skipfirst

Ця опція дійсна лише при використанні з --resume. Він видаляє перший пакет із списку резюме. Залежності перераховуються для інших пакетів, і будь-які, які мають незадоволені залежності або замасковані, будуть автоматично скинуті. Також дивіться відповідний --keep-goingваріант.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.