Вопросы с тегом «signals»

12
SIGINFO в GNU Linux (Arch Linux) отсутствует

Я занимаюсь разработкой приложения и хочу, чтобы оно выводило статистику времени выполнения на консоль по требованию. killи сигналы сразу же пришли мне в голову. Чтение сигналов Unix в Wiki, SIGINFOпохоже, путь, потому что: Он предназначен для этих целей Не завершает процесс, если обработчик...

11
stderr over ssh -t

Это отправляет вывод в STDERR, но не распространяется Ctrl+ C(т.е. Ctrl+ Cубьет, sshно не удаленный sleep): $ ssh localhost 'sleep 100;echo foo ">&2"' Это распространяется Ctrl+ C(т.е. Ctrl+ Cубьет sshи удаленный sleep), но отправляет STDERR в STDOUT: $ ssh -tt localhost 'sleep 100;echo foo...

11
Bash скрипт не видит SIGHUP?

У меня есть следующий скрипт: #!/bin/bash echo "We are $$" trap "echo HUP" SIGHUP cat # wait indefinitely Когда я отправляю SIGHUP(использую kill -HUP pid) ничего не происходит. Если я немного изменю сценарий: #!/bin/bash echo "We are $$" trap "kill -- -$BASHPID" EXIT # add this trap "echo HUP"...

11
Почему есть только два пользовательских сигнала?

В списке сигналов, определенных в системе Linux, есть два сигнала, указанные как сигналы, определенные пользователем ( SIGUSR1и SIGUSR2). Другие сигналы будут подняты или перехвачены в определенных ситуациях, но SIGUSR оставлены для использования пользовательским приложением. Так почему только два...

11
Выполните команду или функцию, когда SIGINT или SIGTERM отправляются самому родительскому сценарию, а не дочерним процессам

Допустим, у меня есть это script.sh #!/bin/bash exit_script() { echo "Printing something special!" echo "Maybe executing other commands!" kill -- -$$ # Sends SIGTERM to child/sub processes } echo "Some other text" #other commands here sleep infinity Я хочу script.shвыполнить функцию...

11
Почему зомби ждет своего ребенка?

Я копаюсь в разных источниках, но не могу найти хорошее описание анатомии пожинающих детей. Это простой случай того, что я хотел бы понять. $ cat <( sleep 100 & wait ) & [1] 14247 $ ps ax -O pgid | grep $$ 12126 12126 S pts/17 00:00:00 bash 14248 12126 S pts/17 00:00:00 bash 14249 12126...

11
Почему я не могу убить тайм-аут, вызванный из скрипта Bash, нажатием клавиши?

[Редактировать: это похоже на некоторые другие вопросы, спрашивающие, как убить все порожденные процессы - ответы, похоже, используют pkill. Таким образом, суть моего вопроса может заключаться в следующем: есть ли способ распространения Ctrl-C / Z на все процессы, созданные скриптом?] При вызове...

10
Что должны делать интерактивные оболочки в потерянных группах процессов?

(Повторная публикация в Unix согласно предложению в /programming/13718394/what-should-interactive-shells-do-in-orphaned-process-groups ) Короткий вопрос: что должна делать оболочка, если она находится в потерянной группе процессов, которой не принадлежит tty? Но я рекомендую прочитать длинный...

10
Предотвращение распространения SIGINT в родительский процесс

Рассматривая сценарий, в котором Родительская программа (может быть программа C ++ или Shell Script) выполняет сценарий оболочки Child, когда мы нажимаем Control + C (или любой другой символ, настроенный как символ INTR) во время выполнения сценария Child Shell Script, SIGINT отправляется всем...

10
В каких случаях SIGHUP не отправляется на работу при выходе из системы?

Я прочитал ответ от пользователя, который утверждал, что работает foo 2>&1 >& output.log & приведет к fooпродолжению работы, даже когда они выходят из системы. По словам этого пользователя, это даже работало через соединения SSH. Я действительно не верил в это, поскольку у меня...

