"Must be connected to a terminal error" with screen -x command on a Linux Container

25,719

Solution 1

I found a solution that works for same case(https://www.svennd.be/screen-in-lxc-attach)

Execute this

script /dev/null

Then you can run screen, et voila

Solution 2

This is happening mostly because of the reason that you must have switched user to the current terminal user using the command sudo su or user changing command. You will need to own the shell on which you are working. You can do so by running this: script /dev/null.

Alternatively, You can restart the terminal session with the user(which was used when creating screen) and not coming to current user using switch user commands.

To know active screens : screen -list

Share:
25,719
Phoax
Author by

Phoax

Developer and blockchain explorer

Updated on July 09, 2022

Comments

  • Phoax
    Phoax almost 2 years

    I am using Linux containers with Proxmox 4. When I am connected on an Ubuntu 16.04 container with:

    pct enter <id>
    

    I run a script with screen and try to watch the process running with:

    screen -x <processname>
    

    I got the error:

    Must be connected to a terminal error

    When I connect with:

    ssh -t <user>@<container_ip>
    

    It works, I can attach the display to the screen.

    How can I use screen -x when I am connected with pct enter ?

  • JdeBP
    JdeBP over 4 years
    That does not explain what the cause of the problem is, though; it merely bodges around it with a pseudoterminal.
  • JdeBP
    JdeBP over 4 years
    This explanation makes no sense at all. script is not a command for owning a shell, and sudo is unrelated to a lack of a controlling terminal because it does not adjust the controlling terminal.
  • Manoj Jadhav
    Manoj Jadhav almost 4 years
    What is does? I dont understand how it allows starting screen session?
  • Mark Stewart
    Mark Stewart over 3 years
    Welcome to StackOverflow. Did you mean nohup instead of hohup? Please edit your answer to fix.
  • amarinediary
    amarinediary over 3 years
    Welcome to Stackoverflow, to maximise your chance of getting your answer accepted and upvoted, please Take the tour and read How do I write a good answer.