Przejrzysty wykaz każdego standardowego sygnału procesu POSIX/Linux — od SIGHUP do SIGSYS — pokazujący numer każdego sygnału, jego domyślne działanie (Term, Core, Ign, Stop, Cont), czy można go przechwycić, co go wywołuje oraz pasujący kod wyjścia powłoki (128+N). W przeglądarce, bezpłatnie.

Każdy standardowy sygnał procesu POSIX/Linux, objaśniony. Wszystko działa w Twojej przeglądarce na podstawie wbudowanego wykazu — nic nie jest wysyłane na serwer.

Sygnał Nr Domyślne działanie Przechwytywalny Opis Kod wyjścia
Żaden sygnał nie pasuje do wyszukiwania.
Spróbuj innej nazwy lub numeru — na przykład SIGTERM, 11 lub segmentation.
Oprócz nich Linux udostępnia sygnały czasu rzeczywistego od SIGRTMIN do SIGRTMAX (zwykle sygnały 34–64). Nie mają predefiniowanego znaczenia i są dostarczane w gwarantowanej kolejności — aplikacje przypisują im własne przeznaczenie.
Pokazane numery sygnałów to wartości domyślne dla ABI x86/ARM. Kilka sygnałów ma inne numery na innych architekturach (na przykład Alpha, MIPS i SPARC), dlatego w skryptach zawsze preferuj nazwę symboliczną (SIGKILL) zamiast surowego numeru (9).

O Sygnały Linux

Materiał referencyjny sygnałów Linux wymienia każdy standardowy sygnał procesu POSIX/Linux, od SIGHUP po SIGSYS, w jednej przeglądowej tabeli. Każdy wiersz pokazuje numer sygnału, jego domyślną akcję — Zakończ, Zrzut pamięci, Ignoruj, Zatrzymaj lub Kontynuuj — czy proces może go przechwycić, co zwykle go wywołuje, oraz kod wyjścia powłoki (128 + N), który widzisz, gdy proces ginie od tego sygnału.

Ta kolumna kodu wyjścia domyka pętlę, z którą deweloperzy stykają się na co dzień: kontener kończący pracę z kodem 137 został zabity przez SIGKILL (9), awaria z kodem 139 to naruszenie ochrony pamięci z SIGSEGV (11), a czyste zamknięcie z kodem 143 pochodziło z SIGTERM (15). Wyszukiwanie działa po nazwie, numerze, kodzie wyjścia lub znaczeniu, więc możesz zacząć od dowolnej dostępnej wskazówki.

Dwa przypisy obejmują części, które inne materiały referencyjne zwykle pomijają: sygnały czasu rzeczywistego SIGRTMIN do SIGRTMAX, które nie mają predefiniowanego znaczenia i są dostarczane w gwarantowanej kolejności, oraz zastrzeżenie architektoniczne — kilka numerów sygnałów różni się na Alpha, MIPS i SPARC, dlatego skrypty powinny używać nazw symbolicznych. Wszystko działa w Twojej przeglądarce.

Jak korzystać z Sygnały Linux

  1. Wyszukaj sygnał po nazwie (SIGKILL), numerze (9), kodzie wyjścia powłoki (137) lub słowie kluczowym takim jak „segmentation”.
  2. Odczytaj wiersz: numer, domyślną akcję, czy można go przechwycić i co go wywołuje.
  3. Użyj kolumny kodu wyjścia, aby przetłumaczyć status powłoki 128+N z powrotem na sygnał, który zabił proces.
  4. Skopiuj nazwę sygnału lub kod wyjścia za pomocą przycisków kopiowania w wierszu.
  5. Sprawdź uwagi o sygnałach czasu rzeczywistego i numeracji zależnej od architektury, jeśli piszesz przenośne skrypty.

Najczęściej zadawane pytania

SIGTERM (15) grzecznie prosi proces o zakończenie — może zostać przechwycony, więc proces może najpierw posprzątać. SIGKILL (9) kończy proces natychmiast na poziomie jądra i nie może zostać przechwycony, zablokowany ani zignorowany. Zawsze próbuj najpierw SIGTERM, zanim sięgniesz po kill -9.

SIGKILL i SIGSTOP. Jądro egzekwuje oba bezpośrednio, więc żaden uchwyt nie może ich przechwycić — SIGKILL zawsze kończy proces, a SIGSTOP zawsze go zawiesza.

Gdy proces zostaje zabity przez sygnał, powłoka raportuje 128 plus numer sygnału. Zatem 139 to 128 + 11: proces zginął od SIGSEGV, naruszenia ochrony pamięci. Tabela podaje ten kod wyjścia przy każdym sygnale śmiertelnym.

SIGRTMIN do SIGRTMAX — zwykle numery od 34 do 64 w Linuksie. W przeciwieństwie do standardowych sygnałów nie mają predefiniowanego znaczenia i są kolejkowane oraz dostarczane w gwarantowanej kolejności, więc aplikacje przypisują im własne cele.

Ponieważ kilka numerów sygnałów różni się między architekturami procesorów, takimi jak Alpha, MIPS i SPARC. Nazwa symboliczna — kill -TERM zamiast kill -15 — oznacza to samo wszędzie, więc jest wyborem przenośnym.

Tak, w pełni darmowy. Cała tabela jest wbudowana w stronę, a wszystkie wyszukiwania i kopiowanie odbywają się w Twojej przeglądarce.

Potrzebujesz pomocy?
Masz problem z tym narzędziem? Daj nam znać.
Zgłoś problem

Dodaj to darmowe narzędzie do swojej witryny — skopiuj i wklej poniższy kod.