проверьте рабочий процесс

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

В то время как сам Linux работает точно также в 64-разрядном режиме как в 32-разрядном режиме, большая часть программного обеспечения только для двоичного файла там распределяется в 32-разрядных исполняемых файлах. В то время как 64-разрядный выпуск Ubuntu включает некоторую поддержку 32-разрядных исполняемых файлов, это не включает все библиотеки в 32-разрядную форму. Кроме того, несколько программ запутываются, при попытке скомпилировать или выполнить их в 64-разрядной системе. Рекомендация 32-разрядного выпуска имеет смысл для пользователей, которые могли бы хотеть установить такие сторонние программы и не смогли иметь дело с проблемами.

С другой стороны, 32-разрядный настольный выпуск устанавливает ядро, которое только может управлять немного меньше чем 4 ГБ RAM (если это не изменилось в последних версиях), и может только позволить любому единственному процессу использовать 3 ГБ. Таким образом, если у Вас есть 4 ГБ, или больше RAM, получая 64-разрядный выпуск является хорошей идеей.

Кроме того, как пишет Marco Ceppi, посмотрите, что тот же вопрос на Спрашивает Ubuntu.

1
14.04.2019, 12:24
5 ответов

Запуск myprocess из startmyprocess.sh не называет процесс в честь базового сценария оболочки, именно поэтому Ваш ps -ef | grep startmyprocess1 не возвращает результат.

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

#!/bin/sh
pid=`myprocess`
echo $pid > /tmp/myprocess.pid

или можно запросить $! который содержит последний pid:

#!/bin/sh
myprocess
echo $! > /tmp/myprocess.pid

и запросите/перечислите процесс, он - pid:

ps --pid $PID
1
27.01.2020, 23:29

попробуйте этого.., (не протестированный)

ps -aux | grep "yourprocess"

Например,

ps -aux | grep "httpd"
2
27.01.2020, 23:29

Я думаю, что программное обеспечение, как «топ», сделает отличную работу.

Тип:

top

или

htop
0
27.01.2020, 23:29

Попробуйте следующий подход

ps -ef | grep startmyprocess1.sh

Получить родительский PID для StartMyProcess1.SH , Затем используйте команду ниже, чтобы узнать родительский процесс от IT PID.

ps -ef | grep *PPID*
0
27.01.2020, 23:29

Ответ из @invert многое объяснил, скрипт оболочки просто выполняет внутри него команды. Это значит, что вы не получите имя вашего скрипта оболочки при выводе top или htop, который просто печатает /proc/$PID/cmdline каждой рутины внутри скрипта оболочки.

Помимо использования echo $! после команды получить PID того, что вам нужно. Я хотел бы использовать команду pgrep, когда мне нужно (или pkill, если Вы хотите убить его).

pgrep, pkill - look up или сигнальные процессы, основанные на имени и других атрибутах

pgrep просто смазывает ваши аргументы через /proc/*/cmdline и выводит соответствующие PID. Убийство совместимо с убийством, так что вы можете с легкостью вылечить любую рутину с помощью смолы

.
0
27.01.2020, 23:29

Теги

Похожие вопросы