1
votes

Supprimer le répertoire de Google Cloud Compute Engine à l'aide de la console série

L'espace de stockage de mon instance Google Cloud Compute Engine (par inadvertance) a été complètement épuisé. Je ne peux plus SSH dans mon instance. J'ai augmenté l'espace sur mon instance, mais cela ne me permettra toujours pas de SSH. Mon système d'exploitation VM est Ubuntu.

J'ai essayé deux choses:

1.) J'ai essayé de créer un script de démarrage pour supprimer un grand répertoire pour libérer de l'espace. Sous "métadonnées personnalisées", j'ai défini la clé comme "startup-script" et la valeur comme

#! /bin/bash
sudo useradd tmpuser
echo 'tmpuser:password' | chpasswd

Je sauvegarde et réinitialise l'instance, cliquez sur "se connecter à la console série", mais je ne peux toujours pas SSH.

2.) J'ai essayé d'utiliser un script de démarrage pour définir un nom d'utilisateur et un mot de passe de connexion pour la console série en utilisant la même méthode, mais avec le script suivant: p >

#! /bin/bash
rm /home/myusername/dir-to-rm


4 commentaires

La solution la plus simple consiste à redimensionner le disque dans Cloud Console. Ensuite, redémarrez l'instance. Le système de fichiers racine sera redimensionné automatiquement au redémarrage. Une autre option consiste à déconnecter le lecteur de démarrage, à se connecter à une autre instance, à monter dans un répertoire et à l'espace de nettoyage.


@JohnHanley Merci! J'ai essayé de redimensionner le disque et de réinitialiser la machine virtuelle, mais j'ai toujours le même problème. Pour suivre votre deuxième suggestion, y a-t-il de bonnes ressources / tutoriels pour le faire, je suis hors de ma profondeur en essayant de comprendre comment faire tout cela.


J'ai écrit un article qui explique le processus pour Debian. La même chose pour Ubuntu. jhanley.com/google-cloud-debian-9 -resize-root-file-system Suivez mon document. Si vous rencontrez toujours des problèmes, capturez la sortie de la console que je montre dans mon article afin que je puisse vous dire ce qui ne va pas.


Remarque: redémarrez l'instance. Capturez toute la sortie du port série. Si vous pouvez me fournir un lien pour télécharger la sortie, je vais regarder la trace de la console. Faites cela si vous rencontrez toujours des problèmes après mon article.


3 Réponses :


1
votes

Vous pouvez monter le disque dans une autre instance, supprimer le répertoire et remonter.

Voici les détails

  1. Arrêtez votre instance actuelle
  2. Modifiez l'instance, supprimez le disque de l'instance.
  3. Créez une nouvelle instance et attachez le disque ci-dessus en tant que deuxième disque
  4. Démarrer la nouvelle instance
  5. Ssh dans la nouvelle instance
  6. Monter le deuxième disque mount / dev / sdb1 / mnt
  7. Supprimez le répertoire: rm / mnt / home / myusername / dir-to-rm
  8. démontez le disque et arrêtez l'instance
  9. Rattachez le disque à l'instance d'origine en tant que disque de démarrage
  10. Démarrer

0 commentaires

0
votes

Je suggérerais de créer un instantané à partir de votre instance de VM [1], puis de créer un disque en utilisant l'instantané que vous avez créé. Après cela, créez une nouvelle instance à l'aide du disque nouvellement créé et essayez de ssh. Vérifiez si vous pouvez accéder à tous vos fichiers dans l'instance nouvellement créée via SSH.

[1] https://cloud.google.com/compute/ docs / disks / create-snapshots

J'espère que cela vous aidera.


0 commentaires

1
votes

J'ai donné de mon temps pour aider cette personne depuis qu'il est étudiant. Le temps total de récupération était d'environ une heure.

Le problème a été causé par un système de fichiers corrompu. La réparation du système de fichiers a corrigé le problème. J'ai ensuite redimensionné le disque plus grand pour fournir plus d'espace libre.

Lors du démarrage, les interfaces réseau n'ont pas pu se charger. Ceci, bien sûr, empêche toute forme de connectivité. C'est pourquoi SSH ne fonctionnait pas.


0 commentaires