Как работает FireFox на виртуальной машине, которая не имеет отображения?

Я использую виртуальную машину Red Hat, доступную только удаленно. Однако, когда я использую top команду, один из отображаемых процессов, занимающих большую часть памяти, – firefox, расположенный в /usr/lib64/firefox-3.0.18/firefox .

Как можно запустить такой процесс без отображения, и может ли он быть фактически использован некоторыми процессами? Есть ли способ проверить, какие процессы его используют?

  • Как я могу получить статистику о процессорах, похожих на процессор, из командной оболочки?
  • Как правильно запустить команду «сверху» через SSH?
  • верхняя команда на многоядерном процессоре
  • Почему верхний отчет указывает на неправильное использование ЦП?
  • Извлечь текст из одной итерации сверху
  • верхний не работает
  • Как я могу определить, какой процесс связан с IO?
  • htop процессорное время против верхнего процессорного времени
  • 2 Solutions collect form web for “Как работает FireFox на виртуальной машине, которая не имеет отображения?”

    Firefox нуждается в X-дисплее. Это не обязательно должен быть физический дисплей на машине, где он работает: это может быть удаленный или виртуальный дисплей.

    Если вы хотите узнать, где он отображается, посмотрите на переменную среды DISPLAY в процессе Firefox. Обратите внимание, что вам нужно быть root (или, точнее, иметь права пользователя, запускающие процесс firefox).

     </proc/$pid/environ grep -z '^DISPLAY=' 

    Если значение имеет вид :NUMBER (начиная с двоеточия), X-сервер является локальным. Будет сокет под названием /tmp/.X11-unix/XNUMBER , например /tmp/.X11-unix/X42 для DISPLAY=:42 . Если дисплей имеет вид :NUMBER1.NUMBER2 , игнорируйте часть .NUMBER2 . Затем запустите lsof /tmp/.X11-unix/X42 ; одним из процессов, который имеет этот сокет, является X-сервер. Скорее всего, это виртуальный сервер X- фреймберов Xbfb , или он может быть сервером для удаленной среды отображения, такой как VNC или NX .

    Если значение имеет host:NUMBER формы host:NUMBER , то X-дисплей является удаленным. X-сервер – это процесс, прослушивающий порт 6000 + NUMBER. Запустить netstat -plnt | awk '$4 ~ ":" (6000 + NUMBER) "$"' {print $7} netstat -plnt | awk '$4 ~ ":" (6000 + NUMBER) "$"' {print $7} чтобы показать PID процесса, который прослушивает этот порт. Вероятно, это будет ssh-соединение.

    1. Поскольку X11 – это система Window, которая позволяет использовать сервер приложений для отличия от используемого сервера X, необязательно иметь локально установленный экран.

    2. Лучше всего проверить, кто является родителем запускающего firefox, т. Е. Проверять PID родителя на выходе ps (вам, возможно, придется посмотреть и на его родителя …). BTW: Если у вас есть команда, подобная ptree , это очень помогает.

    3. Показателем Annother будет идентификатор пользователя, который использует этот процесс.

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