Назад | Перейти на главную страницу

Как я могу остановить FFMPEG?

Кто-то установил сервер и у него есть FFMPEG, который пытается закодировать видео, и он фактически убил веб-сервер. Я не настраивал его, но у меня есть доступ к sudo, и мне нужно убить FFMPEG, чтобы веб-сервер снова начал отвечать. Как я могу это сделать? Спасибо!

Это сервер Ubuntu 11.10 со стандартным стеком LAMP.

В Linux вы можете использовать sudo killall ffmpeg чтобы убить каждый процесс под названием "ffmpeg" или ps -ef | grep ffmpeg чтобы получить идентификаторы процессов, а затем sudo kill <PID> убить каждого по отдельности.

Если они не умрут, sudo kill -9 <PID> прекратит их.

Если вы не хотите убивать ffmpeg, вы можете приостановить запущенный процесс с помощью sudo kill -s SIGSTOP <PID> и начать их снова с sudo kill -s SIGCONT <PID>.

Остерегайтесь: в Solaris, killall не принимает аргументов. Он просто все убивает.

Не совсем то, о чем вы спрашиваете, но если важно, чтобы задание ffmpeg завершилось, этого может быть достаточно, чтобы изменить его, чтобы дать ему более низкий приоритет, чем процессам веб-сервера.

Запустите что-то вроде ps auxw |grep ffmpeg чтобы получить PID процесса ffmpeg, затем выполните sudo renice -n 19 PID для изменения приоритета процесса, для PID процесса из первой команды.

Эта стратегия может работать немного лучше, чем полное уничтожение ffmpeg. Это даст вам передышку для веб-процессов, но позволит завершить исходную работу. Кроме того, если есть какая-то запущенная очередь заданий, она может снова запустить ffmpeg после того, как обнаружит, что исходное задание не было выполнено успешно.

ps -ef | grep ffmpeg

Обратите внимание на PID различных процессов ffmpeg, затем для каждого PID

kill -9 PID