Если вы запускаете какой-то процесс путем запуска программы из командной строки, то обычно процесс запускается, как говорят, «на переднем плане». Это значит, что процесс «привязывается» к терминалу, с которого он запущен, воспринимая ввод с этого терминала и осуществляя на него вывод. Но можно запустить процесс в фоновом режиме, когда он не связан с терминалом. Для запуска процесса в фоновом режиме в конце командной строки запуска программы добавляют символ отбой», по которому некоторые из порожденных ею процессов могут завершиться, что не всегда желательно. Если вы хотите запустить в фоновом режиме программу, которая должна выполняться и после вашего выхода из оболочки, то ее нужно запускать с помощью утилиты nohup. Делается это так:
Запускаемый таким образом процесс будет игнорировать посылаемые ему сигналы (если это возможно). Стандартный выходной поток и стандартный поток ошибок при таком запуске команд перенаправляются в файл nohup.out или $HOME/nohup.out.
Как на андроид отключить приложения в фоновом режиме андроид
Команда nohup имеет побочный эффект, заключающийся в том, что значение nice для запускаемого процесса увеличивается на 5, т. е. процесс выполняется с более низким приоритетом.
Порядок выполнения работы.
- Зарегистрироваться в системе как root в первом терминале.
- Во втором терминале зарегистрироваться как user.
- Вывести текущее состояние процессов на экран.
- Перейти в первый терминал и сделать тоже, что и в пункте 3.
- Сохранить текущий список процессов в файл proc.
- Просмотреть процессы пользователя user, находясь в первом терминале.
- Зарегистрироваться в третьем терминале под своими пользователями.
- Запустить любые процессы от своего пользователя.
- Перейти во второй терминал и попытаться завершить процессы, запущенные в третьем терминале.
- Завершить процессы вашего пользователя, предварительно перейдя в окно первого терминала.
- Просмотреть текущие процессы всех пользователей.
- Завершить все процессы пользователя user.
- Просмотреть результаты, перейдя во второй и третий терминал.
- Вернуться в первый терминал.
- Показать работу преподавателю.
- Осуществить выход из системы.
Контрольные вопросы.
- Как запустить несколько процессов в одной строке?
- Как просмотреть все процессы одного пользователя, если в системе зарегистрировано несколько пользователей (мы зарегистрированы в системе как root)?
- Как идентифицировать порождённые процессы в системе?
- Как прекратить порождённый процесс?
- Как прекратить процесс, запущенный другим пользователем?
Рекомендуемая литература
1. Таненбаум Э. Современные операционные системы. 2-е изд. -СПб.:Питер, 2002 — 1040 с.
2. Фигурнов В.Э. ШМ PC для пользователя. Краткий курс. — М.:Инфра-М, 2000. — 480 с.
3. Берлинер Э.М. и др. Windows 2000 professional (русская и английская версия). М.:Компьютер Пресс, 2000 — 360 с.
Как принудительно отключить фоновые приложения в Windows 10 (версии 1803)
4. Андреев А.Г. MS Windows 2000 Professional русская версия/ под ред. А.Н.Чекмарева и Д.Б. Вишнякова. -СПб.:БХВ — Петербург, 2002. — 752 с.
5. Андреев А.Г. и др. MS Windows 2000: Server и Professional. Русские версии.-С-Пб.:ВНУ, 2000-1056 с.
6. Кокарева О. Реестр Windows 2000. С-Пб.:ВНУ, 2000 — 352 с.
7. Red Hat Linux. Секреты профессионала. М.: Вильяме, 2004 — 1056 с.
8. Степаненко О.С. Установка и настройка Windows XP. Само- учитель.- М: Изд. дом «Вильямс», 2005- 325с.
9. Каплан А., Нильсен М.Ш. Windows 2000 изнутри. М.:ДМК, 2000 — 400 с.
10.Симонович СВ. и др. Windows: лаборатория мастера. М.: АСТ-ПРЕСС, 2000 — 656 с.
10. Linux 5.2. Энциклопедия пользователя: Пер. с англ. / Тим Паркер — К.: «ДиаСофт», 1999. — 688 с.
11. Microsoft Windows 2000 Server. Справочник администратора. М.: Эконом. Серия, 2003.
12. В. Столингс. Операционные системы. М.: Вильяме, 2004. — 1040 с.
13.Microsoft Windows ХР. Колосков П. В. и др. М.: Наука и техника, 2005. — 256 с. 14. Запускаем Linux. Уэлш М. и др. М.: Символ-Плюс, 2004. — 730 с.
Содержание
Источник: infopedia.su
Можно ли запустить выполнение команд bash в фоновом режиме?
Нет ничего более раздражающего, чем запустить команду в своем терминале и заставить ее работать в течение минут, а иногда и часов, и не иметь возможности снова использовать свой терминал. Конечно, вы можете использовать вкладки, но это неуклюжее решение, и оно не всегда оптимально, потому что вы можете хотеть видеть обновления во время работы. Здесь мы покажем вам несколько различных способов запуска команд bash в фоновом режиме в Linux.
Завершите команду с помощью (амперсанд) в конце простой способ сделать это. Таким образом, вы можете выполнить команду в фоновом режиме и продолжать использовать свой терминал во время его работы. Однако у этого есть уловка. Использование он просто отодвигает его на задний план. Это означает, что пока вы пытаетесь использовать терминал, все, что команда хочет отправить STDOUT или STDERR все еще будет напечатано, что может отвлекать.
COMMAND хорошо, если вам нужно немного оттолкнуть что-то, но не ожидайте, что это будет продолжаться вечно.
отодвигает ее на задний план и поддерживает ее выполнение, пока открыто окно терминала. Однако, если вы хотите, чтобы эта команда работала постоянно, даже после завершения сеанса терминала, вы можете использовать эту команду disown .
Чтобы использовать этот метод, начните с добавления
Как упоминалось выше, использование После команды с /dev/null
Добавление >/dev/null и /dev/null
В отличие от предыдущих команд, использование nohup позволяет запускать команду в фоновом режиме и продолжать ее выполнение. Как? nohup обходит сигнал HUP (сигнал зависания), что позволяет запускать команды в фоновом режиме, даже когда терминал выключен. Объедините эту команду с перенаправлением на «/dev/null» (чтобы nohup не создавал файл nohup.out), и все перейдет в фон с помощью одной команды.
nohup COMMAND /dev/null https://ip-calculator.ru/blog/ask/mozhno-li-zapustit-vypolnenie-komand-bash-v-fonovom-rezhime/» target=»_blank»]ip-calculator.ru[/mask_link]
Перевод процесса в фоновый режим
Если вы запускаете какой-то процесс путем запуска программы из командной строки, то обычно процесс запускается, как говорят, «на переднем плане». Это значит, что процесс «привязывается» к терминалу, с которого он запущен, воспринимая ввод с этого терминала и осуществляя на него вывод. Но можно запустить процесс в фоновом режиме, когда он не связан с терминалом. Для запуска процесса в фоновом режиме в конце командной строки запуска программы добавляют символ отбой», по которому некоторые из порожденных ею процессов могут завершиться, что не всегда желательно. Если вы хотите запустить в фоновом режиме программу, которая должна выполняться и после вашего выхода из оболочки, то ее нужно запускать с помощью утилиты nohup. Делается это так:
Запускаемый таким образом процесс будет игнорировать посылаемые ему сигналы (если это возможно). Стандартный выходной поток и стандартный поток ошибок при таком запуске команд перенаправляются в файл nohup.out или $HOME/nohup.out.
Команда nohup имеет побочный эффект, заключающийся в том, что значение nice для запускаемого процесса увеличивается на 5, т. е. процесс выполняется с более низким приоритетом.
Порядок выполнения работы.
- Зарегистрироваться в системе как root в первом терминале.
- Во втором терминале зарегистрироваться как user.
- Вывести текущее состояние процессов на экран.
- Перейти в первый терминал и сделать тоже, что и в пункте 3.
- Сохранить текущий список процессов в файл proc.
- Просмотреть процессы пользователя user, находясь в первом терминале.
- Зарегистрироваться в третьем терминале под своими пользователями.
- Запустить любые процессы от своего пользователя.
- Перейти во второй терминал и попытаться завершить процессы, запущенные в третьем терминале.
- Завершить процессы вашего пользователя, предварительно перейдя в окно первого терминала.
- Просмотреть текущие процессы всех пользователей.
- Завершить все процессы пользователя user.
- Просмотреть результаты, перейдя во второй и третий терминал.
- Вернуться в первый терминал.
- Показать работу преподавателю.
- Осуществить выход из системы.
- Как запустить несколько процессов в одной строке?
- Как просмотреть все процессы одного пользователя, если в системе зарегистрировано несколько пользователей (мы зарегистрированы в системе как root)?
- Как идентифицировать порождённые процессы в системе?
- Как прекратить порождённый процесс?
- Как прекратить процесс, запущенный другим пользователем?
- Таненбаум Э. Современные операционные системы. 2-е изд. -СПб.:Питер, 2002 — 1040 с.
- Фигурнов В.Э. ШМ PC для пользователя. Краткий курс. — М.:Инфра-М, 2000. — 480 с.
- Берлинер Э.М. и др. Windows 2000 professional (русская и английская версия). М.:Компьютер Пресс, 2000 — 360 с.
- Андреев А.Г. MS Windows 2000 Professional русская версия/ под ред. А.Н.Чекмарева и Д.Б. Вишнякова. -СПб.:БХВ — Петербург, 2002. — 752 с.
- Андреев А.Г. и др. MS Windows 2000: Server и Professional. Русские версии.-С-Пб.:ВНУ, 2000-1056 с.
- Кокарева О. Реестр Windows 2000. С-Пб.:ВНУ, 2000 — 352 с.
- Red Hat Linux. Секреты профессионала. М.: Вильяме, 2004 — 1056 с.
- Степаненко О.С. Установка и настройка Windows XP. Само- учитель.- М: Изд. дом «Вильямс», 2005- 325с.
- Каплан А., Нильсен М.Ш. Windows 2000 изнутри. М.:ДМК, 2000 — 400 с.
- Симонович СВ. и др. Windows: лаборатория мастера. М.: АСТ-ПРЕСС, 2000 — 656 с.
- Linux 5.2. Энциклопедия пользователя: Пер. с англ. / Тим Паркер — К.: «ДиаСофт», 1999. — 688 с.
- Microsoft Windows 2000 Server. Справочник администратора. М.: Эконом. Серия, 2003.
- В. Столингс. Операционные системы. М.: Вильяме, 2004. — 1040 с.
Источник: studfile.net