Доброго!
Столкнулся с проблемой на Ubuntu 16.04.1 LTS
Мне нужен доступ к управлению LPT портом, на нем висит несколько светодиодов, ими надо управлять.
1. Устройства для LPT порта никакого не обнаружил:
meuser@serv3:$ ls /dev/lp*
ls: cannot access '/dev/lp*': No such file or directory
meuser@serv3:$ ls /dev/par*
ls: cannot access '/dev/par*': No such file or directory
2. Пытаюсь посмотреть модули:
meuser@serv3:$ lsmod | grep lp
... пусто
meuser@serv3:$ lsmod | grep pa
multipath 16384 0
pata_acpi 16384 0
pata_via 16384 3
3. Смотрю устройства
sudo lspci -vv | grep parallel
... пусто
sudo dmesg | grep parallel
... пусто
sudo lspci -vv | grep lp
... пусто
sudo dmesg | grep lp0
... пусто
sudo lspci -vv | grep 378
... пусто
sudo dmesg | grep 378
[ 0.094215] pnp 00:0b: [io 0x0378-0x037f]
... это все что есть
Однако, вот эта программа на С, позволяет работать с портом, но только от имени супервользователя
#include <stdio.h>
#include <stdlib.h>
#include <sys/io.h>
main(int argc, char **argv)
{
if (ioperm(0x378,1,1))
{
printf("Couldn't get the port at %x\n", 0x378);
exit(1);
}
outb(255, 0x378); // светодиоды зажигаются
}
Мне надо чтобы эта программа могла работать с портом под обычным пользователем.
Я добавлял пользователя в группу lp но это ничего не дает
meuser@serv3:$ groups
meuser adm lp cdrom sudo dip plugdev lxd lpadmin sambashare
Пользователь в группе, но доступа по прежнему нет.
Светодиоды загораются, но только под суперпользователем.
Помогите разобраться.