If you use 2.2.x kernel with UMSDOS version before 0.85g, or 2.3.x+ kernel with UMSDOS version below 0.86g, your hardlink handling is somewhat broken. So, grab latest UMSDOS patches to fix it! This can create problems with some password suites (trashed /etc/passwd or inability to change password, also mangled lp printer queue etc.).

If you are upgrading from 2.0.x kernels or from early 2.2.x kernels, and your hardlinks are no longer working correctly, and your root partition was UMSDOS, here is a idea how to fix it. I haven't really tested it, but if you are short on space for full backup and plan to erase everything anyway, you may want to try this:

(1) boot old kernel and backup all hardlinks
# make a list of all hardlinks
find / -type f -links +1 > /hardlinks_list.txt
# backup all hardlinks (preserving info they are hardlinks!)
cpio -o < /hardlinks_list.txt > /hardlinks_backup.cpio
# remove all hardlinks and files! make sure you don't need any of them
# for normal system operation first!
rm `cat /hardlinks_list.txt`

(2) boot new kernel and restore all hardlinks
# restore cpio archive
cpio -iv < /hardlinks_backup.cpio
# now check that everything is fine, and erase leftovers
rm -f /hardlinks_list.txt /hardlinks_backup.cpio
Ta-da! Now your hardlinks should work nice in both pseudo-root and non-root UMSDOS filesystems, but are off course no longer compatible with old ones used in previous kernels.