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 has vim-6.0-0.27.
This is a VERY irritating bug, and 100% reproducible on RedHat Linux 7.2 with all errata applied: [root@r2d2 /]# rpm -qa |grep "^vi" vim-common-6.0-7.13 vixie-cron-3.0.1-63 vim-enhanced-6.0-7.13 vim-minimal-6.0-7.13 /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. Greetings, Ed.
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 Rawhide.
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