По принцип има 4 начина de Матар ефективно a процес en Linux: убийте го по име, като посочите част от името, чрез PID, като посочите прозореца на процеса с курсора на мишката. Нека да видим един по един ... |
Kill: убийте процес, използвайки неговия PID
Най-сложният, но в същото време най-точният начин за унищожаване на процес е чрез неговия PID („Идентификатор на процеса“). Всеки от тези 3 варианта може да обслужва:
kill -TERM pid kill -SIGTERM pid kill -15 pid
Можете да използвате името на сигнала (TERM или SIGTERM), който искате да изпратите към процеса, или неговия идентификационен номер (15). За да видите пълен списък на възможните сигнали, предлагам да проверите ръководството за убиване. За да направите това, изпълнете:
човек убийство
Нека да видим пример за това как да убием Firefox:
Първо трябва да разберете PID на програмата:
ps -ef | grep firefox
Тази команда ще върне нещо подобно:
1986 г.? Sl 7:22 /usr/lib/firefox-3.5.3/firefox
Използваме PID, върнат от горната команда, за да убием процеса:
kill -9 1986
killall: убийте процес, използвайки името му
Тази команда е много лесна
killall име_на процес
Едно нещо, което трябва да имате предвид, когато използвате този метод, е, че ако има повече от един екземпляр на тази програма, всички те ще бъдат затворени.
pkill: убийте процес, използвайки част от името му
Възможно е да се убие процес, като се посочи пълното име или част от името. Това означава, че няма нужда да помните процеса PID за изпращане на сигнала.
pkill име_на_процес
В замяна този метод ще унищожи всички процеси, които съдържат въведената дума. Това означава, че ако имаме отворени 2 процеса, които споделят дума в името, и двата ще бъдат затворени.
xkill: убийте процес, като изберете прозореца с мишката
Това е най-простият и практичен метод. В случай на бедствие, просто натиснете Alt + F2, за да изведете диалоговия прозорец, който ще ви позволи да изпълнявате команди. Оттам изпълнете следната команда:
xkill
Курсорът на мишката ще се трансформира в малък череп. Остава само да щракнете върху прозореца, който искате да затворите, и да отворите. Чао процес.
Някои последни коментари
В заключение исках да споделя някои полезни съвети. В Linux, както и в Windows, когато процесът виси, въпросният прозорец обикновено може да бъде затворен, като щракнете върху бутона Затвори (който е оформен като X). След няколко секунди ще се появи прозорец, който ни пита дали наистина искаме да убием процеса, тъй като той не реагира правилно. Ние казваме да и това е всичко.
Това означава, че описаните тук методи трябва да се използват, когато нищо не се случи, когато щракнете върху бутона Затвори на въпросния прозорец.
В случай на голямо бедствие, не забравяйте, че преди натискане е възможно да се извърши a "безопасно" рестартиране.
И накрая, може да бъде много полезно да разберете кои процеси се изпълняват в момента. За това различните среди на работния плот (GNOME, KDE и др.) Разполагат с графични инструменти, които улесняват тази задача. В случай, че нямате достъп до тях или просто искате да го направите от терминала, можете да изпълните следното:
връх
В случай, че това не работи или не сте инсталирали съответния пакет, винаги можете да изпълните:
ps -A
Това ще изброи всички работещи процеси, заедно със съответните им имена и PID.
«Ps -ef | "grep firefox" не е същото като "pgrep firefox"?
Ами аз лично използвам "pidof", за да получа PID.
Поздрави!
това, което използвам най-много, е:
~ $ отгоре
показвайки ни списъка с активни процеси, тогава ако натиснем „k“ или напишем „kill“ ще ни поиска pid на процеса да убие (четем го отгоре) и след това влизаме, за да излезем отгоре натискаме „q“.
Много добро влизане, но този начин ми изглежда по-опростен. Ако терминалът не работи, опитваме с ctrl + alt + f [1-6] и го правим от там.
Какви гении, момчета благодаря, че ми помогнахте, ми даде страхотна ръка с този пост !!!
Здравейте! Възможно ли е командата xkill само да накара програмата X да изчезне и все още да е отворена? Защото винаги ми се случва, че когато отида при диспечера на задачите, процесът е все още жив и трябва да го убия.
Признавам си, аз съм много новак. А командите killall и pkill ще ми помогнат много. Благодаря за качването им, много добър блог.
¡Saludos!
Препоръчвам htop 😀 това е най-доброто за това ...
работи с ncurses
sudo apt-get инсталирайте htop
pidof не е за всички Unix, например Solaris няма тази команда и това ни кара да използваме мощния ps.
поздрави
htop е по-подробен и лесен за употреба
В случай на използване на PID, правилното нещо е $ kill PID, който изпраща сигнала SIGTERM по подразбиране, в случай че процесът не реагира, се използва $ kill -9 PID, който изпраща сигнала SIGKILL, последният елиминира процеса, без да го оставя правилно същото затваряне (например може да има загуба на данни). SIGTERM пита, моля, SIGKILL му дава брадва 🙂
Благодаря ви много, ще го тествам, ако ми се случи отново.
заявка. Когато средата на работния плот виси в Ubuntu (използвам Unity), може ли да се рестартира, без да се убиват всички други процеси? Не съм много напреднал в linux и понякога ми се случва да работя и той увисва, единственото, което правя, е безопасното рестартиране, но губя всичко, върху което съм работил.
Не знам дали съмнението ми е разбрано.
поздрави
Процесът в зомби състояние не може да бъде убит по традиционния начин.
Тук за повече подробности: esdebian.org/wiki/matar-proceso-zombie
За по-напредналите как да убиете процес в състояние ZOMBIE?
просто за генериране на малък чат 😀
Много добре, точно това, от което имах нужда ..
Истината е, че командата kill е много полезна. Възможността да убивате досадни процеси само чрез извикване на kill е страхотна. Накрая команда, която обслужва нещо.
Теоретичен въпрос: Убиването на даден процес означава, че той спира да работи. Така че въпросът ми е обратният, ако искам да рестартирам този процес, който съм убил, как да го направя?
Ами вие поставяте ./ (името на процеса) &
С това го стартирате отново и вашият PID също ще излезе 😀
Отлично, имах време да търся помощ като тази. Беше ми много полезно. Благодаря ви много за споделянето.
Поздрави от Сан Луис Потоси, Мексико.
Как мога да убия два процеса, знаейки техния PID в една и съща команда?
Мисля, че беше „убий [Първи PID] [Втори PID]
Много интересна статия. Този уебсайт е основният ми linux уебсайт.
Обикновено използвам:
ps брадва | grep process_name (това, за да го намерите в системата)
kill -9 process_id
Споделям безплатен онлайн курс за баш, който обикаля:
https://aprendemia.com/cursos/curso-de-bash-scripting Дано да е полезно.
и ако исках да е профил в linux само този, който се затваря както трябва?
пример Имам отворени 2 профила на firefox
но искам само един профил да се затвори
профил 1
профил 2
Искам само профил 2 да се затвори, както трябва да бъде командата
предварително благодаря за отговора
как мога да убия процеси на преден план на ubuntu, с един команден ред