Tag: Сигналы

убить родителя и ребенка, потому что бесконечный цикл

У меня есть процесс, выполняемый cron каждый час. Такой процесс вызывает другой (не источник), то есть: ./childProc.sh (Не уверен, что эта деталь важна) Из-за бесконечного цикла в дочернем процессе (который я все еще пытаюсь выяснить, почему это не заканчивается), я должен убить все связанные процессы, прежде чем запускать его снова. Я нашел этот пост и […]

Могу ли я сказать, приостановлена ​​ли `ssh` клиентская сторона?

Могу ли я определить, приостановлен ли клиент ssh ? Предположим, я бегу: ssh server command и в другом окне killall -STOP ssh Может ли command каким-то образом обнаружить это? Я бы предположил, что это может обнаружить его, отправив лоты данных stdout / stderr, и если это блокирует, то это будет означать, что клиентская программа была […]

служба убита при ssh hangup

Если я использую ssh для запуска некоторой команды в фоновом режиме, эта команда будет убита, как только ssh зависает: ssh localhost -t "bash -c '(for i in 1 2 3 4 5; do sleep \$i;done)&'"; ps x|grep sleep Это не покажет какой-либо запущенный процесс сна. (Но это было бы, если бы я сделал ps внутри […]

Программа не запускается в функции, вызываемой сигнальной ловушкой

У меня есть сценарий Bash, который требует, чтобы некоторые команды очистки выполнялись, когда он закрывался в консоли. В основном очистка – это команда перезапуска в моей программе-демоне Python (давайте назовем это P ), которая останавливает текущий процесс и запускает новый. Сценарий Bash используется для мониторинга приложения-демона Python. Однако проблема в том, что по какой-то причине […]

Захват пользовательского ввода без необходимости ввода «Ввод»

У меня есть следующая задача: Сценарии запрашивают у пользователя параметры и, в конце концов, запускают определенную команду на основе этих параметров. (Представьте сценарий, который сначала запрашивает имя файла, затем аргументы для chmod ). Проблема в том, что сценарий должен быть прерван определенной последовательностью клавиш (например, когда пользователь набирает halt без ввода, а не, например, Ctrl- […]

Можете ли вы указать отдельную ловушку в подоболочке, созданной с помощью ()?

Я пишу скрипт, который запускает подоболочку, чтобы уйти и сделать некоторую работу. В частном случае сценарий должен сказать подоболочке, чтобы он полностью остановился на том, что он делает, и выйдет рано. Тем не менее, мой psuedo-код ниже, похоже, не работает. Я пытаюсь сделать невозможное? Можно ли определить отдельную ловушку для сигналов в подоболочке? #!/bin/bash function […]

SIGINT обрабатывает различия между bash 3 и 4

У меня есть сценарий, который отлично работает в bash 4.3, но дает мне неожиданное поведение с bash 3.2. Вот упрощенная версия: set -o errexit -o pipefail task() { local name=${1} local duration=${2} trap 'echo "[${SECONDS} secs] ${name}: SIGINT"; exit 255' INT echo "[${SECONDS} secs] ${name}: Running" sleep "${duration}" echo "[${SECONDS} secs] ${name}: Done" } trap […]

Остановить выполнение, когда что-то написано в stderr

У меня проблемы с обработкой ошибок в сценариях bash. Ни одно из решений, которые я видел для обработки ошибок в bash, похоже, пока не работает для этого сценария примера: #!/usr/bin/env bash set -euo pipefail eval $(do_stuff) touch file Выход: ./script.sh: line 4: do_stuff: command not found Но даже тогда он с радостью продолжает и создает […]

Когда система Linux (Ubuntu) отключается, какие процессы отправляются SIGTERM?

Если я начну текущий фоновый процесс A, который запускает дочерний процесс B, и я прошу ОС закрыть, какие процессы отправят SIGTERM? Является ли это как A, так и B, или это просто A (предполагается, что A должен отвечать за закрытие B)?

Отправляется ли процесс отказа от сигналов, отличных от SIGHUP?

Правильно ли, что оболочка может отправлять сигналы только на свои рабочие места, но не может отправлять сигналы процессам, которые не являются его заданиями? disown перемещает работу из списка заданий оболочки. Означает ли это, что отмененный процесс не получит все сигналы (а не только SIGHUP) из его родительской оболочки? Если он все равно получит другие сигналы, […]

Interesting Posts

Как заменить «^» на пробел?

Программа Unix для генератора случайных изображений

изменение разделов слова zsh

Установка PATH и экспорта PATH в ~ / .bash_profile

Как я могу сделать этот демон / init запущенным как пользователь без root?

SELinux domain_auto_trans ()

Проблемы с подключением tun0 для маршрутизации любых и всех подключений из eth0 для этого интерфейса и, если не работает, падение

Узнайте, какой пакет репозитория предоставляет команду

Обновлен до Ubuntu 14.04 – Почтовый сервер отсутствует dovecot-lmtp, даже если он установлен

Есть ли пусковая установка, в которой есть вкладка?

Почему установка 32-битного пакета на 64-битной системе предупреждает об удалении критических 64-битных пакетов?

Как установить отдельные настройки глобальной / пользовательской клавиатуры в LXDE?

как я могу построить драйвер RTL8192SE?

Восстановление с Live USB

Запустить программу с более низкой скоростью процессора?

Linux и Unix - лучшая ОС в мире.