LinuxForum.Fans
Тема

Как разрешить пользователю работать с компортами?

Автор: juvf 13 сообщений 3506 просмотров
#145939

Есть программа которая работает с некоторым устройством по компорту. При выполнении этой программы от пользователя не возможно установить связь по ком порту. Нед доступа. Приходиться сначало под рутом устанавливать соответствующие права для порта, например для /dev/ttyM7, потом только можно пользователю открывать компорт. Можно ли настроить Linux так, чтоб все ком компорты всегда были открыты для записи и чтения для всех пользователей?

#145940
juvf написал:
Можно ли настроить Linux так, чтоб все ком компорты всегда были открыты для записи и чтения для всех пользователей?

да. включите пользователя в группу.
[console]$ ls -l /dev/ttyS0
crw-rw---- 1 root dialout 4, 64 Апр 18 17:09 /dev/ttyS0
[/console]
man usermod

#145941

ls -l /dev/ttyM7
посмотрите к какой группе принадлежит девайс и добавьте своего юзера в эту группу

#145984

ну толи у меня руки кривые, в группу добавить не могу, толи что-то не так....

text
ls -l /dev/ttyM7
crw-r--r--    1     root       root       30,     7 Mar 30 15:37  /dev/ttyM7

в файле /etc/group добавил

text
root:x:0:root,juvf

не помогает. может я пользователя juvf не так в группу добавляю?

#146018

udev используете? и какой дистр? тогда создайте группу для com-порта и потом что-то вроде: "chown root:dialout /dev/ttyM7 && chmod g+w /dev/ttyM7" и себя в эту группу...
если используете udev, то это будет до перезагрузки... и надо в правилах создания девайсов искать, собака где-то там будет зарыта...

Да, и вы уверены, что это com-порт? они обычно /dev/ttyS? и номера у них 4:64,65 итд
ЗЫ: добавлять юзера в группу root по крайней мере странно

#146034

что-то вроде: "chown root:dialout /dev/ttyM7 && chmod g+w /dev/ttyM7"

спасибо, помогло. Проблема решена.



ps это встраеваемый идустриальный комп MOXA UC-8410. Линукс в нем изкаропки, не знаю какой дистрибутив.

Да, /dev/ttyM7 это компорт.

#146048

на будущее: указывайте, что речь идёт о необычной железяке/софте

#146049
juvf написал:
Проблема решена.

я надеюсь вы себя вычеркнули из группы root? если нет, то у вас - РЕШЕТО.

#146079
drBatty написал:
[quote=juvf]Проблема решена.

я надеюсь вы себя вычеркнули из группы root? если нет, то у вас - РЕШЕТО.[/quote]
вычеркнул. Но в MOXA практически все файлы с правами root:root. Вычеркнул себя из рута.... мс перестал работать. Пришлось менять группу на wheel всяким прогам типа мс и либам /usr/local/lib и т.п. Иначе ни одна прога под юзером не работает.

до кучи еще вопрос...... пишу под пользователем команду su. Просит пароль. Ввожу. в ответ

text
su: cannot  set groups: Operation not permitted

пользователь вхож в группы wheel, users и dialout. почему su не работает? Забыл, как позволить пользователю su использовать.

#146110
juvf написал:
вычеркнул. Но в MOXA практически все файлы с правами root:root. Вычеркнул себя из рута.... мс перестал работать. Пришлось менять группу на wheel всяким прогам типа мс и либам /usr/local/lib и т.п. Иначе ни одна прога под юзером не работает.

это везде так, но практически на все программы у всех должны быть права на чтение/запуск... покажите что ли ls -l /bin для разнообразия

#146157
juvf написал:
Пришлось менять группу на wheel всяким прогам типа мс и либам /usr/local/lib и т.п. Иначе ни одна прога под юзером не работает.

надо было не группу менять в этом случае, а права. Т.е. дать кому угодно право исполнения, и только руту - модификации.

juvf написал:
cannot set groups

вот этого - не знаю. от дистрибутива зависит сильно. А я вашего не видел.

Fat-Zer написал:
это везде так, но практически на все программы у всех должны быть права на чтение/запуск

для программ достаточно только запуска. для скриптов необходимо чтение и запуск.

#146422

надо было не группу менять в этом случае, а права.
Да, наверно я поторопился
#146501
juvf написал:
Да, наверно я поторопился

всегда можно найти и поменять

man find написал:
-gid n File's numeric group ID is n.

-group gname
File belongs to group gname (numeric group ID allowed).
man chgrp написал:
NAME
chgrp - change group ownership

SYNOPSIS
chgrp [OPTION]... GROUP FILE...
chgrp [OPTION]... --reference=RFILE FILE...

DESCRIPTION
Change the group of each FILE to GROUP. With --reference, change the group of each FILE to that of RFILE.
Войдите или зарегистрируйтесь, чтобы ответить.