Récupération données après mauvaise manip

mtiburs

Dabbler
Joined
Aug 4, 2012
Messages
22
Salut Titoiman,

Est-ce que tu penses avoir 160Go dans ton pool ? ... ou plus ?
Je suis surpris par la taille restante du pool: 7,26To - 5,20To = ? ... en tout cas la différence ne fait pas 160Go, ça me "chiffonne".

le zpool history n'est pas valable car c'est l'history zfs d'Ubuntu, en fait, il aurait fallut être sur le freenas.

Comme NAS est monté en /NAS, qu'est-ce que tu peux lire si tu fais un ls -lh /NAS ?

tapes:
zdb -s NAS
zdb -C NAS

et donnes le résultat.
 

loulnux

Contributor
Joined
Jul 7, 2011
Messages
149
Il s'agit des 2 To qui ont fait défaut lors de la panne du contrôleur, de plus j'ai peur que Titoiman ait repris le même nom lors de la recréation du volume ce qui ne simplifie pas la tâche...
 

titoiman

Dabbler
Joined
Feb 27, 2012
Messages
15
Bonjour,
merci de votre réactivité. Pour commencer, je pense que les 160Go sont effectivement ceux qui ont été perdu sur les 6To d'espace de mon NAS(oui, je sais c'était mon 1er NAS avec peu de donnéess, maisdes données combien importantes, surtout celles situées dans un dossier précis)
Pour éclaircir certains points, je précise que j'ai 4X4To de disques montés en raidZ1 donc seuls 6 To sont disponibles (ou un peu moins avec les conversion Gb/Go), et lors de la recréation du volume, j'ai effectivement repris le même nom.
En tout état de cause les commandes citées précédemment me font voir les 4 dossiers qui étaient présents avant "l'accident", dont voici les détails:

root@ubuntu:/home/ubuntu# zpool status
pool: NAS
state: ONLINE
status: The pool is formatted using an older on-disk format. The pool can
still be used, but some features are unavailable.
action: Upgrade the pool using 'zpool upgrade'. Once this is done, the
pool will no longer be accessible on older software versions.
scrub: none requested
config:

NAME STATE READ WRITE CKSUM
NAS ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
disk/by-id/ata-SAMSUNG_HD204UI_S2H7J90B816512-part2 ONLINE 0 0 0
disk/by-id/ata-SAMSUNG_HD204UI_S2H7J90B908629-part2 ONLINE 0 0 0
disk/by-id/ata-SAMSUNG_HD204UI_S2H7J90B816485-part2 ONLINE 0 0 0
disk/by-id/ata-SAMSUNG_HD204UI_S2H7J90B816516-part2 ONLINE 0 0 0

errors: No known data errors
root@ubuntu:/home/ubuntu# ls -lh /NAS
total 8.0K
drwxrwxrwx 12 1002 1001 12 2012-01-21 17:45 01-ANAPA
drwxrwxrwx 5 1002 1001 5 2012-02-23 12:34 02-Vanina
drwxrwxrwx 5 1002 1001 5 2012-02-23 12:34 03-Tahiti Mobile film festival
drwxrwxrwx 3 1002 1001 3 2012-02-23 12:34 04-Tahiti Nui ananahi
root@ubuntu:/home/ubuntu# zdb -s NAS
capacity operations bandwidth ---- errors ----
description used avail read write read write read write cksum
NAS 214G 7.06T 86 0 145K 0 0 0 0
raidz1 214G 7.06T 86 0 145K 0 0 0 0
/dev/disk/by-id/ata-SAMSUNG_HD204UI_S2H7J90B816512-part2 68 0 715K 0 0 0 0
/dev/disk/by-id/ata-SAMSUNG_HD204UI_S2H7J90B908629-part2 64 0 722K 0 0 0 0
/dev/disk/by-id/ata-SAMSUNG_HD204UI_S2H7J90B816485-part2 66 0 717K 0 0 0 0
/dev/disk/by-id/ata-SAMSUNG_HD204UI_S2H7J90B816516-part2 61 0 747K 0 0 0 0
root@ubuntu:/home/ubuntu# zdb -C NAS

