Kako da brzo i lako ubijete Linux procese

Kako da brzo i lako ubijete Linux procese

offline
  • Uroš Ilić
  • dr stom.
  • Pridružio: 08 Jul 2006
  • Poruke: 2182
  • Gde živiš: Beograd

http://www.kombib.rs/vest.php?o=51&s=2637

Jedna od najboljih funkcija Linuxa je način na koji možete da kontrolišete procese iz komandne linije. Na primer, ako imate aplikaciju koja vam zamrzne grafički interfejs, vi uvek možete da upotrebite SSH sa druge mašine i jednostavno ubijete (kill) dati proces.

Problem nastaje onda kada treba da kill-ujete isti proces više puta, jer postaje zamorno to što svaki put treba da pronađete ID procesa kako biste mogli da ga ubijete. U ovom članku mi ćemo vam ponuditi jedan lakši način za isključivanje neposlušnih i nefunkcionalnih programa.

Stari način:

U klasičnom načinu kill-ovanja procesa vi prvo treba da upotrebite ps komandu propuštenu kroz grep kako biste pronašli proces koji pokušavate da isključite:

$ ps -ef | grep swiftfox
geek 7206 22694 0 Dec04 ? 00:00:00 /bin/sh /opt/swiftfox/swiftfox
geek 7209 7206 0 Dec04 ? 00:00:00 /bin/sh /opt/swiftfox/run-mozilla.sh /opt/swiftfox/swiftfox-bin
geek 7213 7209 0 Dec04 ? 00:04:29 /opt/swiftfox/swiftfox-bin
geek 14863 14224 0 18:19 pts/4 00:00:00 grep swiftfox
Zatim da biste isključili proces, treba da upotrebite kill komandu:
$ kill 7206

Novi način:

Umesto da prolazite kroz čitavu zamornu proceduru, vi možete jednostavno da upotrebite pkill komandu ako već znate deo ili čitavo ime procesa.

$ pkill swiftfox

Treba da imate na umu da će pkill da ubije sve procese koji se poklapaju sa tekstom pretraživanja, u ovom slučaju swiftfox.

Ako želite da vidite imena kojih procesa se poklapaju pre nego što upotrebite pkill komandu, možete da upotrebite pgrep komandu. Unošenje -l sviča govori pgrep-u da pokaže i ime procesa.

$ pgrep -l swiftfox
7206 swiftfox
7213 swiftfox-bin

Ako imate neku aplikaciju koja vam često pada i zamrzava sistem, sada imate mogućnost da upotebite ovu komandu.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 20 Feb 2005
  • Poruke: 4505
  • Gde živiš: planeta Zemlja

Za pregled imena svih prcesa koji se poklapaju postoji elegantan nacin za trazenje u bashu. U ~/.bashrc dodati sledece redove i definisati funkciju (jel?):

psgrep() {
        if [ ! -z $1 ] ; then
                echo "Grepping for processes matching $1..."
                ps aux | grep $1 | grep -v grep
        else
                echo "!! Need name to grep for"
        fi
}


Ovo je po defaultu ukljuceno u Arch Linux. Kada ovo ubacite u bashrc u terminalu cete morati da ukucate psgrep ime-procesa za pretragu procesa.

Brze je i olaksava posao pretrage procesa (za nas lencuge... idealno Mr. Green )



offline
  • bocke  Male
  • Moderator foruma
  • Glavni moderator Linux foruma
  • Veliki Pingvin
  • Guru
  • Pridružio: 16 Dec 2005
  • Poruke: 12509
  • Gde živiš: Južni pol

hazmaju ::Problem nastaje onda kada treba da kill-ujete isti proces više puta, jer postaje zamorno to što svaki put treba da pronađete ID procesa kako biste mogli da ga ubijete. U ovom članku mi ćemo vam ponuditi jedan lakši način za isključivanje neposlušnih i nefunkcionalnih programa.

Stari način:

U klasičnom načinu kill-ovanja procesa vi prvo treba da upotrebite ps komandu propuštenu kroz grep kako biste pronašli proces koji pokušavate da isključite:

$ ps -ef | grep swiftfox
geek 7206 22694 0 Dec04 ? 00:00:00 /bin/sh /opt/swiftfox/swiftfox
geek 7209 7206 0 Dec04 ? 00:00:00 /bin/sh /opt/swiftfox/run-mozilla.sh /opt/swiftfox/swiftfox-bin
geek 7213 7209 0 Dec04 ? 00:04:29 /opt/swiftfox/swiftfox-bin
geek 14863 14224 0 18:19 pts/4 00:00:00 grep swiftfox
Zatim da biste isključili proces, treba da upotrebite kill komandu:
$ kill 7206.


Khm... A killall?
man killall

offline
  • Uroš Ilić
  • dr stom.
  • Pridružio: 08 Jul 2006
  • Poruke: 2182
  • Gde živiš: Beograd

Pa jeste, ja sam prvo i nauchio killall, ali eto, chlanak mi se uchinio koristan, pa rekoh, moze da posluzi i bude edukativan...

offline
  • Aleksandar Matic
  • Pridružio: 17 Jun 2008
  • Poruke: 578
  • Gde živiš: Valjevo

Ljudi jel moze jedna pomoc u vezi Linuxa i pravljenja log fajlova konkretno Open Suse 10.3,kako,ako je moguce ugasiti to dosadno pravljenje log fajlova,koje nekada zna da napuni praticiju od 20GB do kraja....pa posle ulazim kao Root pa brisem log fajlove,kako to ukinuti...Ja sam probao preko Yast-a i tamo mu rekao da mi ne upisuje logove,ali on opet pravi gomilu toga....Sta da radim?Pomozite molim vas...

Dopuna: 03 Okt 2008 20:03

moze mi neko pomoci kako da sredim pomenuti problem sa log fajlovima...kada npr....stane server i nema mreze klijenti nenormalno prave log fajlove i pune particije tako da user nalog ne funkcionise,pa ima dosta problema...Ako ima neko bilo kakvu ideju neka napise da sredim to posto imam dosta racunara sa ovim problemima....

offline
  • Uroš Ilić
  • dr stom.
  • Pridružio: 08 Jul 2006
  • Poruke: 2182
  • Gde živiš: Beograd

Josh jedan mali dodatak, nauchio sam neshto novo pa da podelim.
Kada zamrzne neka aplikacija, vrlo chesto je killall ime procesa nece ubiti, jer ta komanda shalje SIGTERM signal, a poshto aplikacija ne reaguje nece je primiti. Onda se kuca killall -9 ime procesa, koja shalje SIGKILL signal, a onda Kernel jednostavno ubije proces bez pitanja.

Evo korisnog linka o signalima.
http://linux.about.com/od/commands/l/blcmdl7_signal.htm

Ko je trenutno na forumu
 

Ukupno su 773 korisnika na forumu :: 10 registrovanih, 2 sakrivenih i 761 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 357magnum, babaroga, Dorcolac, loon123, Mercury, novator, ruso, strelac07, yrraf, Zimbabwe