James Frye wrote:
Hi,
I've just installed Fedora 8 on a new machine (Lenovo T61p), and am
having
problems getting tcsh to run correctly. The main problem is that when I exit,
the .history
file is destroyed. It's not that the current session history is not saved. I copied a .history file from my older machine loaded it, and the history mechanism works as expected for that
session.
On restart, though, I find that the .history file has been truncated to 0 bytes.
This has been the default behavior for tcsh for many years. I can't even remember what year that changed ...
Check your .tcshrc -- your savehist may not be correct: here is mine:
set history=999 set savehist=900 merge
I know, that's why I have savehist &c set, just as your example (except different numbers). This isn't a new setup: it's just migrating what does work on my current systems, and has (with ongoing modifications) since long before my first Linux system.
It may not be a good idea to set root's shell to tcsh, since many processes executed as root may depend on bash syntax.
It's always worked before, and if it doesn't, that's a bug in whatever shell script isn't working.
Having installed from source, the tcsh binary may have the wrong permissions:
-> ls -l /bin/tcsh -rwxr-xr-x 1 root root 351528 2007-08-31 03:39 /bin/tcsh*
Or may have been built with less than optimal 'configure' arguments.
Permissions are ok. It does work, and will load/save history if I do it manually, just not automatically on exit. Root also works fine if I do a "source .tcshrc" after logging in.
James