Как безопасно прервать установку apt-get?

У меня есть процесс apt-get install, который, кажется, безнадежно заклинивает на этапе processing triggers for python-support.

Я склоняюсь к kill этому, но в прошлом, просто kill - процесс apt-get install вызывал у меня много горя. (Остальные файлы блокировки IIRC остались позади и т. Д.)

Есть ли более безопасный способ остановить этот процесс?

55
задан 11 February 2013 в 23:33

5 ответов

Процесстерди өлтүрүү

Жалпысынан бир процессти өлтүрүү үчүн айтканда процессти өлтүрүүнүн кадимки өлтүрүүдөн (SIGTERM) караганда коопсуз ыкмасы жок. Эгер бул интерактивдүү процесс болсо, ал адатта Ctrl + C баскычтары аркылуу жөнөтүлгөн SIGINT сигналын жөнөтүп, аны коопсузураак токтотууга мүмкүндүк берет. Бул сигнал процесстин өзү тарабынан кармалып жатат аны уга алат , адатта, жагымдуу токтойт. ( Элиахка рахмат )

DPKG маалыматтар базасы

Топтомду башкаруу боюнча бул өзгөчө иш. APT командалары суунун астында колдонгон DPKG маалымат базасы ар дайым операция бүтө электигин аныктай алат. Ар бир таңгакта чыныгы абалы, ошондой эле учурдагы абалы белгиленет, мис. таңгактан чыгарылган, конфигурацияланган ж.б. APT фронтун өлтүрүү менен, маалымат базасы бузулган, бирок белгилүү абалында болот. Кулпуланган файлдар бардыгы таза абалга келгенден кийин гана чыгарылат - бул жаңы операцияларга мүмкүндүк бергенге чейин оңдолушу керек.

Түзөтүүнүн жолу - бардык пакеттерди конфигурацияланган абалда алуу процесси. Чындыгында, apt-get операциясын үзгүлтүккө учураткан болсоңуз, анда аны кийинчерээк

sudo dpkg --configure -a

аркылуу бүтүрсөңүз болот, ал бузулган абалдан бардык конфигурацияланган абалга кантип келүүнү билет жана ушул мааниде жөн гана үзгүлтүккө учураган жерден уланта бериңиз. Кулпуланган файлдар сиз аны бүткүчө ошол жерде калтырылат, демек, таза эмес абалда DPKG маалымат базасы менен жаңы операциялардын алдын алуу.

SIGKILL жөнүндө (9)

SIGKILL жөнөтүү (ондук өкүлчүлүк 9) өтө кооптуу. Бул сигнал процессте байкалбайт, бирок процесс жакса да, каалабаса дагы, бүт процесс иштөө тутуму (ядро) тарабынан тазаланат. Файл тутумундагы файлдардын абалы бузулган абалда калтырылышы мүмкүн. Мындан ары жагымдуу сигналдарды укпаса, бул сигналдарды эч качан жөнөтпөңүз.

52
ответ дан 11 February 2013 в 23:33
sudo dpkg -r <package name>

В моем случае у меня были проблемы с Java 8 на Ubuntu 12.04, поэтому ...

sudo dpkg -r oracle-java8-installer
4
ответ дан 11 February 2013 в 23:33

Менде apt-get иштебей калганда, мен төмөнкүнү жасайм (root катары, башкача айтканда sudo бардык буйруктардан мурун):

  1. apt- деп аталган процессти өлтүрүңүз get:

     killall -9 apt-get 
  2. dpkgди кайра конфигурациялоо:

     dpkg --configure -a 
  3. apt-get жаңыртуу:

     apt-get update 
  4. пакеттерди жаңыртуу, анын ичинде туура эмес орнотулган:

     apt-get upgrade 

Мен муну бир жерден билдим, бирок тилекке каршы так кайда экенин эстей албайм.

17
ответ дан 11 February 2013 в 23:33

Linux жана башка Unix типтеги тутумдар буйрук сабынан абдан күчтүү, бирок процесс башталгандан кийин, кечиримсиз. Процессти өлтүрүү сигналы жөнөтүлсө, ал иштеп жаткан процессти өлтүрөт, бирок сиз маалымат базасын туруксуз абалда калтырганыңызды эсиңизден чыгарбаңыз. Акыркы жазуу туура жабылбашы мүмкүн, андыктан маалымат базасын оңдоп-түзөөгө туура келет. Апт менен гана эмес, ар кандай тиркеме менен.

Ар дайым колдонмону кадимки тартипте бүтүрүүгө аракет кылып, колдонмолор иштеп жаткан процесстерди гана өлтүрүңүз.

1
ответ дан 11 February 2013 в 23:33

Мен муну ушуну менен жасайм, Ctrl + C Бирок apt-get жүктөө баскычында же анын коопсуздугун эске алыңыз. анын кэшин жаңыртуу. Андан тышкары, мен коопсузураак жол таба албайм. Жөн гана аны аягына чейин чыгарып, кандайдыр бир жол менен төмөндөтүү менен өзгөртүүлөрдү жокко чыгарыңыз. Жүктөлүп алынган файлдарды sudo apt-get autoclean

0
ответ дан 11 February 2013 в 23:33

Другие вопросы по тегам:

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