I had a similar problem, and it was definitely related to doing a tethered jailbreak and then an un-tethered on top (which is not recommended, but hey, I'm lazy
).
If you can connect with WinSCP, then you should be able to rectify the situation. WinSCP allows you to send commands without actually starting a shell, and, for me at least, the problem was with bash. You can confirm this pretty easily by using your SFTP program (or WinSCP, or something similar), and viewing /var/log/syslog after attempting to log in. I saw something like this:
Quote:Apr 15 22:27:36 Apple-TV ReportCrash[93]: Formulating crash report for process sh[90]
Apr 15 22:27:36 Apple-TV sshd[89]: DEAD_PROCESS: 90 ttys001
Apr 15 22:27:37 Apple-TV ReportCrash[93]: Saved crashreport to /var/mobile/Library/Logs/CrashReporter/sh_2011-04-15-222736_Apple-TV.plist using uid: 0 gid: 0, synthetic_euid: 501 egid: 0
You can then view the crash report to see exactly what happened:
Quote:Exception Type: EXC_BAD_ACCESS (SIGBUS)
Exception Codes: KERN_PROTECTION_FAILURE at 0x00000000
Crashed Thread: 0
Thread 0 Crashed:
0 libncurses.5.dylib 0x000c9312 0xb0000 + 103186
1 libncurses.5.dylib 0x000cc242 0xb0000 + 115266
2 libncurses.5.dylib 0x000cc49c 0xb0000 + 115868
3 libncurses.5.dylib 0x000c88d6 0xb0000 + 100566
4 sh 0x0006b650 0x1000 + 435792
5 sh 0x00056f6a 0x1000 + 352106
6 sh 0x0003a86a 0x1000 + 235626
7 sh 0x0000b71a 0x1000 + 42778
8 sh 0x000044b0 0x1000 + 13488
9 sh 0x000062a0 0x1000 + 21152
10 sh 0x00008914 0x1000 + 30996
11 sh 0x0000bc32 0x1000 + 44082
12 sh 0x000040a6 0x1000 + 12454
13 sh 0x00004162 0x1000 + 12642
14 sh 0x00004288 0x1000 + 12936
15 sh 0x00003e78 0x1000 + 11896
16 sh 0x0000202c 0x1000 + 4140
This suggests the problem is an incompatibility between ncurses and the shell (bash) that you are using when logging in. This can probably be fixed by rebuilding ncurses or bash.... but I took the easy way out and installed zsh (again, WinSCP allows you to connect and run commands without running a shell, so you can do apt-get install zsh), and then changed my default shell by editing /etc/master.passwd, and editing the line for 'root' (and mobile if you log in as mobile) so that the log in shell is /bin/zsh rather than /bin/sh.
I know exactly what the jailbreaks install, but installing one on top of the other has introduced some kind of incompatibility -- which I am sure could be fixed, but I didn't bother spending any more time on it... I'm not doing any scripting or anything on it, so zsh is just fine.
Hope this long winded post helps more than it confuses!