Что вы подразумеваете под «спящим»?
Если вы имеете в виду состояние S (прерывистый сон), это означает, что процесс ожидает ввода-вывода. В настоящее время процесс выполняет системный вызов блокировки. Вы не можете заставить его «проснуться» обычным способом - что бы он тогда делал? Он проснется, когда операция ввода или вывода, которую он хочет выполнить, станет возможной (например, когда данные доступны для чтения, когда канал записи станет готовым и т. Д.).
Если вы имеете в виду состояние T (остановлено), это означает, что процесс в настоящее время приостановлен. Вы можете отменить приостановку, отправив ему сигнал CONT (SIGCONT): kill -CONT PID
.
Процессы не переходят в режим сна случайным образом. Они спят, когда им нечего делать. Они приостанавливаются, если получают сигнал, который их останавливает: SIGTSTP, SIGSTOP, SIGTTIN, SIGTTOU. Эти последние два сигнала отправляются терминальным интерфейсом в ядре, когда фоновый процесс пытается прочитать с терминала (или записать в терминал); если вы этого не знаете, вы можете подумать, что процесс останавливается случайным образом. Если это произошло, вам нужно вывести это на передний план; запустите fg
в оболочке, из которой вы запустили это фоновое задание, с правильным аргументом, чтобы указать задание, частью которого является процесс, например fg% 3
.
Файлы stat *
в Linux / proc
доступны только для чтения, и я не знаю, когда они были доступны для записи. Не знаю, что вы могли бы там написать. Данные, сообщаемые этим файлом, являются данными, управляемыми ядром, и некоторые из них могут быть изменены более или менее непосредственно процессом, но это не то, что вы можете изменить извне. Например, вы не можете волшебным образом сделать процесс запускаемым.
/usr/bin/node
кажется исполняемым файлом node, установленным менеджером пакетов, и слишком старым(v4.2.6
)для parsoid
.
Здесь работала команда node
, потому что эта команда была связана с /root/.nvm/versions/node/v6.7.0/bin/node
, установленной nvm
с запущенным v6.7.0
.
Чтобы исправить это, создайте символическую ссылку на вашу текущую версию nvm (, чтобы можно было легко настроить ее при обновлении ), и используйте этот путь в файле .service
.
Примечание:Я бы не рекомендовал удалять симлинк или файл /usr/bin/node
для того, чтобы разместить там симлинк с таким именем, так как это может помешать установке "стандартной" ноды.