I am trying to recover the data in an instance in which we don’t know what happened. The data is not super critical but we would like to be able to get it back. The last operation done was to increase the GC Watermark from 100GB to 150GB and when we restarted the server, it didn’t come online. After many trials, it always just hangs up, doesn’t boot properly, and doesn’t shut down with a single interrupt.
These are the only logs that are printed and I cannot connect to API or any other endpoint.
We had roughly ~100GB of data, I’ve created another instance, moved everything there, and started it to see if the issue is “host-related”. But the new server is stuck at this booting state for more than 3 days which I killed at this point.
If I try to run a simple command like ipfs add ipfs_test.txt command when the server is running(but it doesn’t boot up properly as I said), it shows me Error: lock /root/.ipfs/repo.lock: someone else has the lock, and I remember seeing “Merkle dag not found” error when the daemon is not running.
Trying to do a curl on 5001 results in “Connection refused”.
We have the data duplicated in a few locations right after the incident, but I don’t have any clue how to recover from such an error.
We also have a list of IPFS hashes that we used to pin in this instance if it can help with anything.
you can try to directly get the file through ipfs get or cat.
even though your node is ded, if you know the CID you may still get your files back, they are likely to have been cache by other nodes I would say, so you just spend a week or a month monitoring these ID and when some people turn on their computer they might have you data are pieces of it (like how pirating a tv show from 25 years ago works)
but you should take a snapshot of your server first, datas are still there even if your node is dead they are copied into a folder configured in ipfs
What do you mean by reviving? I’ve kept the server open for ~3 days after running ipfs daemon and the IPFS daemon didn’t boot up. Is there a different process for “reviving” other than running ipfs daemon?
Note that if you do this and you had some data that was not pinned (e.g. `ipfs pin ls --type=recursive), but was referenced under MFS that it will no longer be protected from garbage collection so you probably want to not run GC (either manually or with the --enable-gc flag) until you’ve protected your data either via pinning or MFS.
Hey, really thank you for taking your time on this. I cannot run the tool with go under Ubuntu at this point, I’ve opened an issue under your repository.
If you are using a server maybe take a snap shot to back up your data, one way or another. so in case things don’t work out for you, you can reinstall everything, and then copy your data over unless ipfs can be reinstalled without loosing the data.