Wpis z mikrobloga

#raspberrypi #raspbian #linux #programowanie
Mój program łączy się z portem COM na Raspbianie i tworzy plik /var/lock/LCK..ttyS0. W razie niepoprawnego zamknięcia programu (a tak go wyłączam, po prostu "poweroff" przez SSH) ten plik zostaje i po resecie już się nie łączy z portem (a program jest w autostarcie), bo " Permission error while locking the device (ttyS0)". Nie bardzo mogę usuwać ten plik z programu, bo nie chcę mu dawać praw administratora. Czy te locki w /var/lock nie powinny znikać po zamknięciu systemu? Jak zrobić żeby to robiły?
  • 23
który klient może źle wyłączyć i co wtedy


@s_theCapt: sigkill i tak nigdy nie złapiesz, ten lock domyślnie powinien się tworzyć w /run/lock i po restarcie powinien zniknąć a w /var/lock jest symlink, coś masz zepsute, przy poprawnym wyjściu z aplikacji powinieneś tylko to złapać i zamknąć port.
daj wyniki poleceń
@l1ght: ale ja nie będę poprawnie wychodził z tej aplikacji, to jest problem (a raczej nie mogę tego zagwarantować, bo nie ja będę tego używał)

drwxrwxrwt 3 root root 100 cze 18 13:36 /run/lock
@s_theCapt: źle Ci napisałem

ls -al /var/lock
i
ls -al /run/lock
i ps -aux

zrób to jak odpalisz appke i jak zrestartujesz system i najlepiej wrzuć na pastebina czy cuś
@s_theCapt: właścicielem pliku jest user który tworzy ten plik. Rozumiem że ty ten plik tworzysz w aplikacji a nie sam system to robi tak? Jeśli tak, to wypadało by po sobie posprzątać. Dziwi mnie fakt że po restarcie systemu pliki są nadal trzymane w /run/lock
go usunę przed próbą łączenia i tyle


@s_theCapt: co jeśli plik będzie prawidłowo utworzony i port rzeczywiście będzie zablokowany?
To niezłe działanie u klienta xD
@l1ght: no ale go tworzy tylko moja aplikacja, tak? no po autostarcie po reboocie, mam pewność że to nie jest potrzebny plik. a ten raspberry służy tylko do odpalania tej jednej appki.
@l1ght: ale nie no, pytam o radę, fajnie by było to zrobić inaczej, ale jeżeli zakładam, że ten raspberry może być nawet z prądu ot tak wyłączony i wtedy ma przestań działać? ;c
@l1ght: no ale on jest tworzony automatycznie przez biliotekę której używam, nie zmienię tego... a nie będzie automatycznie usuwany, bo niestety ta appka nie będzie zamykana poprawnie często na 100%. I też uważam, że po resecie powinno znikać, ale jak widzisz... nie dzieje się tak. ;c