Nie mogę znaleźć żadnych informacji na ten temat oprócz „MMU procesora wysyła sygnał” i „jądro kieruje je do szkodliwego programu, kończąc je”. Zakładałem, że prawdopodobnie wysyła sygnał do powłoki i powłoka obsługuje ją, kończąc proces obrażeń i drukowanie "Segmentation fault". Przetestowałem to założenie pisząc niezwykle minimalną powłokę, którą nazywam crsh …
Mam skrypt Bash, który wygląda podobnie do tego: #!/bin/bash echo "Doing some initial work...."; /bin/start/main/server --nodaemon Teraz, jeśli powłoka bash uruchamiająca skrypt odbierze sygnał SIGTERM, powinna również wysłać SIGTERM do działającego serwera (który blokuje, więc pułapka nie jest możliwa). Czy to jest możliwe?
W Bash dowiedziałem się, że sygnał końcowy można zmienić tutaj. Ale jak domyślnie mogę sygnalizować koniec wejścia standardowego? Zdarzyło mi się, że w przypadku cat i chardet ich wejścia standardowe mogą być sygnalizowane jako zakończone przez Ctrl + d. Wydaje mi się jednak, że pamiętam, że Ctrl + d i …
Jak mogę sprawdzić, czy uruchomiony proces złapie sygnał, zignoruje go lub zablokuje? Idealnie chciałbym zobaczyć listę sygnałów, a przynajmniej nie muszę wysyłać sygnału do sprawdzenia.
Wiele przykładów trapużycia trap ... INT TERM EXITdo zadań czyszczenia. Ale czy naprawdę trzeba wymienić wszystkie trzy sigspecy? Instrukcja mówi: Jeśli SIGNAL_SPEC to EXIT (0), ARG jest wykonywane przy wyjściu z powłoki. które moim zdaniem ma zastosowanie niezależnie od tego, czy skrypt zakończył się normalnie, czy zakończył się, ponieważ otrzymał …
Biorąc pod uwagę proces powłoki (np. sh) I jego proces potomny (np. cat), W jaki sposób mogę zasymulować zachowanie Ctrl+ Cprzy użyciu identyfikatora procesu powłoki? Oto, co próbowałem: Uruchamianie, sha następnie cat: [user@host ~]$ sh sh-4.3$ cat test test Przesyłanie SIGINTdo catz innego terminala: [user@host ~]$ kill -SIGINT $PID_OF_CAT cat …
Kiedy proces zostanie zabity sygnałem nadającym się do obsługi, takim jak SIGINTlub, SIGTERMale nie obsługuje on sygnału, jaki będzie kod zakończenia procesu? Co z takimi nieobsługiwanymi sygnałami SIGKILL? Z tego, co mogę powiedzieć, zabicie procesu z SIGINTprawdopodobnym wynikiem w kodzie wyjścia 130, ale czy różni się to w zależności od …
Mam skrypt powłoki, który odczytuje ze standardowego wejścia . W rzadkich przypadkach nikt nie będzie gotowy do wprowadzenia danych, a skrypt musi upłynąć limit czasu . W przypadku przekroczenia limitu czasu skrypt musi wykonać kod czyszczenia. Jak najlepiej to zrobić? Skrypt ten musi być bardzo przenośny , w tym do …
Mam polecenie, które chcę uruchamiać ponownie automatycznie za każdym razem, gdy się kończy, więc uruchomiłem coś takiego: while [ 1 ]; do COMMAND; done; ale jeśli nie mogę zatrzymać pętli, Ctrl-cto po prostu zabija, COMMANDa nie całą pętlę. Jak mam osiągnąć coś podobnego, ale co mogę zatrzymać bez konieczności zamykania …
Napisałem prosty skrypt bash z pętlą do drukowania daty i pingowania na zdalną maszynę: #!/bin/bash while true; do # *** DATE: Thu Sep 17 10:17:50 CEST 2015 *** echo -e "\n*** DATE:" `date` " ***"; echo "********************************************" ping -c5 $1; done Kiedy uruchamiam go z terminala, nie jestem w stanie …
Często zaczynam czytać ogromny plik, a potem po pewnym czasie chcę wyjść, ale od naciśnięcia przycisku Ctrl+ Cdo zatrzymania programu występuje opóźnienie . Czy jest szansa na skrócenie opóźnienia przez kilkakrotne naciśnięcie klawisza Ctrl+ C? A może marnuję naciśnięcia klawiszy?
Zastanawiam się nad bezpieczeństwem sygnałów UNIX. SIGKILLzabije proces. Co się stanie, gdy proces użytkownika innego niż root wyśle sygnał do procesu użytkownika root? Czy proces nadal wykonuje procedurę obsługi sygnału? Śledzę przyjętą odpowiedź (gollum) i piszę man capabilites, i znajduję wiele rzeczy na temat jądra Linuksa. Od man capabilities: NAME …
Oprócz najbardziej gwałtownych kill -9(SIGKILL), nie do końca rozumiem różnicę między 3 innymi powszechnymi sygnałami ( tutaj ) -HUP(1), -INT(2) i -TERM(15). W jakich scenariuszach jeden działałby, a drugi nie? Ogólnie kiedy -9( -KILL) zawodzi? Wydaje mi się, że proszą ten proces, aby zakończył się z gracją , bez oszczędzania …
Czy istnieje sposób, aby dowiedzieć się, co zrobi program po otrzymaniu sygnału zabicia HUP? Bez prostego uruchamiania polecenia c: D Na przykład killall -HUP pppdzrestartuje pppd killall -HUP firefoxpo prostu zabije Firefoxa
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.