Hi Jack, On Wed, Sep 07, 2005 at 03:57:59PM -0700, Jack Offerman wrote: > On 9/7/05, Larry Hall <[EMAIL PROTECTED]> wrote: > > At 12:33 PM 9/7/2005, you wrote: > > >When "ssh host" works but "sftp host" doesn't, where should I look? > > > > > >I appreciate your help. > > > > I guess you could try starting the server with debugging turned on and > > see what you get from the logs there. Results from that are usually > > more instructive. > > > It started working again after I changed /etc/passwd. > When I recreated the file by doing mkpasswd -l, I also > hand-editted something. That is the last part of the line, > the login shell. Originally it was bash, and I changed it > to tcsh. Being a tcsh fan all my life, I've always hated > when I had to type "tcsh" right after logging in on a ssh > session because the login shell is bash. When I did > mkpasswd, I thought it was a perfect time to change > my login shell to tcsh. And I was happy with the result: > tcsh running as a login shell. > > With tcsh as a login shell, however, sftp didn't work. > With bash, it is working now. So I take it.
IIRC, sftp is picky about what the shell will print on its stdout when launched in non-interactive mode (this can be seen with $?prompt == 0 in tcsh)... If your .tcshrc or .login files print stuff out, you will most likely disrupt sftp's "handshaking"... try running 'tcsh /bin/true' and see if anything comes up on your terminal and enclose the culprit pieces of your "dot-files" inside a if ($?prompt) Good luck, Sebastien
signature.asc
Description: Digital signature