Serial port terminal > Cannot open /dev/ttyS0: Permission denied












13















I had Windows XP on this box and it failed. Thinking it was corrupted OS I tried to reinstall, and it failed. But then I tried to install Ubuntu, and I could not run it from the USB or from the HD.



Did the mem test and found out one of my 512MB sticks (had 2) failed. I removed the bad one and was able to install Ubuntu but it was sluggish.



I was trying to quickly setup my packet radio for Hurricane Sandy. Downloaded the Serial Port Terminal and was able to get some use but the system kept locking up. So Installed Xubuntu next to it, planning on running out the next day to get RAM for the box. Put Xubuntu on and now I am getting the following error with serial port terminal.:



Cannot open /dev/ttyS0: Permission denied


I would like to be able to use serial port terminal, or equivalent with Xubuntu so I can use my kpc3 packet terminal, connect to the com port on the back of my computer.



Any ideas?










share|improve this question





























    13















    I had Windows XP on this box and it failed. Thinking it was corrupted OS I tried to reinstall, and it failed. But then I tried to install Ubuntu, and I could not run it from the USB or from the HD.



    Did the mem test and found out one of my 512MB sticks (had 2) failed. I removed the bad one and was able to install Ubuntu but it was sluggish.



    I was trying to quickly setup my packet radio for Hurricane Sandy. Downloaded the Serial Port Terminal and was able to get some use but the system kept locking up. So Installed Xubuntu next to it, planning on running out the next day to get RAM for the box. Put Xubuntu on and now I am getting the following error with serial port terminal.:



    Cannot open /dev/ttyS0: Permission denied


    I would like to be able to use serial port terminal, or equivalent with Xubuntu so I can use my kpc3 packet terminal, connect to the com port on the back of my computer.



    Any ideas?










    share|improve this question



























      13












      13








      13


      8






      I had Windows XP on this box and it failed. Thinking it was corrupted OS I tried to reinstall, and it failed. But then I tried to install Ubuntu, and I could not run it from the USB or from the HD.



      Did the mem test and found out one of my 512MB sticks (had 2) failed. I removed the bad one and was able to install Ubuntu but it was sluggish.



      I was trying to quickly setup my packet radio for Hurricane Sandy. Downloaded the Serial Port Terminal and was able to get some use but the system kept locking up. So Installed Xubuntu next to it, planning on running out the next day to get RAM for the box. Put Xubuntu on and now I am getting the following error with serial port terminal.:



      Cannot open /dev/ttyS0: Permission denied


      I would like to be able to use serial port terminal, or equivalent with Xubuntu so I can use my kpc3 packet terminal, connect to the com port on the back of my computer.



      Any ideas?










      share|improve this question
















      I had Windows XP on this box and it failed. Thinking it was corrupted OS I tried to reinstall, and it failed. But then I tried to install Ubuntu, and I could not run it from the USB or from the HD.



      Did the mem test and found out one of my 512MB sticks (had 2) failed. I removed the bad one and was able to install Ubuntu but it was sluggish.



      I was trying to quickly setup my packet radio for Hurricane Sandy. Downloaded the Serial Port Terminal and was able to get some use but the system kept locking up. So Installed Xubuntu next to it, planning on running out the next day to get RAM for the box. Put Xubuntu on and now I am getting the following error with serial port terminal.:



      Cannot open /dev/ttyS0: Permission denied


      I would like to be able to use serial port terminal, or equivalent with Xubuntu so I can use my kpc3 packet terminal, connect to the com port on the back of my computer.



      Any ideas?







      serial-port






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Aug 26 '13 at 3:33









      Braiam

      52.3k20138223




      52.3k20138223










      asked Oct 31 '12 at 18:03









      Joe ReynoldsJoe Reynolds

      66113




      66113






















          7 Answers
          7






          active

          oldest

          votes


















          31














          The tty devices belong to the "dialout" group, I suspect you are not a member of this group and hence are denied access to /dev/ttyS0, so you need to add yourself to that group.



          First check if you are a member of that group:



          groups ${USER}


          ..this will list all the groups you belong to. If you don't belong to the dialout grup then add yourself to it, for example:



          sudo gpasswd --add ${USER} dialout


          You then need to log out and log back in again for it to be effective. Then see if it fixes your problem.






          share|improve this answer


























          • Even being in dialout group user with id 1000 can't open serial port to read. After reboot. But, when I use sudo for the same executable, then it able to open /dev/ttyS0. What the possible reason?

            – Orient
            Aug 2 '17 at 12:31






          • 1





            @Orient I had the same problem and it was because the group dialout wasn't defined. Running newgrp dialout fixed the problem.

            – TheGr8_Nik
            Dec 11 '18 at 10:17











          • @TheGr8_Nik Thanks. Your solution worked on Ubuntu 16.04. No reboot involved. By default, this system did not have the group name dialout; checked via groups command. Even after appending username to the dialout group via command sudo usermod -a username -G dialout. After using newgrp dialout, this command esptool.py -p /dev/ttyUSB0 flash_id worked.

            – Sun Bear
            Jan 25 at 10:45





















          7














          The only solution that works for me is to: (every time I boot the machine)



          sudo chmod 666 /dev/ttys0


          It really needs to be fixed at time of installation. I'm on 15.10 and have tried 16.04 LTS, still the same there. Seems like such a simple fix.



          The older versions 10.04LTS did not have this problem.






          share|improve this answer





















          • 1





            this work with raspberry pi 3 but when I reboot lost the permissions.

            – J261
            Sep 14 '16 at 21:25






          • 1





            Adding permissions to my username for dialout worked fine, pretty simple fix.

            – DRJ101
            Sep 16 '16 at 16:57



















          3














          Had a look around various forums and it looks to be a bug related to permissions. Here's how I got around the problem (long version). You WILL need BOTH cu and setserial packages installed.



          In three terminal tabs, monitored output from # tail -f /var/log/messages
          That's how we know if we have a /dev/ttyUSB0 or not.



          In the second tab, simply ran a loop to ls -l this device to see it's permissions and it's group ID is 'dialout'. THIS is the critical bit. For some reason, your user MUST use this GID to do the cu, so...



          In the third tab, as root, did # newgrp dialout (to correspond with the GID of dialout). Tested with # touch /tmp/anything ... doing ls -l on this file shows it is created by root with a dialout group, so we're ready to ... # cu -l /dev/ttyUSB0
          In my case I needed to hit return again to see the expected prompt, in other cases speed may need to be specified.






          share|improve this answer


























          • This was the actual piece that helped me: For some reason, your user MUST use this GID to do the cu, so... . Thanks a million.

            – ΤΖΩΤΖΙΟΥ
            Jun 15 '15 at 8:46



















          2














          You can just use this command:



          sudo adduser $USER dialout


          This will add the current user to the dialout group.
          Login and out it to take effect.






          share|improve this answer































            0














            In my case the problem still exist, even when I add my user to group using:



            So when I use :



            sudo gpasswd --add ${USER} dialout


            and when I type: groups I got this result:



            ilyahoo adm cdrom sudo dip plugdev lpadmin sambashare


            But when I type id -Gn ilyahoo the putput is:



            ilyahoo adm tty dialout cdrom sudo dip plugdev lpadmin sambashare 


            I know that there is a problem that I don't know what is it honestly.



            To get a solution I just typed



            newgrp ilyahoo


            and the problem was fixed.






            share|improve this answer


























            • Welcome ilyahoo to askubuntu! Please try to format post according to our guide line. Try to format the output in a more readable manner. Thanks

              – abu_bua
              Jun 28 '18 at 0:06






            • 1





              @abu_bua please use code formatting for command output, not quote formatting.

              – muru
              Jun 28 '18 at 6:05



















            0














            Here is the solution:



            I had just updated my operating system to Ubuntu 18. normally I would install arduino IDE through the Arduino web sight because the one provided via Ubuntu Software portal was always an older version, and I wanted the newest features and board support. However, since I just installed the newest operating system, I figured that the official software center from ubuntu would have the newest version of the IDE listed, and it did.



            Now to the juicy part! Both my laptop and my desktop had the same problems accessing the serial ports. i had done the make user part of the dial-up group, and set permissions for the serial port, but always had to log out then back in, do it all again every time i rebooted! NOT FUN!.



            This time, it didn't work. Even in the software center the permissions option for the software shows the serial port "disconnected". no option to allow permission to the port even after all the permissions were granted manually through the terminal window using sudo.



            I decided to uninstall the Arduino IDE from the software center, and install it from the web sight, so i did. This time I read the install files, just to see if it mentions permissions for the serial port or not, *****of course it did! ******
            all the ports are set with full access permissions, user access across the board. Turns out this was the answer. after running the arduino-linux-setup.sh file provided by arduino, all serial port problems were solved. the following is an excerpt from the arduino-linux-setup.sh file;



            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

            }


            so you see even the KERNEL is effected. My suggestion:



            install from the arduino ide web site. ignore the software center at this time, until it is repaired. Yes the SOFTWARE CENTER is not allowing permmisions to the serial port during install, and forever after.



            Problem Solved!






            share|improve this answer

































              0














              On Ubuntu 18.04, I fixed this issue with the following commands:



              sudo newgrp dialout
              sudo usermod -a -G tty $USER
              sudo usermod -a -G dialout $USER


              There is something unexpected about dialout, we shouldn't need to create the group but it's apparently a common issue.






              share|improve this answer








              New contributor




              Tseho is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
              Check out our Code of Conduct.




















                Your Answer








                StackExchange.ready(function() {
                var channelOptions = {
                tags: "".split(" "),
                id: "89"
                };
                initTagRenderer("".split(" "), "".split(" "), channelOptions);

                StackExchange.using("externalEditor", function() {
                // Have to fire editor after snippets, if snippets enabled
                if (StackExchange.settings.snippets.snippetsEnabled) {
                StackExchange.using("snippets", function() {
                createEditor();
                });
                }
                else {
                createEditor();
                }
                });

                function createEditor() {
                StackExchange.prepareEditor({
                heartbeatType: 'answer',
                autoActivateHeartbeat: false,
                convertImagesToLinks: true,
                noModals: true,
                showLowRepImageUploadWarning: true,
                reputationToPostImages: 10,
                bindNavPrevention: true,
                postfix: "",
                imageUploader: {
                brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
                contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
                allowUrls: true
                },
                onDemand: true,
                discardSelector: ".discard-answer"
                ,immediatelyShowMarkdownHelp:true
                });


                }
                });














                draft saved

                draft discarded


















                StackExchange.ready(
                function () {
                StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f210177%2fserial-port-terminal-cannot-open-dev-ttys0-permission-denied%23new-answer', 'question_page');
                }
                );

                Post as a guest















                Required, but never shown

























                7 Answers
                7






                active

                oldest

                votes








                7 Answers
                7






                active

                oldest

                votes









                active

                oldest

                votes






                active

                oldest

                votes









                31














                The tty devices belong to the "dialout" group, I suspect you are not a member of this group and hence are denied access to /dev/ttyS0, so you need to add yourself to that group.



                First check if you are a member of that group:



                groups ${USER}


                ..this will list all the groups you belong to. If you don't belong to the dialout grup then add yourself to it, for example:



                sudo gpasswd --add ${USER} dialout


                You then need to log out and log back in again for it to be effective. Then see if it fixes your problem.






                share|improve this answer


























                • Even being in dialout group user with id 1000 can't open serial port to read. After reboot. But, when I use sudo for the same executable, then it able to open /dev/ttyS0. What the possible reason?

                  – Orient
                  Aug 2 '17 at 12:31






                • 1





                  @Orient I had the same problem and it was because the group dialout wasn't defined. Running newgrp dialout fixed the problem.

                  – TheGr8_Nik
                  Dec 11 '18 at 10:17











                • @TheGr8_Nik Thanks. Your solution worked on Ubuntu 16.04. No reboot involved. By default, this system did not have the group name dialout; checked via groups command. Even after appending username to the dialout group via command sudo usermod -a username -G dialout. After using newgrp dialout, this command esptool.py -p /dev/ttyUSB0 flash_id worked.

                  – Sun Bear
                  Jan 25 at 10:45


















                31














                The tty devices belong to the "dialout" group, I suspect you are not a member of this group and hence are denied access to /dev/ttyS0, so you need to add yourself to that group.



                First check if you are a member of that group:



                groups ${USER}


                ..this will list all the groups you belong to. If you don't belong to the dialout grup then add yourself to it, for example:



                sudo gpasswd --add ${USER} dialout


                You then need to log out and log back in again for it to be effective. Then see if it fixes your problem.






                share|improve this answer


























                • Even being in dialout group user with id 1000 can't open serial port to read. After reboot. But, when I use sudo for the same executable, then it able to open /dev/ttyS0. What the possible reason?

                  – Orient
                  Aug 2 '17 at 12:31






                • 1





                  @Orient I had the same problem and it was because the group dialout wasn't defined. Running newgrp dialout fixed the problem.

                  – TheGr8_Nik
                  Dec 11 '18 at 10:17











                • @TheGr8_Nik Thanks. Your solution worked on Ubuntu 16.04. No reboot involved. By default, this system did not have the group name dialout; checked via groups command. Even after appending username to the dialout group via command sudo usermod -a username -G dialout. After using newgrp dialout, this command esptool.py -p /dev/ttyUSB0 flash_id worked.

                  – Sun Bear
                  Jan 25 at 10:45
















                31












                31








                31







                The tty devices belong to the "dialout" group, I suspect you are not a member of this group and hence are denied access to /dev/ttyS0, so you need to add yourself to that group.



                First check if you are a member of that group:



                groups ${USER}


                ..this will list all the groups you belong to. If you don't belong to the dialout grup then add yourself to it, for example:



                sudo gpasswd --add ${USER} dialout


                You then need to log out and log back in again for it to be effective. Then see if it fixes your problem.






                share|improve this answer















                The tty devices belong to the "dialout" group, I suspect you are not a member of this group and hence are denied access to /dev/ttyS0, so you need to add yourself to that group.



                First check if you are a member of that group:



                groups ${USER}


                ..this will list all the groups you belong to. If you don't belong to the dialout grup then add yourself to it, for example:



                sudo gpasswd --add ${USER} dialout


                You then need to log out and log back in again for it to be effective. Then see if it fixes your problem.







                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Aug 22 '13 at 15:29









                Lucas

                503514




                503514










                answered Oct 31 '12 at 19:48









                Colin Ian KingColin Ian King

                12.3k13747




                12.3k13747













                • Even being in dialout group user with id 1000 can't open serial port to read. After reboot. But, when I use sudo for the same executable, then it able to open /dev/ttyS0. What the possible reason?

                  – Orient
                  Aug 2 '17 at 12:31






                • 1





                  @Orient I had the same problem and it was because the group dialout wasn't defined. Running newgrp dialout fixed the problem.

                  – TheGr8_Nik
                  Dec 11 '18 at 10:17











                • @TheGr8_Nik Thanks. Your solution worked on Ubuntu 16.04. No reboot involved. By default, this system did not have the group name dialout; checked via groups command. Even after appending username to the dialout group via command sudo usermod -a username -G dialout. After using newgrp dialout, this command esptool.py -p /dev/ttyUSB0 flash_id worked.

                  – Sun Bear
                  Jan 25 at 10:45





















                • Even being in dialout group user with id 1000 can't open serial port to read. After reboot. But, when I use sudo for the same executable, then it able to open /dev/ttyS0. What the possible reason?

                  – Orient
                  Aug 2 '17 at 12:31






                • 1





                  @Orient I had the same problem and it was because the group dialout wasn't defined. Running newgrp dialout fixed the problem.

                  – TheGr8_Nik
                  Dec 11 '18 at 10:17











                • @TheGr8_Nik Thanks. Your solution worked on Ubuntu 16.04. No reboot involved. By default, this system did not have the group name dialout; checked via groups command. Even after appending username to the dialout group via command sudo usermod -a username -G dialout. After using newgrp dialout, this command esptool.py -p /dev/ttyUSB0 flash_id worked.

                  – Sun Bear
                  Jan 25 at 10:45



















                Even being in dialout group user with id 1000 can't open serial port to read. After reboot. But, when I use sudo for the same executable, then it able to open /dev/ttyS0. What the possible reason?

                – Orient
                Aug 2 '17 at 12:31





                Even being in dialout group user with id 1000 can't open serial port to read. After reboot. But, when I use sudo for the same executable, then it able to open /dev/ttyS0. What the possible reason?

                – Orient
                Aug 2 '17 at 12:31




                1




                1





                @Orient I had the same problem and it was because the group dialout wasn't defined. Running newgrp dialout fixed the problem.

                – TheGr8_Nik
                Dec 11 '18 at 10:17





                @Orient I had the same problem and it was because the group dialout wasn't defined. Running newgrp dialout fixed the problem.

                – TheGr8_Nik
                Dec 11 '18 at 10:17













                @TheGr8_Nik Thanks. Your solution worked on Ubuntu 16.04. No reboot involved. By default, this system did not have the group name dialout; checked via groups command. Even after appending username to the dialout group via command sudo usermod -a username -G dialout. After using newgrp dialout, this command esptool.py -p /dev/ttyUSB0 flash_id worked.

                – Sun Bear
                Jan 25 at 10:45







                @TheGr8_Nik Thanks. Your solution worked on Ubuntu 16.04. No reboot involved. By default, this system did not have the group name dialout; checked via groups command. Even after appending username to the dialout group via command sudo usermod -a username -G dialout. After using newgrp dialout, this command esptool.py -p /dev/ttyUSB0 flash_id worked.

                – Sun Bear
                Jan 25 at 10:45















                7














                The only solution that works for me is to: (every time I boot the machine)



                sudo chmod 666 /dev/ttys0


                It really needs to be fixed at time of installation. I'm on 15.10 and have tried 16.04 LTS, still the same there. Seems like such a simple fix.



                The older versions 10.04LTS did not have this problem.






                share|improve this answer





















                • 1





                  this work with raspberry pi 3 but when I reboot lost the permissions.

                  – J261
                  Sep 14 '16 at 21:25






                • 1





                  Adding permissions to my username for dialout worked fine, pretty simple fix.

                  – DRJ101
                  Sep 16 '16 at 16:57
















                7














                The only solution that works for me is to: (every time I boot the machine)



                sudo chmod 666 /dev/ttys0


                It really needs to be fixed at time of installation. I'm on 15.10 and have tried 16.04 LTS, still the same there. Seems like such a simple fix.



                The older versions 10.04LTS did not have this problem.






                share|improve this answer





















                • 1





                  this work with raspberry pi 3 but when I reboot lost the permissions.

                  – J261
                  Sep 14 '16 at 21:25






                • 1





                  Adding permissions to my username for dialout worked fine, pretty simple fix.

                  – DRJ101
                  Sep 16 '16 at 16:57














                7












                7








                7







                The only solution that works for me is to: (every time I boot the machine)



                sudo chmod 666 /dev/ttys0


                It really needs to be fixed at time of installation. I'm on 15.10 and have tried 16.04 LTS, still the same there. Seems like such a simple fix.



                The older versions 10.04LTS did not have this problem.






                share|improve this answer















                The only solution that works for me is to: (every time I boot the machine)



                sudo chmod 666 /dev/ttys0


                It really needs to be fixed at time of installation. I'm on 15.10 and have tried 16.04 LTS, still the same there. Seems like such a simple fix.



                The older versions 10.04LTS did not have this problem.







                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Jun 9 '16 at 15:55







                user323419

















                answered Jun 9 '16 at 15:35









                DRJ101DRJ101

                7613




                7613








                • 1





                  this work with raspberry pi 3 but when I reboot lost the permissions.

                  – J261
                  Sep 14 '16 at 21:25






                • 1





                  Adding permissions to my username for dialout worked fine, pretty simple fix.

                  – DRJ101
                  Sep 16 '16 at 16:57














                • 1





                  this work with raspberry pi 3 but when I reboot lost the permissions.

                  – J261
                  Sep 14 '16 at 21:25






                • 1





                  Adding permissions to my username for dialout worked fine, pretty simple fix.

                  – DRJ101
                  Sep 16 '16 at 16:57








                1




                1





                this work with raspberry pi 3 but when I reboot lost the permissions.

                – J261
                Sep 14 '16 at 21:25





                this work with raspberry pi 3 but when I reboot lost the permissions.

                – J261
                Sep 14 '16 at 21:25




                1




                1





                Adding permissions to my username for dialout worked fine, pretty simple fix.

                – DRJ101
                Sep 16 '16 at 16:57





                Adding permissions to my username for dialout worked fine, pretty simple fix.

                – DRJ101
                Sep 16 '16 at 16:57











                3














                Had a look around various forums and it looks to be a bug related to permissions. Here's how I got around the problem (long version). You WILL need BOTH cu and setserial packages installed.



                In three terminal tabs, monitored output from # tail -f /var/log/messages
                That's how we know if we have a /dev/ttyUSB0 or not.



                In the second tab, simply ran a loop to ls -l this device to see it's permissions and it's group ID is 'dialout'. THIS is the critical bit. For some reason, your user MUST use this GID to do the cu, so...



                In the third tab, as root, did # newgrp dialout (to correspond with the GID of dialout). Tested with # touch /tmp/anything ... doing ls -l on this file shows it is created by root with a dialout group, so we're ready to ... # cu -l /dev/ttyUSB0
                In my case I needed to hit return again to see the expected prompt, in other cases speed may need to be specified.






                share|improve this answer


























                • This was the actual piece that helped me: For some reason, your user MUST use this GID to do the cu, so... . Thanks a million.

                  – ΤΖΩΤΖΙΟΥ
                  Jun 15 '15 at 8:46
















                3














                Had a look around various forums and it looks to be a bug related to permissions. Here's how I got around the problem (long version). You WILL need BOTH cu and setserial packages installed.



                In three terminal tabs, monitored output from # tail -f /var/log/messages
                That's how we know if we have a /dev/ttyUSB0 or not.



                In the second tab, simply ran a loop to ls -l this device to see it's permissions and it's group ID is 'dialout'. THIS is the critical bit. For some reason, your user MUST use this GID to do the cu, so...



                In the third tab, as root, did # newgrp dialout (to correspond with the GID of dialout). Tested with # touch /tmp/anything ... doing ls -l on this file shows it is created by root with a dialout group, so we're ready to ... # cu -l /dev/ttyUSB0
                In my case I needed to hit return again to see the expected prompt, in other cases speed may need to be specified.






                share|improve this answer


























                • This was the actual piece that helped me: For some reason, your user MUST use this GID to do the cu, so... . Thanks a million.

                  – ΤΖΩΤΖΙΟΥ
                  Jun 15 '15 at 8:46














                3












                3








                3







                Had a look around various forums and it looks to be a bug related to permissions. Here's how I got around the problem (long version). You WILL need BOTH cu and setserial packages installed.



                In three terminal tabs, monitored output from # tail -f /var/log/messages
                That's how we know if we have a /dev/ttyUSB0 or not.



                In the second tab, simply ran a loop to ls -l this device to see it's permissions and it's group ID is 'dialout'. THIS is the critical bit. For some reason, your user MUST use this GID to do the cu, so...



                In the third tab, as root, did # newgrp dialout (to correspond with the GID of dialout). Tested with # touch /tmp/anything ... doing ls -l on this file shows it is created by root with a dialout group, so we're ready to ... # cu -l /dev/ttyUSB0
                In my case I needed to hit return again to see the expected prompt, in other cases speed may need to be specified.






                share|improve this answer















                Had a look around various forums and it looks to be a bug related to permissions. Here's how I got around the problem (long version). You WILL need BOTH cu and setserial packages installed.



                In three terminal tabs, monitored output from # tail -f /var/log/messages
                That's how we know if we have a /dev/ttyUSB0 or not.



                In the second tab, simply ran a loop to ls -l this device to see it's permissions and it's group ID is 'dialout'. THIS is the critical bit. For some reason, your user MUST use this GID to do the cu, so...



                In the third tab, as root, did # newgrp dialout (to correspond with the GID of dialout). Tested with # touch /tmp/anything ... doing ls -l on this file shows it is created by root with a dialout group, so we're ready to ... # cu -l /dev/ttyUSB0
                In my case I needed to hit return again to see the expected prompt, in other cases speed may need to be specified.







                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Aug 26 '13 at 3:37









                Braiam

                52.3k20138223




                52.3k20138223










                answered Jul 29 '13 at 7:47









                linuxhelpielinuxhelpie

                312




                312













                • This was the actual piece that helped me: For some reason, your user MUST use this GID to do the cu, so... . Thanks a million.

                  – ΤΖΩΤΖΙΟΥ
                  Jun 15 '15 at 8:46



















                • This was the actual piece that helped me: For some reason, your user MUST use this GID to do the cu, so... . Thanks a million.

                  – ΤΖΩΤΖΙΟΥ
                  Jun 15 '15 at 8:46

















                This was the actual piece that helped me: For some reason, your user MUST use this GID to do the cu, so... . Thanks a million.

                – ΤΖΩΤΖΙΟΥ
                Jun 15 '15 at 8:46





                This was the actual piece that helped me: For some reason, your user MUST use this GID to do the cu, so... . Thanks a million.

                – ΤΖΩΤΖΙΟΥ
                Jun 15 '15 at 8:46











                2














                You can just use this command:



                sudo adduser $USER dialout


                This will add the current user to the dialout group.
                Login and out it to take effect.






                share|improve this answer




























                  2














                  You can just use this command:



                  sudo adduser $USER dialout


                  This will add the current user to the dialout group.
                  Login and out it to take effect.






                  share|improve this answer


























                    2












                    2








                    2







                    You can just use this command:



                    sudo adduser $USER dialout


                    This will add the current user to the dialout group.
                    Login and out it to take effect.






                    share|improve this answer













                    You can just use this command:



                    sudo adduser $USER dialout


                    This will add the current user to the dialout group.
                    Login and out it to take effect.







                    share|improve this answer












                    share|improve this answer



                    share|improve this answer










                    answered Dec 29 '17 at 15:30









                    BonnomBonnom

                    211




                    211























                        0














                        In my case the problem still exist, even when I add my user to group using:



                        So when I use :



                        sudo gpasswd --add ${USER} dialout


                        and when I type: groups I got this result:



                        ilyahoo adm cdrom sudo dip plugdev lpadmin sambashare


                        But when I type id -Gn ilyahoo the putput is:



                        ilyahoo adm tty dialout cdrom sudo dip plugdev lpadmin sambashare 


                        I know that there is a problem that I don't know what is it honestly.



                        To get a solution I just typed



                        newgrp ilyahoo


                        and the problem was fixed.






                        share|improve this answer


























                        • Welcome ilyahoo to askubuntu! Please try to format post according to our guide line. Try to format the output in a more readable manner. Thanks

                          – abu_bua
                          Jun 28 '18 at 0:06






                        • 1





                          @abu_bua please use code formatting for command output, not quote formatting.

                          – muru
                          Jun 28 '18 at 6:05
















                        0














                        In my case the problem still exist, even when I add my user to group using:



                        So when I use :



                        sudo gpasswd --add ${USER} dialout


                        and when I type: groups I got this result:



                        ilyahoo adm cdrom sudo dip plugdev lpadmin sambashare


                        But when I type id -Gn ilyahoo the putput is:



                        ilyahoo adm tty dialout cdrom sudo dip plugdev lpadmin sambashare 


                        I know that there is a problem that I don't know what is it honestly.



                        To get a solution I just typed



                        newgrp ilyahoo


                        and the problem was fixed.






                        share|improve this answer


























                        • Welcome ilyahoo to askubuntu! Please try to format post according to our guide line. Try to format the output in a more readable manner. Thanks

                          – abu_bua
                          Jun 28 '18 at 0:06






                        • 1





                          @abu_bua please use code formatting for command output, not quote formatting.

                          – muru
                          Jun 28 '18 at 6:05














                        0












                        0








                        0







                        In my case the problem still exist, even when I add my user to group using:



                        So when I use :



                        sudo gpasswd --add ${USER} dialout


                        and when I type: groups I got this result:



                        ilyahoo adm cdrom sudo dip plugdev lpadmin sambashare


                        But when I type id -Gn ilyahoo the putput is:



                        ilyahoo adm tty dialout cdrom sudo dip plugdev lpadmin sambashare 


                        I know that there is a problem that I don't know what is it honestly.



                        To get a solution I just typed



                        newgrp ilyahoo


                        and the problem was fixed.






                        share|improve this answer















                        In my case the problem still exist, even when I add my user to group using:



                        So when I use :



                        sudo gpasswd --add ${USER} dialout


                        and when I type: groups I got this result:



                        ilyahoo adm cdrom sudo dip plugdev lpadmin sambashare


                        But when I type id -Gn ilyahoo the putput is:



                        ilyahoo adm tty dialout cdrom sudo dip plugdev lpadmin sambashare 


                        I know that there is a problem that I don't know what is it honestly.



                        To get a solution I just typed



                        newgrp ilyahoo


                        and the problem was fixed.







                        share|improve this answer














                        share|improve this answer



                        share|improve this answer








                        edited Jun 28 '18 at 6:05









                        muru

                        1




                        1










                        answered Jun 27 '18 at 23:46









                        ilyahooilyahoo

                        1




                        1













                        • Welcome ilyahoo to askubuntu! Please try to format post according to our guide line. Try to format the output in a more readable manner. Thanks

                          – abu_bua
                          Jun 28 '18 at 0:06






                        • 1





                          @abu_bua please use code formatting for command output, not quote formatting.

                          – muru
                          Jun 28 '18 at 6:05



















                        • Welcome ilyahoo to askubuntu! Please try to format post according to our guide line. Try to format the output in a more readable manner. Thanks

                          – abu_bua
                          Jun 28 '18 at 0:06






                        • 1





                          @abu_bua please use code formatting for command output, not quote formatting.

                          – muru
                          Jun 28 '18 at 6:05

















                        Welcome ilyahoo to askubuntu! Please try to format post according to our guide line. Try to format the output in a more readable manner. Thanks

                        – abu_bua
                        Jun 28 '18 at 0:06





                        Welcome ilyahoo to askubuntu! Please try to format post according to our guide line. Try to format the output in a more readable manner. Thanks

                        – abu_bua
                        Jun 28 '18 at 0:06




                        1




                        1





                        @abu_bua please use code formatting for command output, not quote formatting.

                        – muru
                        Jun 28 '18 at 6:05





                        @abu_bua please use code formatting for command output, not quote formatting.

                        – muru
                        Jun 28 '18 at 6:05











                        0














                        Here is the solution:



                        I had just updated my operating system to Ubuntu 18. normally I would install arduino IDE through the Arduino web sight because the one provided via Ubuntu Software portal was always an older version, and I wanted the newest features and board support. However, since I just installed the newest operating system, I figured that the official software center from ubuntu would have the newest version of the IDE listed, and it did.



                        Now to the juicy part! Both my laptop and my desktop had the same problems accessing the serial ports. i had done the make user part of the dial-up group, and set permissions for the serial port, but always had to log out then back in, do it all again every time i rebooted! NOT FUN!.



                        This time, it didn't work. Even in the software center the permissions option for the software shows the serial port "disconnected". no option to allow permission to the port even after all the permissions were granted manually through the terminal window using sudo.



                        I decided to uninstall the Arduino IDE from the software center, and install it from the web sight, so i did. This time I read the install files, just to see if it mentions permissions for the serial port or not, *****of course it did! ******
                        all the ports are set with full access permissions, user access across the board. Turns out this was the answer. after running the arduino-linux-setup.sh file provided by arduino, all serial port problems were solved. the following is an excerpt from the arduino-linux-setup.sh file;



                        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

                        }


                        so you see even the KERNEL is effected. My suggestion:



                        install from the arduino ide web site. ignore the software center at this time, until it is repaired. Yes the SOFTWARE CENTER is not allowing permmisions to the serial port during install, and forever after.



                        Problem Solved!






                        share|improve this answer






























                          0














                          Here is the solution:



                          I had just updated my operating system to Ubuntu 18. normally I would install arduino IDE through the Arduino web sight because the one provided via Ubuntu Software portal was always an older version, and I wanted the newest features and board support. However, since I just installed the newest operating system, I figured that the official software center from ubuntu would have the newest version of the IDE listed, and it did.



                          Now to the juicy part! Both my laptop and my desktop had the same problems accessing the serial ports. i had done the make user part of the dial-up group, and set permissions for the serial port, but always had to log out then back in, do it all again every time i rebooted! NOT FUN!.



                          This time, it didn't work. Even in the software center the permissions option for the software shows the serial port "disconnected". no option to allow permission to the port even after all the permissions were granted manually through the terminal window using sudo.



                          I decided to uninstall the Arduino IDE from the software center, and install it from the web sight, so i did. This time I read the install files, just to see if it mentions permissions for the serial port or not, *****of course it did! ******
                          all the ports are set with full access permissions, user access across the board. Turns out this was the answer. after running the arduino-linux-setup.sh file provided by arduino, all serial port problems were solved. the following is an excerpt from the arduino-linux-setup.sh file;



                          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

                          }


                          so you see even the KERNEL is effected. My suggestion:



                          install from the arduino ide web site. ignore the software center at this time, until it is repaired. Yes the SOFTWARE CENTER is not allowing permmisions to the serial port during install, and forever after.



                          Problem Solved!






                          share|improve this answer




























                            0












                            0








                            0







                            Here is the solution:



                            I had just updated my operating system to Ubuntu 18. normally I would install arduino IDE through the Arduino web sight because the one provided via Ubuntu Software portal was always an older version, and I wanted the newest features and board support. However, since I just installed the newest operating system, I figured that the official software center from ubuntu would have the newest version of the IDE listed, and it did.



                            Now to the juicy part! Both my laptop and my desktop had the same problems accessing the serial ports. i had done the make user part of the dial-up group, and set permissions for the serial port, but always had to log out then back in, do it all again every time i rebooted! NOT FUN!.



                            This time, it didn't work. Even in the software center the permissions option for the software shows the serial port "disconnected". no option to allow permission to the port even after all the permissions were granted manually through the terminal window using sudo.



                            I decided to uninstall the Arduino IDE from the software center, and install it from the web sight, so i did. This time I read the install files, just to see if it mentions permissions for the serial port or not, *****of course it did! ******
                            all the ports are set with full access permissions, user access across the board. Turns out this was the answer. after running the arduino-linux-setup.sh file provided by arduino, all serial port problems were solved. the following is an excerpt from the arduino-linux-setup.sh file;



                            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

                            }


                            so you see even the KERNEL is effected. My suggestion:



                            install from the arduino ide web site. ignore the software center at this time, until it is repaired. Yes the SOFTWARE CENTER is not allowing permmisions to the serial port during install, and forever after.



                            Problem Solved!






                            share|improve this answer















                            Here is the solution:



                            I had just updated my operating system to Ubuntu 18. normally I would install arduino IDE through the Arduino web sight because the one provided via Ubuntu Software portal was always an older version, and I wanted the newest features and board support. However, since I just installed the newest operating system, I figured that the official software center from ubuntu would have the newest version of the IDE listed, and it did.



                            Now to the juicy part! Both my laptop and my desktop had the same problems accessing the serial ports. i had done the make user part of the dial-up group, and set permissions for the serial port, but always had to log out then back in, do it all again every time i rebooted! NOT FUN!.



                            This time, it didn't work. Even in the software center the permissions option for the software shows the serial port "disconnected". no option to allow permission to the port even after all the permissions were granted manually through the terminal window using sudo.



                            I decided to uninstall the Arduino IDE from the software center, and install it from the web sight, so i did. This time I read the install files, just to see if it mentions permissions for the serial port or not, *****of course it did! ******
                            all the ports are set with full access permissions, user access across the board. Turns out this was the answer. after running the arduino-linux-setup.sh file provided by arduino, all serial port problems were solved. the following is an excerpt from the arduino-linux-setup.sh file;



                            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

                            }


                            so you see even the KERNEL is effected. My suggestion:



                            install from the arduino ide web site. ignore the software center at this time, until it is repaired. Yes the SOFTWARE CENTER is not allowing permmisions to the serial port during install, and forever after.



                            Problem Solved!







                            share|improve this answer














                            share|improve this answer



                            share|improve this answer








                            edited Nov 23 '18 at 15:11









                            abu_bua

                            3,50881228




                            3,50881228










                            answered Nov 23 '18 at 12:11









                            Joseph WimsattJoseph Wimsatt

                            1




                            1























                                0














                                On Ubuntu 18.04, I fixed this issue with the following commands:



                                sudo newgrp dialout
                                sudo usermod -a -G tty $USER
                                sudo usermod -a -G dialout $USER


                                There is something unexpected about dialout, we shouldn't need to create the group but it's apparently a common issue.






                                share|improve this answer








                                New contributor




                                Tseho is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                                Check out our Code of Conduct.

























                                  0














                                  On Ubuntu 18.04, I fixed this issue with the following commands:



                                  sudo newgrp dialout
                                  sudo usermod -a -G tty $USER
                                  sudo usermod -a -G dialout $USER


                                  There is something unexpected about dialout, we shouldn't need to create the group but it's apparently a common issue.






                                  share|improve this answer








                                  New contributor




                                  Tseho is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                                  Check out our Code of Conduct.























                                    0












                                    0








                                    0







                                    On Ubuntu 18.04, I fixed this issue with the following commands:



                                    sudo newgrp dialout
                                    sudo usermod -a -G tty $USER
                                    sudo usermod -a -G dialout $USER


                                    There is something unexpected about dialout, we shouldn't need to create the group but it's apparently a common issue.






                                    share|improve this answer








                                    New contributor




                                    Tseho is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                                    Check out our Code of Conduct.










                                    On Ubuntu 18.04, I fixed this issue with the following commands:



                                    sudo newgrp dialout
                                    sudo usermod -a -G tty $USER
                                    sudo usermod -a -G dialout $USER


                                    There is something unexpected about dialout, we shouldn't need to create the group but it's apparently a common issue.







                                    share|improve this answer








                                    New contributor




                                    Tseho is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                                    Check out our Code of Conduct.









                                    share|improve this answer



                                    share|improve this answer






                                    New contributor




                                    Tseho is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                                    Check out our Code of Conduct.









                                    answered 5 hours ago









                                    TsehoTseho

                                    101




                                    101




                                    New contributor




                                    Tseho is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                                    Check out our Code of Conduct.





                                    New contributor





                                    Tseho is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                                    Check out our Code of Conduct.






                                    Tseho is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                                    Check out our Code of Conduct.






























                                        draft saved

                                        draft discarded




















































                                        Thanks for contributing an answer to Ask Ubuntu!


                                        • Please be sure to answer the question. Provide details and share your research!

                                        But avoid



                                        • Asking for help, clarification, or responding to other answers.

                                        • Making statements based on opinion; back them up with references or personal experience.


                                        To learn more, see our tips on writing great answers.




                                        draft saved


                                        draft discarded














                                        StackExchange.ready(
                                        function () {
                                        StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f210177%2fserial-port-terminal-cannot-open-dev-ttys0-permission-denied%23new-answer', 'question_page');
                                        }
                                        );

                                        Post as a guest















                                        Required, but never shown





















































                                        Required, but never shown














                                        Required, but never shown












                                        Required, but never shown







                                        Required, but never shown

































                                        Required, but never shown














                                        Required, but never shown












                                        Required, but never shown







                                        Required, but never shown







                                        Popular posts from this blog

                                        香粉寮

                                        GameSpot