MOS Configuration:
version: 15
name: 'NAS'
state: 0
txg: 9720
pool_guid: 13164141268255790489
hostid: 8323329
hostname: 'ubuntu'
vdev_children: 1
vdev_tree:
type: 'root'
id: 0
guid: 13164141268255790489
children[0]:
type: 'raidz'
id: 0
guid: 1108585130784
nparity: 1
metaslab_array: 23
metaslab_shift: 31
ashift: 9
asize: 7992986566656
is_log: 0
children[0]:
type: 'disk'
id: 0
guid: 2656382062995956094
path: '/dev/disk/by-id/ata-SAMSUNG_HD204UI_S2H7J90B816512-part2'
whole_disk: 0
DTL: 163
children[1]:
type: 'disk'
id: 1
guid: 14922476795592223392
path: '/dev/disk/by-id/ata-SAMSUNG_HD204UI_S2H7J90B908629-part2'
whole_disk: 0
DTL: 162
children[2]:
type: 'disk'
id: 2
guid: 7458638252484028529
path: '/dev/disk/by-id/ata-SAMSUNG_HD204UI_S2H7J90B816485-part2'
whole_disk: 0
DTL: 161
children[3]:
type: 'disk'
id: 3
guid: 6567663953655977111
path: '/dev/disk/by-id/ata-SAMSUNG_HD204UI_S2H7J90B816516-part2'
whole_disk: 0
DTL: 158


Encore merci pour votre aide.
 

mtiburs

Dabbler
Joined
Aug 4, 2012
Messages
22
En tout état de cause les commandes citées précédemment me font voir les 4 dossiers qui étaient présents avant "l'accident", dont voici les détails:

