У меня Ubuntu Server 12.04 LTS и на нем я установил gammu. Я использую его для управления мобильным телефоном Nokia 5310 Xpress music.
Теперь, когда я запускаю «gammu - identify», он не работает, говорит, что у меня нет правильных разрешений на устройство, но он работает с sudo gammu --identify
Теперь мое устройство Nokia указано как ttyACM0 в каталоге / dev / ... его разрешения - rw для root и dialout ... Я попытался изменить эти разрешения, чтобы я мог использовать это устройство с gammu без sudo ... Я сделал sudo chmod 777 /dev/ttyACM0, и он изменил разрешения, но все равно это не сработало ...
Я даже пошел и добавил файл в / etc / udev / rules.d / по имени 40-41-descriptive-name.rules, который содержал следующую строку:
SUBSYSTEM=="usb", ATTR{idVendor}=="0421", ATTR{idProduct}=="006b", MODE="0600", OWNER="MyUserName"
, а затем перезапустил udev, но все равно не повезло ...
[d5 ] Я даже сделал sudo chown myusername /dev/ttyACM0 и дал себе право собственности на устройство, но все же мне нужно было использовать sudo, чтобы все было сделано ...btw, если я это делаю lsusb Я получаю следующую информацию: [ ! d6]
BUS 002 Device 003: ID 0421:006b Nokia Mobile Phones
Я пробовал все эти способы изменить права доступа к устройству, чтобы я мог использовать «gammu - identify» вместо sudo gammu --identify, но не повезло.
Как я могу исправить эту дилемму?
Чтобы избежать потенциальных проблем с ситуацией, когда телефон распознается как / dev / ttyACM0, / dev / ttyACM1, ... или / dev / ttyUSB0, / dev / ttyUSB1, ... с последующими циклами соединения / повторного соединения, make symlink для телефона, как /dev/phone - сделайте 99-phone.rules правило udev с:
KERNEL=="ttyUSB*", ATTRS{idVendor}=="0421", ATTRS{idProduct}=="006b", NAME="phone", MODE="0666"
KERNEL=="ttyACM*", ATTRS{idVendor}=="0421", ATTRS{idProduct}=="006b", NAME="phone", MODE="0666"
и сделайте изменение для порта в .gammurc равным port=/dev/phone. Теперь вы можете выпустить команды gammu без sudo.
Конечно, удалите предыдущие правила в вашем 40-41-descriptive-name.rules
Обратите внимание, что в строке 99-phone.rules есть две строки только для обеспечения охвата всех возможных случаев первоначального распознавания телефона (также обратите внимание на MODE="0666" - это даст rw для всех пользователей / групп).
Это подход, который я использую для своего собственного шлюза SMS (с использованием трех телефонов и на основе gammu-smsd) и до сих пор хорошо работает.
Также следует проверить Gammu daemon gammu-smsd и файл конфигурации. Сам демон запускается с правами root, но тогда команда gammu-smsd-inject позволит отправлять sms без прав root, поскольку каталог спула доступен для записи. Также хорошо, что демон будет заботиться о получении сообщения периодически.