My Raspberry Pi, on which I host a Minecraft server, suddenly froze. I cannot not SSH in, nor can I join the Minecraft server. I ran the Minecraft server in Docker, via itzg/docker-minecraft-server. I turned off the Raspberry Pi, took out its microsd and plugged it into my PC, to at least attempt to run the Minecraft server from my PC to see if I still have the data. I tried to copy it with cp, but I got an input-output error. Could this be the filesystem’s fault? And how can I fix this? If you need any additional info about this crash, please do not hesitate to ask.

  • the_crotch@sh.itjust.works
    link
    fedilink
    arrow-up
    7
    ·
    4 months ago

    If you think it’s the filesystem try running fsck. It sounds like a failing storage device to me but there’s not nearly enough information to say for sure

    • Gregor@gregtech.euOP
      link
      fedilink
      arrow-up
      4
      ·
      4 months ago

      Could this possibly result in the loss of data? If so, what’s a simple way to do a backup of an entire disk?

      • explore_broaden@midwest.social
        link
        fedilink
        arrow-up
        7
        ·
        4 months ago

        fsck almost certainly isn’t going to cause loss of data, but it will likely inform you about a loss that already occurred if that is the issue you are having.

      • mvirts@lemmy.world
        link
        fedilink
        arrow-up
        4
        ·
        edit-2
        4 months ago

        ddrescue is probably your best bet

        dd is the simplest: dd if=/path/to/disk/device of=/path/to/backup/file but it may fail with a broken device. ddrescue is similar but handles io errors appropriately and can retry bad reads.

      • the_crotch@sh.itjust.works
        link
        fedilink
        arrow-up
        2
        ·
        edit-2
        4 months ago

        If the disk is failing anything you do that reads or writes it could cause data loss. Even having it plugged in and powered potentially could. It depends on what component of it is failing.

        That being said, fsck is pretty safe. It’s the equivalent of chkdsk in windows, it looks specifically at the filesystem for things that may have gotten screwy.

        ddrescue/gddrescue is your best bet for recovery. It can detect bad blocks and skip them, and it has some p robust resuming capabilities if your disk locks up while.its running. I usually use it to clone entire physical disks to another disk or an image file that can be mounted. I don’t know if it can be used to grab specific files, I’ve never tried.

        If it was me, I’d take the disk out and let it cool to room temperature. Then I’d ddrescue the whole thing, with resume turned on, to an image file. Then I’d run fsck. If fsck finds and recovers filesystem issues, I’d put it back in the pi, continue using it, and start doing regular backups of important files via a cron task.