En fait, je me pose une question bête ... mais ... à partir du moment ou tu fais un ls et que tu vois tes répertoires, pourquoi ne pas aller chercher tes données et les copier dès que possible ailleurs (160Go c'est pas énorme ;-)

si tu fais:
du --max-depth=0 -h /NAS/01-ANAPA
du --max-depth=0 -h /NAS/02-Vanina
du --max-depth=0 -h /NAS/03-Tahiti Mobile film festival
du --max-depth=0 -h /NAS/04-Tahiti Nui ananahi

Est-ce que les tailles correspondraient à celles de tes données ?
Peux-tu te déplacer dans les répertoires ?
 

titoiman

Dabbler
Joined
Feb 27, 2012
Messages
15
Bonjour,

Les commandes "du --max-depth=o -h" me renvoient bien les tailles réelles de ce qui étaient perdues. Je souhaiterais maintenant pouvoir les copier sur HDD externe. Comment se déplacer dans les répertoires sur un DD en RAIDZ1 avec ubuntu? et avec quelles commandes pour copier mes données?
Encore merci.
 

mtiburs

Dabbler
Joined
Aug 4, 2012
Messages
22
Il ne faut pas t'occuper du type de disque (raidz ou autre), ton disque est monté en /NAS donc il n'y a rien a chercher d'autre, le raidz ou le mirroir est avant le système de fichier, là nous sommes dans le système de fichier.

Si tu peux avoir l'interface graphique, tu lances nautilus (ou autre) et tu te déplaces dans "système de fichiers" et tu choisis /NAS (puisque ton pool a été monté dans /NAS), ensuite si tu as un disque dur sous la main, tu copies tes fichiers dessus (fais un "copier" et non un "couper") et tu places tes fichiers sur le disque. Ensuite à toi de voir si tout est bien présent.

Il existe d'autres commandes possibles:
- scp
- rsync ( rsync -vrh --stats --progress --del --force /NAS/ /home/utilisateur/recup/ )
- l'utilitaire mc (midnight-commander) ... apt-get install mc :p

Tu veux copier tes données ou en fait ?

Personnelement, j'utilise rsync, car tu sais ou tu vas, c'est un super système, et puis avec des modules rsync sur ton freenas c'est génial)

t'as un autre ordi avec ssh ?
 

mtiburs

Dabbler
Joined
Aug 4, 2012
Messages
22
J'avais fais une réponse détaillée (qui devait être soumise au modérateur) mais qui visiblement a dû s'échapper, car je ne la vois pas ici après 3 jours, je vais donc recommencer :mad:

Je souhaiterais maintenant pouvoir les copier sur HDD externe. Comment se déplacer dans les répertoires sur un DD en RAIDZ1 avec ubuntu?

Il faut que tu t'enlèves l'idée d'aller dans un disque en RAIDZ: quand tu configures des disques tu choisis un type de système de fichiers et une gestion (RAID, RAIDZ, miroir... ) mais cela se situe à un niveau "bas" (on ne parle pas de fichiers mais de blocs)
Quand tu travailles avec les fichiers directement, c'est à dire quand tu es dans le système de fichiers, tu travailles dans un mode "haut" (là on ne parle plus de blocs).

Donc dans ton cas quand tu fais zpool status tu as l'état du niveau "bas"
Mais quand tu fais zfs list, tu as l'état du niveau "haut"
Et ce que je voulais à tout prix, c'est un point de montage, car c'est le lien entre le pool et les fichiers, et là tu as /NAS en point de montage. Ensuite pour être sûr, je t'ai demandé de faire des ls pour voir si tu pouvais te déplacer dans les fichiers.
Donc, si tu peux te déplacer dans les fichiers :cool:

Allez on va finir:
Essaies de lancer nautilus ou quelque chose comme ça et choisi "système de fichiers" pour aller dans /NAS, et ensuite tu sélectionnes tes fichiers et tu les copies sur un disque externe
en mode graphique tu peux utiliser aussi gnome-commander
Sinon (ouaiiis !!!) tu peux utiliser des outils en ligne de commande, comme:
mc (tu l'installeras par synaptic ou sudo apt-get install mc)
scp (un truc du genre: scp -r /NAS/01-ANAPA /mnt/ton_disque_dur_usb/ ou scp -r /NAS/01-ANAPA adresse_IP:/home/utilisateur/destination )
rsync: le must pour synchroniser des fichiers d'un endroit à un autre (rsync -vrh --del --force --stats --progress /NAS/ adresse_IP:/home/utilisateur/destination )

Bref, tu fais ce que tu veux, sauf un couper/coller ! surtout pas, le but est de mettre tes données à l'abri et quand elles seront en sécurité, tu pourras rejouer avec tes disques en RAIDZ, car il serait bien que tu joues un peu avec avant de remplir tes disques à donf, car faire une structure en RAIDZ c'est bien mais il faut que tu comprennes ta machine.

Il est possible que tu ne puisses pas avoir accès a certains fichiers (voir tous), si c'est le cas, fais un sudo chmod -R 777 /NAS

Reviens si tu n'y arrives pas ou quand c'est fini.
 

titoiman

Dabbler
Joined
Feb 27, 2012
Messages
15
Bonjour tout le monde,
effectivement à question bête réponse bête, il suffisait de lancer une simple copie via, soit la commande cp dans un terminal, soit un simple glisser déposer via l'interface graphique.
Cependant, je n'arrive pas à récupérer toutes mes données. A un moment donné, mon ubuntu plante, et se bloque, où plus rien ne répond (souris, clavier, etc....), et suis obligé de rebooter (à l'aide du bouton reset), mais le pb persiste lors de la prochaine copie. Peut-être est-ce à cause de la taille de la récupération et du fait que mon système soit en live usb? 160Go de données, lors d'une copie ne monopolise -t-elle pas une grosse quantité de mémoire?
En tous les cas, mon pb est à moitié résolu, et je vous en remercie tous.
 

mtiburs

Dabbler
Joined
Aug 4, 2012
Messages
22
A un moment donné, mon ubuntu plante, et se bloque, où plus rien ne répond (souris, clavier, etc....), et suis obligé de rebooter (à l'aide du bouton reset), mais le pb persiste lors de la prochaine copie. Peut-être est-ce à cause de la taille de la récupération et du fait que mon système soit en live usb? 160Go de données, lors d'une copie ne monopolise -t-elle pas une grosse quantité de mémoire?

Je pense qu'il s'agit d'un problème de mémoire (ZFS aime la mémoire), tu as quoi en taille mémoire ?
En fait, il faudrait réduire l'arc_max de ZFS mais ce ne marche pas toujours, le réglage est très fin, il faut un bon compromis sur les 3 paramètres et ta mémoire (vm.kmem_size, vfs.zfs.arc_min et vfs.zfs.arc_max).
c'est normalement dans le fichier /boot/loader.conf
kern.hz="1000"
vm.kmem_size="2.4G"
vfs.zfs.arc_min="512M"
vfs.zfs.arc_max="1.5G"
vfs.zfs.txg.timeout="10"
vfs.zfs.vdev.max_pending="10"
vfs.zfs.vdev.min_pending="4"

(Pour info, je n'ai jamais fais cette manoeuvre sur Linux)

Sinon, pourquoi ne pas remettre tes disques dans le frenas et faire un import automatique ?
 

titoiman

Dabbler
Joined
Feb 27, 2012
Messages
15
Salut mtiburs, et encore merci pour ton aide.
je ne crois pas que je vais tenter la modif du fichier /boot/loader.conf, mais l'importation automatique c'est faisable, car mes disques sont toujours dans le freenas, et que j'ai juste démarrer mon serveur via un ubuntu live usb, donc lorsque je retire mon pendrive, je redémarre sur freenas.
La question qui tue: comment faire une importation auto? alors même que je n'ai pas fait de sauvegarde au préalable?
 

mtiburs

Dabbler
Joined
Aug 4, 2012
Messages
22
La question qui tue: comment faire une importation auto? alors même que je n'ai pas fait de sauvegarde au préalable?

Je n'ai plus de Freenas sous la main :o ... j'ai mis des Nas4Free partout, mais je me rapelle un peu des choix :p
Cliques sur ce lien et vas à la fin de la section 6, tu y verras une image avec à droite et en haut, un choix "import automatique", et puis si ça veut pas, tu passes en ligne de commande et tu tapes zpool import pour voir ce qu'il l'inspire et ensuite si tu vois que ce qu'il trouve est bon, tu peux taper zpool import -a -f (tu l'as déjà fait ... tu peux le refaire). Si tu fais ce genre de manoeuvre, ça ne gènera pas Freenas car lui aussi utiliseras ce genre de méthode à la volée, contrairement à Freenas 0.7 qui se basait sur sa configuration interne.

Par contre, tu ne m'as pas dis ce que tu avais en mémoire ! peut-être que tu veux pas le dire mais saches que si ton problème de mémoire se pose avec ubuntu, il est possible qu'il se pose également avec Freenas, mais peut-être que Freenas fera son propre 'tunning' mieux que la gestion ZFS dans Ubuntu.

De toute façon, tu ne risques pas grand chose avec l'importation, le but pour l'instant est de sauvegarder au plus vite tes données, après tu pourras faire joujou avec ton raidz :rolleyes:
 

titoiman

Dabbler
Joined
Feb 27, 2012
Messages
15
salut mtiburs.
tout d'abord je te remercie encore de m'aider.
Pour commencer je ne vois pas de quel lien tu parles (section 6). Mais si c'est pour faire un "import automatique du volume" via l'interface de freensa, alors il ne le veut pas, et m'indique le message suivant:
Error : [MiddlewareError : The volume "NAS" failed to import, for further details check pool status].
De plus, les commandes zpool import et zpool import -a -f n'ont aucun effet (càd aucun retour sur le terminal).
Enfin, je possède 4Go de RAM DDR3, et je n'ai aucun pb de mémoire avec unbuntu, mais j'ai seulement émis l'idée que la taille de ma mémoire pourrait bloquer la copie (du simple glisser/déplacer) de 160Go de données avec un ubuntu liveusb.
 

mtiburs

Dabbler
Joined
Aug 4, 2012
Messages
22
ça c'est tout moi, j'ai oublié de te mettre le lien :rolleyes:
http://www.durindel.fr/informatique/tutoriel-configuration-de-freenas
(à la fin de l'étape 6)
Mais dans ton cas, ce n'est plus important, car tu as vu de quoi je voulais parler.

Pour la mémoire, c'est un peu juste mais pour 160go ça devrait aller sans soucis, sache toutefois qu'arrivé à une certaine taille, ton système va entrer en panic ou rebooter inopinément. Le système ZFS peut utiliser 1Go par To de disque utilisé, donc si tu as 4 disques de 2To, il te faudra 12Go pour être tranquille (2x4+4syst)
sinon, l'opération de "copie brute" des données demande très peu de mémoire.

Est-ce que tu veux copier sur un disque externe ou une autre machine ?.

- Si disque externe, avec Ubuntu tu fais zpool import -a -f et tu vas dans /NAS et tu copies sur ton disque externe.
- Si c'est sur un autre PC, tu installes ssh sur ton Ubuntu/Live (apt-get install ssh ou en graphique) et tu vérifies par sudo ifconfig l'adresse réseau qui a été allouée, tu ajoutes un utilisateur et un mot de passe, puis, ensuite, sur ton autre machine tu te connectes dessus en ssh (nautilus, mc ou en ligne de commande) et tu te déplaces dans /NAS et tu copies ce qui t'intéresses là ou tu veux.
Tu peux aussi créer un partage sur ta machine distante et aller dessus avec ton ubuntu/live, en fait y'a plein de possibilités

Le tout est d'avoir ton /NAS opérationnel et que ton ubuntu puisse aller sur un disque dur ou une autre machine. C'est en fonction de ce que tu peux faire.
 

titoiman

Dabbler
Joined
Feb 27, 2012
Messages
15
Je remercie tout le monde de m'avoir aidé, en particulier mtiburs qui a su me prodiguer de précieuses pistes.
J'ai fait des copies petit à petit (tous les 6Go) avec un redémarrage de ma bécane ....tous les 6Go pour éviter un freeze complet, et uniquement en mode graphique (glisser/déposer).
Comment mettre le post en résolu?
 

mtiburs

Dabbler
Joined
Aug 4, 2012
Messages
22
Je suis content que tu aies pu retrouver tes données ;-)

Mais est-ce que tout est fini pour autant ?

Tu étais partis sur une structure, tu t'es fais peur avec mais que vas tu faire pour la suite ?

Il faut que tu augmentes ta mémoire et que tu fasses des essais grandeur nature (avec une copie de tes données bien sûr), car si tu as pu récupérer tes données c'est avant tout grâce à ton architecture RAIDZ. Je t'ai fais faire des manipulations prudentes avec l'objectif de récupérer tes données en objectif principal, mais le but au final c'est que tu retrouve un nas fiable et qu'il t'apporte ce que tu attends de lui, c'est à dire "fournir et protéger tes données".
 

Moho89Abd

Cadet
Joined
Jan 16, 2020
Messages
2
hello everyone My problem is : I had a NAS QNAP TS-253A with raid1unfortunately my NAS is crashed , it was mother crad crush,now i wanna know if can i mount the disk with freenas in VMWAREThanc you ,
can you help me pleas
 
Top