10
Что происходит при отправке SIGKILL в Zombie Process в Linux?

В Linux, когда дочерний процесс завершается, а его родитель еще не ждал его, он становится процессом зомби. Код выхода дочернего элемента хранится в дескрипторе pid. Если а SIGKILLотправлено ребенку, не должно быть никакого эффекта. Означает ли это, что код выхода не будет изменен SIGKILLили будет...

10
Как я могу перехватить программу, которая возвращает 139 (ошибка сегментации) в bash?

У меня есть скрипт bash, который тестирует некоторые программы, и одна из них возвращается, Segmentation faultпоэтому я попытался добавить ловушку в заголовок моего скрипта: trap "echo 'segfault occured!'" SIGSEGV Это, однако, ничего не сделал. я использовал echo $? сразу после программы, которая...

10
Почему Bash игнорирует SIGTERM?

Иногда, когда я хочу быстро выйти из системы, я делаю это kill -15 -1. Я заметил, что bash игнорирует SIGTERM. Интересно, в чем причина такого поведения bash ? Не слишком UNIX'ы игнорировать SIGTERM без веской причины, не так ли? ОБНОВИТЬ: одинаковый (нет) эффект для всех: $ kill -TERM $$ $ type...

10
Почему цикл while останавливается после приостановки?

Почему при использовании bash и приостановке цикла while цикл возобновляется после возобновления? Краткий пример ниже. $ while true; do echo .; sleep 1; done . . ^Z [1]+ Stopped sleep 1 $ fg sleep 1 $ Я знаком с сигналами, и я предполагаю, что это может быть естественным поведением bash, но я бы...

10
На Ctrl + C убить текущую команду, но продолжить выполнение сценария

У меня есть скрипт bash, в котором я выполняю строку, некоторое время сплю, а затем tail -fмой файл журнала, чтобы убедиться, что виден определенный шаблон, я нажимаю ctrl + c, чтобы выйти из него, tail -fа затем перехожу на следующую строку, пока скрипт bash не завершит выполнение : Вот что я...

9
Может ли сигнал быть проигнорирован (потерян)?

У меня есть приложение, которое связывается с рабочими через сигналы (в частности, SIGUSR1 / SIGUSR2 / SIGSTOP). Могу ли я верить, что что бы ни случилось, каждый сигнал будет доставлен и обработан обработчиком? Что произойдет, если сигналы будут отправлены быстрее, чем невозможно для приложения,...

9
Какие ожидающие сигналы?

Глядя на пределы запущенного процесса, я вижу Max pending signals 15725 Что это? Как я могу определить разумную ценность для занятого обслуживания? Как правило, я не могу найти страницу, которая объясняет, что такое каждый лимит. Некоторые из них довольно понятны (максимальное количество открытых...

9
Ctrl + C не работает в gnome-терминале

На моем Linux-хосте Ctrl+ Cне работает, и я не знаю, как это сделать. Я использую Ubuntu 10.04 с bash 4.1.5 (1) и работаю в Gnome-терминале. Когда я нажимал Ctrl+ Cво время работы этого скрипта, он не вызывал его выхода. #!/bin/bash for i in `seq 500` do ps -e > /dev/null echo $i done...

9
подтвержденный выход с использованием ловушки

Я пытаюсь перехватить Ctrl+Cсигнал, запрашивая подтверждение у пользователя. Ловушка работает нормально. Но как только сигнал попадает в ловушку, он не возвращается к нормальному выполнению. Вместо этого он выходит из сценария. Как заставить его возобновить выполнение, когда пользователь нажимает...

8
Что происходит с запросами к службе, остановленной с помощью SIGSTOP

Если вы отправляете SIGSTOP на веб-сервер, ядро ​​просто говорит сетевому стеку блокировать / спать все соединения с сокетом (ями) этого сервера до тех пор, пока он не будет продолжен? Кажется, что значения времени ожидания сервера не имеют значения; это будет ждать бесконечно, но как? Будут ли...