tmux nie będzie działał jako użytkownik root?

10

Jeśli uruchomię tmux jako root, działa normalnie iw pełni funkcjonalnie. Utworzyłem kilku użytkowników i nie będzie działać jak żaden z nich.

create session failed: : No such file or directory

Sprawdziłem, że zewnętrzny $ TERM to xterm, a wewnątrz $ TERM to ekran, ponieważ FAQ sugerują, że jest to najczęstsza przyczyna problemów.

Używałem tmux regularnie na wielu różnych systemach, ale na tym VPS nie mogę dowiedzieć się, co jest ... Trochę pomocy, proszę?

EDYCJA: Dzięki pomocnym radom Jaya na temat strace, znalazłem problem z uprawnieniami w / dev / pty *. Obawiam się, że nie będzie to przydatny post dla wielu innych osób, ponieważ wydaje się to być jednorazowym problemem.

strace -f -e trace=file tmux

32000 open("/dev/ptmx", O_RDWR) = -1 EACCES (Permission denied) 32000 open("/dev/ptyp0", O_RDWR) = -1 EACCES (Permission denied) ..... 32000 open("/dev/ptypf", O_RDWR) = -1 EACCES (Permission denied) 32000 open("/dev/ptyq0", O_RDWR) = -1 ENOENT (No such file or directory)

głupkowaty głupiec
źródło

Odpowiedzi:

10

Ogólniejszy sposób rozwiązania tego rodzaju problemu:

strace -f -e trace=file tmux ..restofyourcommand...

Poszukaj permission denied/ no such file or directoryerror tuż przed wyjściem - może znaleźć ogólny powód, dla którego pojawia się ten błąd (to znaczy, sprawdź, który katalog próbował utworzyć, a następnie zrób to ręcznie i obserwuj błąd, być może próbuje zrobić /home/x/some/dirbez /home/x/someistnienia lub coś takiego).

Sójka
źródło
Dzieki za sugestie. Obawiam się, że nie posunąłem się dalej. Próbowałem zadzierać z uprawnieniami na / var / run / tmux, ale nigdzie nie dostałem. Co znaczy getcwd?
gderliwy głupiec
Czy chcesz spróbować strace -e trace=alli wkleić to? Nie jestem pewien, co polecić inaczej niż to. getcwdoznacza tylko uzyskanie bieżącego katalogu roboczego.
Jay
Próbowałem to zrozumieć, ale się zgubiłem. Doceniamy Twój dalszy wkład. Edytowano nowy link wyjściowy strace / pastebin.
głupiec
1
Zupełnie zapomniałem wziąć pod uwagę fakt, że tmuxrozwidlają inne procesy. Można spróbować strace -f -e trace=file tmux ...? Możesz zgadnąć, o co poproszę, jeśli to nie pomoże :-)
Jay
0

Stało się tak, ponieważ mój proces tmux demona osiągał maksymalny limit procesu.

Po podniesieniu maksymalnego limitu procesu (por. Ustaw maksymalny limit pliku dla uruchomionego procesu ) mogłem rozpocząć nową sesjętmux new-session ...

RobM
źródło