Как получить список программ, работающих с nohup
Я обращаюсь к серверу под управлением CentOS (дистрибутив linux) с SSH-соединением. Поскольку я не всегда могу оставаться в системе, я использую "nohup [command] &" для запуска своих программ.
Я не мог найти, как получить список всех программ, которые я начал использовать nohup. "работа" работает только до того, как я выхожу из системы. После этого, если я снова войду в систему, команда jobs ничего мне не покажет, но я вижу в своих файлах журнала, что мои программы все еще работают.
есть ли способ получить список все программы, которые я начал использовать "nohup и" ?
5 ответов
когда я начал с $ nohup storm dev-zookeper
,
METHOD1: используя jobs
,
prayagupd@prayagupd:/home/vmfest# jobs -l
[1]+ 11129 Running nohup ~/bin/storm/bin/storm dev-zookeeper &
метода Method2 : используя .
$ ps xw
PID TTY STAT TIME COMMAND
1031 tty1 Ss+ 0:00 /sbin/getty -8 38400 tty1
10582 ? S 0:01 [kworker/0:0]
10826 ? Sl 0:18 java -server -Dstorm.options= -Dstorm.home=/root/bin/storm -Djava.library.path=/usr/local/lib:/opt/local/lib:/usr/lib -Dsto
10853 ? Ss 0:00 sshd: vmfest [priv]
столбец телетайп с ?
=>nohup
запущенные программы.
описание
- столбец TTY = терминал, связанный с процессом
- столбец STAT = состояние процесса
- S = прерывистый сон (ожидание завершения события)
- l = многопоточен (используя CLONE_THREAD, как и nptl pthreads)
ссылка
$ man ps
# после поиска /PROCESS STATE CODES
вместо nohup
, вы должны использовать screen
. Он достигает того же результата - ваши команды работают "отдельно". Тем не менее, вы можете возобновить сеансы экрана и вернуться в свой "скрытый" терминал и увидеть недавний прогресс внутри этого терминала.
screen
есть много вариантов. Чаще всего я использую такие:
чтобы начать первый сеанс экрана или взять на себя последний отдельный:
screen -Rd
для отсоединения от текущей сессии: Ctrl+ACtrl+D
вы также можете запустить несколько экранов - читайте документы.
если у вас есть стандартный вывод перенаправить на "nohup.out " просто посмотрите, кто использует этот файл
lsof | grep nohup.out
вы не можете точно получить список команд началось с nohup
но вы можете увидеть их вместе с другими процессами с помощью команды ps x
. Команды начинались с nohup
будет иметь знак вопроса в столбце TTY.
вы также можете просто использовать верхнюю команду, и Ваш идентификатор пользователя будет указывать выполняемые задания и их время.
$ top
(это покажет все запущенные рабочих мест)
$ top -U [user ID]
(Это покажет задания, которые специфичны для идентификатора пользователя)