У меня была Windows XP на этой коробке, и она не удалась. Думая, что это поврежденная ОС, я попытался переустановить ее, но она не удалась. Но потом я попытался установить Ubuntu и не смог запустить его с USB или с HD.
Провел тест mem и обнаружил, что один из моих 512 МБ стиков (имел 2) не удался. Я удалил плохую и смог установить Ubuntu, но она была вялой.
Я пытался быстро настроить пакетное радио на ураган «Сэнди». Загрузил терминал последовательного порта и смог его использовать, но система продолжала блокироваться. Поэтому установил Xubuntu рядом с ним, планируя на следующий день закончиться, чтобы получить оперативную память для коробки. Включите Xubuntu, и теперь я получаю следующую ошибку с терминалом последовательного порта. :
Cannot open /dev/ttyS0: Permission denied
Я хотел бы иметь возможность использовать терминал последовательного порта или эквивалент с Xubuntu, чтобы я мог использовать свой пакетный терминал kpc3 , подключитесь к com-порту на задней панели моего компьютера.
Есть идеи?
Посмотрел различные форумы и, похоже, это ошибка, связанная с разрешениями. Вот как я обошёл проблему (длинная версия). Вам понадобятся ОБА пакеты cu
и setserial
.
На трех вкладках терминала отслеживается вывод из # tail -f /var/log/messages
. Так мы узнаем, есть ли у нас /dev/ttyUSB0
или нет.
Во второй вкладке просто запустили цикл для ls -l
этого устройства, чтобы увидеть его разрешения и идентификатор группы «dialout». Это критический бит. По какой-то причине ваш пользователь ДОЛЖЕН использовать этот GID для выполнения cu
, поэтому ...
На третьей вкладке, как root, сделал # newgrp dialout
(чтобы соответствовать GID дозвона). Протестировано с # touch /tmp/anything
... выполнение ls -l
с этим файлом показывает, что он создан пользователем root с группой дозвона, поэтому мы готовы ... # cu -l /dev/ttyUSB0
В моем случае мне нужно было снова нажать return, чтобы увидеть ожидаемая подсказка, в других случаях может потребоваться указание скорости.
Устройства tty относятся к группе «dialout», я подозреваю, что вы не являетесь членом этой группы и, следовательно, вам запрещен доступ к / dev / ttyS0, поэтому вам нужно добавить себя в эту группу.
Сначала проверьте, являетесь ли вы членом этой группы:
groups ${USER}
.. здесь будут перечислены все группы, к которым вы принадлежите. Если вы не принадлежите к группе dialout, добавьте себя к ней, например:
sudo gpasswd --add ${USER} dialout
Затем вам нужно выйти и снова войти, чтобы она была эффективной. Тогда посмотрите, решит ли это вашу проблему.
В Ubuntu 18.04 я исправил эту проблему с помощью следующих команд:
sudo usermod -a -G tty $USER
sudo usermod -a -G dialout $USER
И после этого перезагрузите компьютер.
Если у вас все еще есть проблемы, попробуйте отладить с помощью:
strace -ff <COMMAND> > strace.txt 2>&1
И найдите «отказано» в strace.
Вы можете просто использовать эту команду:
sudo adduser $USER dialout
Это добавит текущего пользователя в группу дозвона. Войдите и выйдите, чтобы вступить в силу.
В моем случае проблема все еще существует, даже когда я добавляю своего пользователя в группу, используя:
Так, когда я использую:
sudo gpasswd --add ${USER} dialout
и когда я печатаю: groups
I получил такой результат:
ilyahoo adm cdrom sudo dip plugdev lpadmin sambashare
Но когда я печатаю id -Gn ilyahoo
, результат будет:
ilyahoo adm tty dialout cdrom sudo dip plugdev lpadmin sambashare
Я знаю, что есть проблема, которую я не знаю, что это честно .
Чтобы получить решение, я просто набрал
newgrp ilyahoo
и проблема была исправлена.
Единственное решение, которое работает для меня, это: (каждый раз, когда я загружаю машину)
sudo chmod 666 /dev/ttys0
Это действительно нужно исправить во время установки. Я на 15.10 и попробовал 16.04 LTS, все еще там. Похоже, такое простое исправление.
Более старые версии 10.04LTS не имели этой проблемы.
Вот решение:
Я только что обновил свою операционную систему до Ubuntu 18. Обычно я устанавливал Arduino IDE через веб-сайт Arduino, потому что тот, что был предоставлен через портал Ubuntu Software, всегда был более старой версией, и я хотел новейшие функции и поддержку платы. Однако, поскольку я только что установил новейшую операционную систему, я решил, что в официальном центре программного обеспечения от Ubuntu будет указана новейшая версия IDE, и она это сделала.
Теперь к сочной части! У моего ноутбука и настольного компьютера были одинаковые проблемы с доступом к последовательным портам. я выполнил команду make user из группы удаленного доступа и установил разрешения для последовательного порта, но всегда должен был выходить из системы, а затем снова входить в нее, повторять все заново при каждой перезагрузке! НЕ ВЕСЕЛО!
На этот раз это не сработало. Даже в центре программного обеспечения опция разрешений для программного обеспечения показывает, что последовательный порт "отключен". нет возможности разрешить доступ к порту даже после того, как все разрешения были предоставлены вручную через окно терминала с помощью sudo.
Я решил удалить Arduino IDE из центра программного обеспечения и установить его с веб-сайта, что я и сделал. На этот раз я прочитал установочные файлы, просто чтобы увидеть, упоминает ли он разрешения для последовательного порта или нет, ***** конечно, он сделал! ****** все порты настроены с полными правами доступа, доступ пользователей по всем направлениям. Оказывается, это был ответ. после запуска файла arduino-linux-setup.sh, предоставленного arduino, все проблемы последовательного порта были решены. ниже приводится выдержка из файла arduino-linux-setup.sh
:
echo ""
echo "******* Add User to dialout,tty, uucp, plugdev groups *******"
echo ""
sudo usermod -a -G tty $1
sudo usermod -a -G dialout $1
sudo usermod -a -G uucp $1
sudo groupadd plugdev
sudo usermod -a -G plugdev $1
acmrules () {
echo ""
echo "# Setting serial port rules"
echo ""
cat <<EOF
"KERNEL="ttyUSB[0-9]*", TAG+="udev-acl", TAG+="uaccess", OWNER="$1"
"KERNEL="ttyACM[0-9]*", TAG+="udev-acl", TAG+="uaccess", OWNER="$1"
EOF
}
, так что вы видите, что даже KERNEL действует. Мое предложение:
установить с веб-сайта arduino ide. игнорируйте центр программного обеспечения в это время, пока он не будет восстановлен. Да, ПРОГРАММНЫЙ ЦЕНТР не допускает разрешения на последовательный порт во время установки и навсегда после.
Проблема решена!
Ответ прост. Необходимо добавить пользователя к двум группам, чтобы иметь доступ к USB-портам. Эти группы dialout
и tty
:
sudo usermod -a -G dialout <user>
sudo usermod -a -G tty <user>
Замена <user>
с фактическим именем пользователя в тех командах.
У меня была такая же проблема, и я попробовал все советы отсюда. Единственное, что у меня сработало, - это удаление среды IDE, которую я загрузил из программного обеспечения Ubuntu, и переустановка программного обеспечения с сайта Arduino .