tmux läuft nicht als Nicht-Root-Benutzer?

10

Wenn ich tmux als root ausführe, läuft es normal und voll funktionsfähig. Ich habe ein paar Benutzer erstellt, und es wird nicht als einer der Benutzer ausgeführt.

create session failed: : No such file or directory

Ich habe überprüft, ob $ TERM von außen xterm und $ TERM von innen angezeigt wird, da häufig gestellte Fragen darauf hinweisen, dass dies die häufigste Ursache für Probleme ist.

Ich habe tmux regelmäßig auf vielen verschiedenen Systemen verwendet, aber auf diesem VPS kann ich nicht herausfinden, was los ist ... Eine kleine Hilfe, bitte?

EDIT: Dank Jays hilfreichem Rat bezüglich strace habe ich ein Berechtigungsproblem mit / dev / pty * gefunden. Ich befürchte, dass dies für viele andere kein nützlicher Beitrag sein wird, da es sich um ein einmaliges Problem handelt.

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)

Dummkopf
quelle

Antworten:

10

Ein allgemeinerer Weg, um ein Problem dieser Art zu lösen:

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

Suchen Sie kurz vor dem Beenden nach permission denied/ no such file or directoryerror - möglicherweise finden Sie einen allgemeinen Grund dafür, warum dieser Fehler auftritt (dh sehen Sie, welches Verzeichnis erstellt werden soll, erstellen Sie ihn manuell und beobachten Sie den Fehler. Möglicherweise versucht er es zu machen /home/x/some/dirohne zu /home/x/someexistieren oder so).

Jay
quelle
Danke für den Vorschlag. Ich fürchte, ich bin nicht weiter gekommen. Ich habe versucht, mit Berechtigungen für / var / run / tmux herumzuspielen, bin aber nicht weitergekommen. Was bedeutet getcwd?
Hummel Narr
Möchten Sie das ausprobieren strace -e trace=allund einfügen? Ich bin mir nicht sicher, was ich anders empfehlen soll. getcwdbedeutet nur, das aktuelle Arbeitsverzeichnis abzurufen.
Jay
Ich habe versucht, einen Sinn daraus zu machen, aber ich bin verloren. Ihre fortgesetzte Eingabe wäre dankbar. Neuer Strace Output / Pastebin Link bearbeitet in.
Hummel Narr
1
Ich habe völlig vergessen, die Tatsache zu berücksichtigen, dass tmuxandere Prozesse verzweigt werden. Kannst du es versuchen strace -f -e trace=file tmux ...? Sie können sich vorstellen, wonach ich als nächstes fragen werde, wenn das nicht hilft :-)
Jay
0

Dies ist mir passiert, weil mein tmux Daemon- Prozess sein maximales Prozesslimit erreicht hat.

Nachdem ich das maximale Prozesslimit angehoben hatte (vgl. Maximales Dateilimit für einen laufenden Prozess festlegen ), konnte ich meine neue Sitzung mit startentmux new-session ...

RobM
quelle