I have an Amazon EC2 instance which has given me a tiny '/' partition and a large '/mnt' partition. As such, I have moved my mysql data-dir over to the /mnt partition. However I am now having issues with the /tmp folder running out of space on my massive join queries and am trying to also move /tmp to /mnt/tmp. I tried to do this with a symlink but that results in the mysql service being unable to start.
Please advise on how to move the storage of /tmp over to /mnt (/dev/xvdb)
You can bind the
/tmp
mount point to/mnt/tmp
:Moving a "/tmp" partition requires some extra not suggested in this wrong answer https://askubuntu.com/a/371628/298086.
Moving data implies erase data from original partition once cloned to destination one, what is absolutelly not performed by a bind mount.
If you give a try to the right mount option ("MOVE", not bind):
I'm convinced it will fail reporting that "tmp is a shared mountpoint" (what indeed means "I cannot move a mountpoint if still being any process using it")
The "answer" you are looking for, may require stopping and restarting services using/accessing /tmp, before moving content.
You can list those services/processes by running:
So once you listed what is actually accessing/using
/tmp
, is when you can reallly decide "how to act".In my opinion most safe way passes-by
But there is another way what does not require system restart, but is not safer as previous one. It is described here and consists in umounting
/tmp
in a lazy way, what should allow you to executemount -M
This two links will be helpful for your demand: