Automatyczne uruchamianie sakis3g - MetiumIoT/Metium GitHub Wiki

1.1 Automatyczne uruchamianie sakis3g

W celu automatycznego skonfigurowania modemu (Huawei E3276 - "12d1:1506") i nawiązania połączenia należy ustawić odpowiedni serwis.

1.1.1 Serwis (systemd)

Należy stworzyć plik serwisu w /etc/systemd/system/ np. usb-modem.service o poniższej treści:

[Unit]
Description=Start 3G modem using sakis3g
After=network.target

[Service]
Type=forking
User=root
WorkingDirectory=/root/umtskeeper
ExecStart=/bin/bash /root/umtskeeper/sakis3g connect USBINTERFACE="0" APN="internet" OTHER="USBMODEM" USBMODEM="12d1:1506"
ExecReload=/bin/bash /root/umtskeeper/sakis3g reconnect USBINTERFACE="0" APN="internet" OTHER="USBMODEM" USBMODEM="12d1:1506"
ExecStop=/bin/bash /root/umtskeeper/sakis3g disconnect
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=sakis3g
Restart=on-failure
RestartSec=10

[Install]
WantedBy=multi-user.target

W celu aktywacji serwisu należy wykonać poniższe komendy (jako root):

systemctl daemon-reload
systemctl enable usb-modem.service

Następnie aby uruchomić/zrestartować/zatrzymać serwis:

systemctl start usb-modem.service
systemctl restart usb-modem.service
systemctl stop usb-modem.service
1.1.2 Reguła udev

Reguła udev ma na celu uruchomienie powyższgo serwisu po podłączeniu modemu Huawei E3276 (12d1:1506). Może ona zostać umieszczona w pliku /etc/udev/rules.d/98-usb-modem.rules:

ACTION=="add", ATTRS{idVendor}=="12d1", ATTRS{idProduct}=="1506", ENV{SYSTEMD_WANTS}="usb-modem.service"

Następnie w celu przeładowania reguł (nie jest wymagane, powinno zostać automatycznie wykonane):

udevadm control --reload-rules
udevadm trigger