Общий способ сделать это для любого типа файловых систем - bind
mount.
В этом примере используется /tmp
. Для этого на /sys
вы можете заменить /tmp/sysall
на /sys
:
mkdir /tmp/sysall
mkdir -p /tmp/mychroot/sys/class/gpio
mount -t sysfs sysfs /tmp/sysall/
mount --bind /tmp/sysall/class/gpio /tmp/mychroot/sys/class/gpio
umount /tmp/sysall/
systemd
, вероятно, каким-то образом "потерял контроль" над службой. Это может произойти, если, например, в примере путь к исполняемому файлу изменится. Однако, если процесс возрождается даже после того, как был убит, либо:
systemd
все еще контролирует программу с помощью (другой) службы автоматического перезапуска. systemd
и воспроизводит процесс. Если мы посмотрим на ваш вывод ps -eaf
...
kibana 20185 1 0 04:28 ? 00:00:03 /opt/kibana/bin/../node/bin/node /opt/kibana/bin/../src/cli
Это даст нам некоторые важные детали:
20185
. 1
. Поскольку PPID равен 1
, мы можем с уверенностью предположить, что здесь ответственным является systemd
. Итак, эта команда должна сообщить вам, какой модуль контролирует процесс ...
$ systemctl status 20185
С этого момента вы можете остановить / убить программу.