W systemach operacyjnych opartych na systemach Linux i Unix uruchomiona instancja polecenia jest nazywana procesem. Każdy proces można zidentyfikować za pomocą unikalnego identyfikatora procesu. Linux udostępnia narzędzia wiersza polecenia do wydajnego wyświetlania, zarządzania i monitorowania tych procesów.
Możesz użyć tych narzędzi, aby nadać priorytet każdemu procesowi lub umieścić je w tle lub na pierwszym planie, aby efektywnie zarządzać zasobami systemowymi.
Ten przewodnik po zarządzaniu procesami w systemie Linux zawiera narzędzia, takie jak ps, kill, renice i inne polecenia, które pomagają administratorom systemu w zarządzaniu i wyświetlaniu procesów.
Wyświetlanie procesów za pomocą polecenia ps
Najstarszym i najczęściej używanym narzędziem wiersza poleceń do wyświetlania aktualnie uruchomionych procesów w systemie Linux jest ps. Mimo że górne polecenie to kolejny interaktywny i zorientowany na ekran sposób zarządzania i tworzenia listy procesów systemowych, ps wyświetla również dodatkowe informacje, takie jak zasoby, które zużywa każdy proces.
Ze względu na środowisko wielu użytkowników każdy proces w systemie Linux jest powiązany z oddzielnym kontem użytkownika i grupy. W związku z tym informacje o koncie ze szczegółami procesu ułatwiają dostęp do zasobów systemowych, z których może korzystać proces.
Na przykład procesy działające z uprawnieniami superużytkownika mogą uzyskać dostęp do większej ilości zasobów systemowych niż zwykły użytkownik, i właśnie tutaj ps pomaga administratorom systemu.
Poniższe dane wyjściowe są przykładem listy procesów z nazwami użytkowników, czasem, jaki upłynął oraz powiązanym zużyciem pamięci i procesora:
Możesz również zwrócić uwagę na kolumnę STAT, która pokazuje stan uruchomionego procesu. r reprezentuje proces aktualnie uruchomiony i S to proces usypiania ze znakiem plus wskazującym operacje na pierwszym planie.
Możesz wyświetlić listę wszystkich procesów bieżącego użytkownika w następujący sposób:
ps ux | mniej
Aby wyświetlić listę procesów dla wszystkich użytkowników:
ps aux | mniej
Zarządzanie procesami za pomocą Monitora systemu
Monitor systemu zapewnia graficzny sposób wyświetlania i zarządzania procesami. Aby uruchomić Monitor systemu, przejdź do Aplikacje > Monitor systemu. Przełącz na Procesy zakładka, aby wyświetlić wszystkie uruchomione procesy.
Domyślnie wyświetla procesy w kolejności alfabetycznej dla bieżącego użytkownika. Możesz ponownie posortować listę procesów, klikając dowolny nagłówek kolumny. Poza tym możesz kliknąć na %PROCESOR oraz Pamięć nagłówki, aby wyświetlić procesy zużywające więcej mocy obliczeniowej i pamięci.
Monitor systemu umożliwia zarządzanie procesami na różne sposoby, co oznacza, że możesz zatrzymać, zabić, kontynuować, zakończyć i zmienić priorytet procesu, klikając nazwę procesu prawym przyciskiem myszy.
To najlepsze narzędzie dla początkujących użytkowników Linuksa, którzy nie wiedzą, jak pracować z narzędziami wiersza poleceń.
Związane z: Jak wyświetlić najlepsze wyniki procesów i sortować według pamięci?
Praca z procesami w tle/na pierwszym planie
Nadchodzi czas, kiedy musisz uzyskać dostęp do systemu Linux przez sieć, używając tylko wiersza poleceń. Ogranicza to efektywne zarządzanie wieloma aktywnymi programami. Ale powłoka pozwala zarządzać programami, przełączając je w tle i na pierwszym planie.
Jak rozpocząć proces w tle
Aby uruchomić program podczas dalszej pracy w powłoce, uruchom polecenie, zatrzymaj je i umieść w tle, używając Ctrl + Z. Aby uruchomić program bezpośrednio w tle, dodaj znak ampersand (&) na końcu polecenia w następujący sposób:
znajdź /usr > /tmp/allusrfiles &
Zanotuj numer zadania i identyfikator procesu. Pamiętaj, że nie możesz uruchamiać poleceń, które wymagają wprowadzania danych z terminala w tle.
Możesz użyć Oferty pracy polecenie, aby wyświetlić wszystkie programy/polecenia działające w tle lub te, które zatrzymałeś (za pomocą Ctrl + Z).
Oferty pracy
Jak wznowić procesy na pierwszym planie i w tle
Aby kontynuować pracę, którą umieściłeś w tle, użyj fg polecenie, a to wyniesie polecenie na pierwszy plan.
fg%
Podobnie, jeśli zatrzymałeś uruchamianie polecenia w tle, możesz je ponownie uruchomić w tle za pomocą polecenia bg w następujący sposób:
bg%
Zabijanie procesów w systemie Linux
Tak jak narzędzie graficzne, takie jak Monitor systemu, umożliwia zabicie, zatrzymanie i kontynuowanie procesu, można również użyć narzędzi wiersza poleceń, takich jak zabić oraz zabić wszystkich wysłać sygnał do działającego procesu.
Oprócz zwykłego zabicia procesu, polecenie kill pomaga również w wysyłaniu różnych sygnałów w celu zarządzania zachowaniami procesów.
Możesz użyć nazw lub numerów, aby użyć sygnału.
kill -numer sygnału
kill -nazwa sygnału
Na przykład następujące polecenia wysyłają sygnał SIGKILL do procesu z PID 1987:
zabić -9 1987
zabić -SIGKILL 1987
Najczęściej używane sygnały procesowe to:
Opcja | Opis |
ZABÓJCZYK (9) | Zabija proces natychmiast |
SIGTERM (15) | Kończy proces |
SIGSTOP (19/28/25) | Zatrzymuje proces |
SIGCONT (19/28/25) | Kontynuuje proces po jego zatrzymaniu |
REJESTRACJA (1) | Nakazuje procesowi odczytanie swojego pliku konfiguracyjnego |
Należy zauważyć, że różne procesy reagują w różny sposób na te sygnały, ale nie mogą zatrzymać sygnałów SIGSTOP i SIGKILL. Wpisz następujące polecenie, aby przeczytać więcej o tych sygnałach:
człowiek 7 sygnał
Ucz się więcej: Jak zakończyć nieodpowiadające procesy w systemie Linux za pomocą kill i pkill
Procesy renicowania w systemie Linux
Jądro systemu Linux nadaje priorytet uruchomionym procesom i przydziela zasoby systemowe, biorąc pod uwagę uprawnienia kont użytkowników. Jądro uwzględnia również inny czynnik, którym jest „ładna” wartość każdego uruchomionego procesu.
Domyślna ładna wartość procesu to zero, ale możesz ustawić zakres od -20 do 19. Kilka faktów na temat ustawienia priorytet procesu z nice and renice wartości to:
- Proces o niskiej ładnej wartości ma większy dostęp do zasobów procesora
- Zwykły użytkownik może zmienić tylko priorytety swoich procesów
- Zwykły użytkownik może ustawić tylko wartości od -20 do 19 i może ustawić tylko wyższą wartość
- Superużytkownik może ustawić dowolne procesy na dowolną wartość, wysoką lub niską
Łatwe zarządzanie procesami w systemie Linux
Środowisko wielu użytkowników ma kilka procesów, które wymagają wystarczającej wiedzy na temat zarządzania zasobami systemu, aby zapobiec wąskim gardłom i ograniczeniom systemu. Część zadania obejmuje zarządzanie procesami poprzez uruchamianie ich w tle/na pierwszym planie, zabijanie ich lub renicowanie.
Możesz również dowiedzieć się o głównym narzędziu poleceń do wyświetlania i sortowania procesów oraz dowiedzieć się, jak zakończyć nieodpowiadające procesy w systemie Linux.
Kiedy aplikacja Linux przestaje odpowiadać i ulega awarii, jak możesz ją zabić? Wypróbuj jedną z tych sztuczek, aby wymusić zamknięcie programu w systemie Linux.
Czytaj dalej
- Linux
- Procesor komputerowy
- Polecenia Linuksa
- Podstawowe informacje o Linuksie
Rumaisa jest niezależnym pisarzem w MUO. Nosiła wiele kapeluszy, od matematyka po entuzjastę bezpieczeństwa informacji, a teraz pracuje jako analityk SOC. Jej zainteresowania obejmują czytanie i pisanie o nowych technologiach, dystrybucjach Linuksa i wszystkim, co dotyczy bezpieczeństwa informacji.
Zapisz się do naszego newslettera
Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!
Kliknij tutaj, aby zasubskrybować