Bitcoin core datadir over NFS
In my view, we cannot move LevelDB index files such as chainstate, etc. to an external slow storage.
According to this link, we should only move the blkxxxxx.dat and revxxxxx.dat files to an external storage. These files are inside ${datadir}/blocks/ by default. Since the index directory (${datadir}/blocks/index) contains high i/o-frequency LevelDB index files, moving it to an external storage will increase the initial blockchain synchronization time.
So take the following steps (I followed the instructions of the link):

run bitcoind.


Let it run for a few minutes, or long enough that it has started synchronizing [ref]


Then kill the bitcoind.

Next, Move the &quot;index&quot; folder up one level (so that it may remain on the local storage):


mv -f ~/.bitcoin/blocks/index ~/.bitcoin/


Move the blocks folder to the shared directory:

mv -f ~/.bitcoin/blocks ~/blockchain/


Create a symbolic (soft) link to the local index directory at blocks directory in the shared storage (use absolute path):

ln -s /root/.bitcoin/index /root/blockchain/blocks/index


Now, create a symbolic (soft) link to the blocks directory at .bitcoin in the local storage (again use absolute path)::

ln -s /root/blockchain/blocks/ /root/.bitcoin/blocks