Red Hat Bugzilla – Bug 37412
crontab -e not working when /tmp -> /usr/tmp
Last modified: 2007-04-18 12:32:49 EDT
crontab -e tells me "crontab: no changes made to crontab" no matter what I
do. Except, if I change /tmp to be a directory instead of being a symlink
to /usr/tmp, it starts working fine.
P.S. I believe this is _not_ a duplicate of bug #25992 since RH 7.1 already
This is a VERY irritating bug, and 100% reproducible on RedHat Linux 7.2 with
all errata applied:
[root@r2d2 /]# rpm -qa |grep "^vi"
/tmp -> ./var/tmp
I've used 'ls -li' to check the /tmp/crontab.<pid> files while editing crontabs,
and VIM definitely writes the file out using a different inode.
This appears to be the source of the problem; changes are ignored since the
changes were saved to a file with a different inode.
This used to work under lower revisions of RedHat.
I also have /tmp -> /var/tmp and am seeing this issue on a Red Hat 7.2 box,
however setting EDITOR to something other than vi (such as emacs) makes "crontab
-e" work as expected. Perhaps vi has problems with temporary files on some systems.
It is a bug of vim.
This problem still exists in 7.3
This problem still exists with vim-6.1-4 and vixie-cron-3.0.1-67 from a recent
This is still a bug with RH AS v2.1. I have /tmp linked to /var/tmp and I
unable to save crontab -e entries. My workaround is to remove the link, update
my crontab entries, then put the link back.
Please fix this bug. It is years old.
Should crontab -e edit /etc/crontab by default?
btw bug 90981 seems to have a fix for this
tested with the current vim-6.3-029, cannot reproduce it anymore