Ich habe das Shell-Script mal aktualisiert. Der Fehler kam dadurch zustande, dass die Funktion setprio den Text mit Steuerzeichen ausgab, welcher in den Startbefehl integriert wird. Generell kann man aber vom Setzen der Priorität des Prozesses abraten. Seit der OrangeBox-Engine hat sich halt vieles verändert. Das Setzten einer höheren Priorität kann sogar zu einem schlechteren Ergebnis führen.
Für server4you-Kunden ist wichtig, dass die .bashrc, welche im Wiki vorgeschlagen wird, nach _bashrc umbenannt wird. Dann eine .bash_profile im Homeverzeichnis anlegen und dort folgendes eintragen:
|
Source code
|
1
|
source _bashrc
|
Danach die Shell des Users auf bash ändern:
|
Source code
|
1
|
usermod -s /bin/bash USERNAME
|
Ändert man die Shell ohne die .bashrc nach _bashrc umzubenennen, wird diese durch WinSCP fälschlicherweise ausgeführt. Da mein Script Ausgaben mit echo anzeigt, interpretiert WinSCP diese falsch und man kann per WinSCP nicht mehr connecten.
Normalerweise wird die .bashrc nur ausgeführt, wenn ein Terminal vorhanden ist. Entweder ist das Script von Server4ou kaputtkonfiguriert oder es gibt einen Bug in WinSCP. Woran es genau liegt, hab ich noch nicht weiter verfolgt. Auf jeden Fall wird durch das umbenennen der Bug umgangen. Die .bash_profile wird von WinSCP nicht ausgeführt. Wenn man will kann man die .bashrc auch in ._bashrc umbenennen. Dann muss aber in der .bash_profile anstelle von source _bashrc folgendes angegeben werden:
|
Source code
|
1
|
source ._bashrc
|
Der Punkt am anfang der Datei bewirkt, dass diese versteckt ist und durch den normalen Befehl "ls" nicht angezeigt wird.
Zu dem Problem mit dem SourceTV-Relay-Server:
Fälschlicherweise interpretiert der Befehl tv_relay die Anführungszeichen, welche IP
ort umschließen als Teil der Adresse. Dadurch kann der SourceTV-Relay-Server nicht auf den SourceTV-Master connecten. Das Beispiel im Wiki wurde geändert und ein Hinweis hinzugefügt.