Restaurer PI à partir de Pi lui-même

8

Je viens de commencer à jouer avec un modèle b framboise pi + Je suis assis depuis des lustres et j'avais une question? Est-il possible de restaurer un Raspberry Pi à partir de lui-même?

Par exemple: Puis-je mettre une image sur la carte microSD, puis redémarrer le Pi pour installer la nouvelle image en effaçant tout ce qui était précédemment installé et recommencer? Est-il possible de le faire sans autre ordinateur pour formater et imager la carte SD? J'ai actuellement installé raspbian si cela aide.

TommyBs
la source

Réponses:

8

Pas assez. Vous écraseriez les tables de partition lorsque vous la réimaginez et remplacez lesdites tables par celles de l'image. Une fois votre programme d'imagerie terminé, il libérerait le descripteur de fichier dans le fichier image, mais comme la partition où le fichier est stocké techniquement n'existe plus, votre programme ne peut plus le relire. En théorie, cela ne fonctionnerait qu'une seule fois.

De plus, le fichier doit se trouver à la fin de l'espace de stockage pour ne pas être immédiatement écrasé.

Ou du moins, c'est ainsi que je pense que Linux traite les fichiers. La dernière fois que j'ai essayé cela (je l'ai fait il y a quelques mois), le Pi vient de se bloquer. Sur la base de cette expérience, vous avez vraiment besoin d'un autre ordinateur pour réimager la carte SD.

Une alternative serait d'utiliser la méthode NOOBS et de stocker les fichiers de démarrage sur une partition distincte, puis de démarrer sur NOOBS ou sur un système d'exploitation s'il est installé. NOOBS fait déjà un peu ce que vous avez dit, mais au lieu de réimaginer l'intégralité de la SD, il ne remplace que les partitions du système d'exploitation. Ce lien indique comment NOOBS fonctionne.

PNDA
la source
5
Techniquement, vous pouvez le faire en utilisant (ou peut-être même en chrootant avec) un système racine basé sur la RAM (et soit une très petite image personnalisée, soit une du stockage USB), mais je pense que cela dépasse le niveau de compétence de la plupart des utilisateurs pour en valoir la peine. . L'utilisation d'un système avec un FS racine sur un autre appareil serait plus facile, mais pas très utile à moins que ce soit ce que vous faites pour commencer.
goldilocks
@goldilocks J'essaierai peut-être un jour. Si ça paye, je l'ouvrirai.
PNDA
3

Avec une carte SD suffisamment grande, vous pourriez avoir 2 options de démarrage utilisables - et manipuler celle qui n'est pas utilisée, ce qui est bien, puis mettre à jour grub & reboot vers le nouveau système d'exploitation.

Vous ne pouvez pas écrire sur les partitions du système d'exploitation actuellement montées sans un crash spectaculaire, du moins pas en gros comme vous le demandez. Pas moins, Linux met en cache les données afin que votre nouvelle écriture soit bollixée lorsque le cache vide les anciennes données sur la nouvelle ...

Mark Williams
la source
0

Cela peut être fait si vous divisez l'opération en plusieurs étapes. Avec l'aide d'une distribution basée sur la RAM , comme par exemple mon projet Nard , on peut libérer la carte SD pour des opérations complexes.

  1. Extraire le contenu de / boot de Nard (ou autre distribution similaire)
  2. Effacez tout sur votre carte / boot SD Raspbian actuelle
  3. Stockez Nard / boot / * sur la carte SD Raspbian / boot
  4. redémarrer
  5. Vous devriez maintenant exécuter à partir de la RAM et ainsi vous pouvez faire tout ce que vous voulez avec la carte SD, comme télécharger l'image dont vous avez besoin et essuyer la SD entière avec quelque chose de nouveau.
Ronny Nilsson
la source
0

On dirait que vous pourriez utiliser rpi-clone? J'utilise rpi-clone tous les jours depuis quelques semaines pour cloner mon RPi3 sous Raspian Jessie. Il faut environ 10 minutes pour cloner sur une deuxième carte Micro SD. J'éteins ensuite, retire les deux cartes, stocke l'original et démarre en utilisant le clone. Par conséquent, je sais que la sauvegarde fonctionne. Je fais pivoter 3 cartes de cette manière, afin d'avoir toujours une carte en sécurité. Ça marche pour moi ;-)

Geoff
la source
0

Sûr que vous pouvez. Maintenez simplement la touche Maj enfoncée lorsque l'écran blanc / gris apparaît. Il vous le dit même à l'écran.

Chiwda
la source