Système de fichiers Linux Block Device: Stocker / Enregistrer et charger au redémarrage

0

Scénario: création d'un système de fichiers Block, monté [mount / dev / sbd0p1 / mnt] et echoe'd [echo Hi> / mnt / fichier1] [ http://blog.superpat.com/2010/05/04/a- simple-block-driver-for-linux-kernel-2-6-31 / comment-page-2 / # comment-214357]

Tâche: Je dois copier ce montage (ou ce fichier dans le montage) quelque part - En gros, une réplique qui ne sera pas perdue à la fermeture / redémarrage, sur laquelle je peux compter au lieu du fichier RAM monté - Pour que, lors du redémarrage, je devrais être en mesure de charger à partir de ce montage copié (ou fichier copié dans le montage) au lieu de l'original dans la RAM qui serait perdu au redémarrage.

Cherché un peu, ne pouvait pas obtenir beaucoup d'indicateurs. Quelqu'un peut-il donner une solution exacte s'il vous plaît.

Note: Je ne suis pas un pro des noyaux, j'ai besoin de ça comme solution intermédiaire pour autre chose. Merci! -Sree

sreekesh padmanabhan
la source
"un système de fichiers Block" - rien de tel. Un système de fichiers est toujours basé sur un périphérique en mode bloc. Mais il n'y a pas de type de système de fichiers nommé "block" . "ceci en tant que solution intermédiaire pour autre chose" - Drapeau rouge pour le problème XY possible.
sciure de bois

Réponses:

0

Vous pouvez utiliser dd pour vider le système de fichiers brut de la mémoire

dd if=/dev/sbd0p1 of=/home/user/somefile.raw

Après cela, vous pouvez monter le fichier en tant que système de fichiers

mount -t vfat -o offset=512 somefile.raw /mnt/
DrNoone
la source
Merci Dr! Pourquoi pas ceux-ci (d'après ce que j'ai parcouru jusqu'à maintenant): 1.cat / dev / mem ram.dat 2.rsync?
Commentaires
"" "" .... dd if = / dev / mem of = mem.dump bs = 1 skip = 10000 count = 5000 ... pour vider 5000 octets à partir du décalage 10000. Je ne suis pas sûr à 100% de ce que effet de lire le / dev / mem comme cela sera. Une chose à surveiller est que vider la mémoire affectera sans aucun doute la mémoire ... pour ne pas obtenir un instantané instantané. Vous feriez mieux de vider une machine virtuelle ou d’utiliser un débogueur matériel. "" "" Dr, y at-il un problème d’espace à prendre en compte?
Commentaires
Vous ne devez pas utiliser cat / dev / mem car vous videz ainsi toute la mémoire (dans une partie de celle-ci, la mémoire correspond au disque que vous avez créé, mais vous devez la trouver). Pour votre besoin, utiliser chat ou dd est équivalent
DrNoone le
Merci!! root @ ubuntu3: ~ # fdisk -l Disque / dev / sbd0: 512 Ko, 524288 octets, 1024 secteurs Unités: secteurs de 1 * 512 = 512 octets Taille du secteur (logique / physique): 512 octets / 512 octets Taille I / O (minimum / optimal): 512 octets / 512 octets Type de label: dos Identificateur de disque: 0x25007266 / dev / sbd0p1 1 1023 1023 511.5K 83 racine Linux @ ubuntu3: ~ # sudo mount -t boucle auto -o, offset = 512 / home /ubuntu3/fs.raw / mnt / mount: type de fs incorrect, mauvaise option, superbloc incorrect sur / dev / loop0, page de code ou programme auxiliaire manquant ou autre erreur - essayez dmesg | queue ou si.
Commentaires
Essayé avec "mount -t auto" aussi comme dans certains forums, mais obtenez ce "type de fs incorrect, mauvaise option, mauvais superbloc sur / dev / loop0" erreur!
Commentaires