/usr/lib, /usr/share, and /usr/bin symlinked to directories on another partition
There are two possible solutions I would consider here:
Figure out what's filling up your root partition, and fix it.
This is probably the right solution -- With a 15GB root partition (and a sane partition layout) you really shouldn't be filling up the root partition.
Of course if the data is legit and the partitioning layout is not sane (e.g./var
is on the root partition) there's probably not much you can do about it.Rebuild the server with a sane partitioning scheme.
If you've legitimately filled the root partition, or your partitioning scheme is not sane, you should rebuild the system with a more appropriate partition layout.
This solution is pretty painful (you're going to have to back up your data, reinstall the system, and restore the data), but it will leave you with a clean machine that doesn't have symlinks or bind mountpoints hanging around where they shouldn't be, for you or some future admin to trip over later.
There are alternate solutions (like aim's suggestion of using bind mounts), but I would consider these to be stopgap measures to buy you time with the system operating while you plan for a real solution.
Use mount with bind option instead of symlinks and you wouldn't have such problems
To do so you can add a few line in your /etc/fstab
(source ; french) :
/home/usr/bin /usr/bin none bind 0 0
/home/usr/share /usr/share none bind 0 0
/home/usr/lib /usr/lib none bind 0 0
The general syntax :
/source /destination none [r]bind[,...] 0 0