web-dev-qa-db-fra.com

Déplacer le dossier tmp de la partition '/' vers la partition montée (/ mnt)

J'ai une instance Amazon EC2 qui m'a donné une petite partition '/' et une grande partition '/ mnt'. En tant que tel, j'ai déplacé mon répertoire de données mysql vers la partition/mnt. Cependant, je rencontre maintenant des problèmes avec le dossier/tmp qui manque d’espace pour mes requêtes de jointure volumineuses et je tente également de déplacer/tmp vers/mnt/tmp. J'ai essayé de faire cela avec un lien symbolique, mais cela empêche le service mysql de démarrer.

Veuillez indiquer comment déplacer le stockage de/tmp sur/mnt (/ dev/xvdb)

15
Programster

Vous pouvez lier le point de montage /tmp à /mnt/tmp:

Sudo mount -B /tmp /mnt/tmp
12
Braiam

Déplacer une partition "/ tmp" nécessite des informations supplémentaires qui ne sont pas suggérées dans cette mauvaise réponse https://askubuntu.com/a/371628/298086 .

Déplacer des données implique d'effacer les données de la partition d'origine une fois clonées vers la destination, ce qui n'est absolument pas effectué par un montage lié.

RECOMMANDATION: Lisez ce billet génial si vous voulez comprendre ce qu'est un montage lié. https://unix.stackexchange.com/a/198591

Si vous essayez le right option de montage ("MOVE", pas bind):

mount -M /tmp /mnt/tmp

Je suis convaincu que les échecs signalés "tmp est un point de montage partagé" (ce qui signifie en réalité "je ne peux pas déplacer un point de montage si aucun processus ne l'utilise")

La "réponse" que vous recherchez peut nécessiter l’arrêt et le redémarrage de services utilisant/accéder à/tmp, avant de déplacer du contenu.

Vous pouvez lister ces services/processus en exécutant:

lsof +D /tmp/

Donc, une fois que vous avez répertorié ce qui est réellement en train d’accéder/d’utiliser /tmp, c’est quand vous pouvez réellement décider "comment agir".

À mon avis, le moyen le plus sûr de passer

  1. Arrêt de tous les services accédant à/tmp (si vous pouvez le faire)
  2. Copier entièrement/tmp le contenu dans un nouvel emplacement
  3. Modification de/etc/fstab et modification de l’emplacement physique du point de montage/tmp (qu’il s’agisse d’un montage Bind ou Device)
  4. Redémarrage du système pour effectuer le remontage

Mais il existe un autre moyen qui ne nécessite pas de redémarrage du système, mais n’est pas plus sûr que le précédent. C'est décrit ici et consiste à démonter /tmp de manière lazy, ce qui devrait vous permettre d'exécuter mount -M

Ces deux liens seront utiles pour votre demande:

2
xsubira