How can I recover data from a faulted pool?

Александр Поволоцкий tarkhil at webmail.sub.ru
Tue Jul 18 20:09:22 UTC 2017


I've mounted them, but in wrong order. so database/mysql/innodb got 
mounted before database/mysql/myisam, mocking empty directory. As soon 
as I've repaired my tooth, I've realized it


18.07.2017 22:42, Volodymyr Kostyrko пишет:
> Александр Поволоцкий wrote:
>> Everything is fine. The problem was in mounting order, so I did not see
>> files. And I could not think properly because of tooth pain))
>
> Yeah, maybe I hadn't pointed that out properly but you will get pool 
> imported but no filesystems mounted. This can help in case when some 
> fs is badly damaged and triggers assert on mount. So you will still 
> need to mount required fs by hand.
>
>>
>>
>> 15.07.2017 16:52, Volodymyr Kostyrko пишет:
>>> Александр Поволоцкий wrote:
>>>> Hello
>>>>
>>>> FreeBSD 10.3. ZFS.
>>>>
>>>>  # zpool status
>>>>   pool: database
>>>>  state: UNAVAIL
>>>> status: One or more devices are faulted in response to persistent
>>>> errors.  There are insufficient replicas for the pool to
>>>>         continue functioning.
>>>> action: Destroy and re-create the pool from a backup source. Manually
>>>> marking the device
>>>>         repaired using 'zpool clear' may allow some data to be
>>>> recovered.
>>>>   scan: none requested
>>>> config:
>>>>
>>>>         NAME               STATE     READ WRITE CKSUM
>>>>         database           UNAVAIL      0     0     0
>>>>           mirror-0         UNAVAIL      0     0     0
>>>>             gpt/database0  FAULTED      0     0     0  too many errors
>>>>             gpt/database1  FAULTED      0     0     0  too many errors
>>>>
>>>> disks can be read, can I somehow recover data from the pool?
>>>
>>> For sure... First please describe what happened to both disks and what
>>> hardware you were using (chipset/controller). Please don't try to
>>> `zpool clear` yet.
>>>
>>> 1. ZFS *HEAVILY* relies on hardware to be stable, any hardware
>>> glitches may result in severe pool corruption. If you have any doubts
>>> in hardware first move the disks to the trusted box.
>>>
>>> 2. I assume both mirror parts were on different disks? ZFS doesn't
>>> like pools that have more then one chunk on any drive.
>>>
>>> 3. Try mounting pool R/O with transaction recovery. While this is
>>> mirror please do this for both disks and give it another try for
>>> single disks as results may differ:
>>>
>>> `zpool import -N -O readonly=on -f -R /mnt/somezpoool …`
>>>
>>> You can use mfsBSD for that.
>>>
>>> If that doesn't help try:
>>>
>>> `zpool import -N -O readonly=on -f -R /mnt/somezpoool -Fn …`
>>>
>>> Both commands will try to import the pool without mounting file
>>> systems in r/o mode. If that would work, try mounting only required
>>> filesystem and copy some data from it.
>>>
>>> Please post your results.
>>>
>>
>> _______________________________________________
>> freebsd-fs at freebsd.org mailing list
>> https://lists.freebsd.org/mailman/listinfo/freebsd-fs
>> To unsubscribe, send any mail to "freebsd-fs-unsubscribe at freebsd.org"
>
>



More information about the freebsd-fs mailing list