pfctl -s rules -vv
выведет что-то вроде:
@71 pass out quick on igb1.100 inet from 209.51.186.0/26 to 192.168.0.0/23 no state
[ Evaluations: 1064257 Packets: 354523 Bytes: 149293726 States: 0 ]
[ Inserted: uid 0 pid 1053 State Creations: 0 ]
@71 — это номер правила
Создайте службу , которая запускает этот демон. В службах systemd вы можете использовать параметр Restart=
для автоматического повторного запуска службы при выходе из нее.
[Service]
ExecStart=-/usr/bin/pppd nodetach /dev/ttyUSB0 57600 -crtscts
Restart=always
RestartSec=0
Ваша ситуация на самом деле очень похожа на getty@.service
, только с pppd вместо getty, который обычно ожидает приглашения для входа в систему на указанном tty. Так что может быть полезно взглянуть на этот модуль для вдохновения — например, вы можете захотеть сделать этот шаблонный модуль (с именем pppd@
и использовать /dev/%i
в качестве пути к устройству ); вы можете включить Conflicts=getty@%i.service
в раздел [Unit]; и так далее.
(Действительно, в среде 'sysvinit' я бы предложил создать запись /etc/inittab для pppd, чтобы он автоматически перезапускался программой init, как и getty.)