SDCard Unreliable - Move all RP to USB card? Or fix SD?
-
I have a Pi3B and RetroPie running on it. The ROMS are on a USB drive and I put the main system on an SD card. I'm running into a problem since my arcade machine is in our barn. The short version is that sometimes we get power flickers in the barn and things shut down. When I am the last to use my arcade system, I turn it off. As you can imagine, I'm not always the last, so sometimes it's left on.
The problem I'm encountering is that every time the system is not turned off, when we lose power or have a power flicker, the arcade machine goes down. Then when I turn it on, it won't reboot. I bring the SD card up to the house where I can plug it into a Linux computer. I've found that all I have to do is mount it on the computer and read it. Even just 'ls' for the root directory is enough. Then I take it back down, put it in, and my RetroPie system starts right up.
In contrast, the directory structure on the USB card never shows signs of damage and the ROMs and everything else on it seem fine.
I'm thinking I have two choices:
-
Find a way to 'fix' the SD card so I don't have issues with when the system loses power. Maybe there's some kind of command I can run periodically to clear caches or something? Or some other way to keep that file system intact. (As I said, just reading it on another computer fixes the situation.)
-
Move my RP system to the USB card. (There's more than enough room.) I don't know if it'll boot from there. (I always keep /boot separate from the rest of the system, as in putting it on a separate partition, and I'd have to recopy everything to the USB card so I could repartition it if I did that.)
Is there an easy way to move an entire RP system from SDRAM to a USB drive?
Or any suggestions on what I can do with the SD card so it'll reboot after a less-than-clean unmount and shutdown?
-
-
Do you get any errors when you boot the system after a power failure ? Anything related to the file system ?
You could move your entire system to an USB stick, for the Pi3B there's an OTP bit that needs to be enabled in order to boot directly from the USB and then you can flash the SDcard image directly onto the USB card (like it would be another sdcard). You would have to expand the filesystem on the 1st boot in order to fill up the USB and then transfer your ROMs to it.
-
@mitu After a power failure, I just get the red LED. I can't remember if it's blinking or solid - it's the opposite of whatever it should be during that short stage of booting, before the LED changes. I never see any info or anything on the display to indicate it's booting. If that makes it a Pi issue rather than a RetroPie issue, I can seek help based on that.
I'd rather not install a new system, since the current one has all my settings, not just for RP, but for Samba and everything else, so if it's possible to just copy it to the USB drive, I'd rather do that. (And I figure I'm going to have to change /etc/fstab for that, including changing UUID numbers used for partition ID.)
If my problem with the SD card is something I can patch or fix, I'd be fine with that - since it means no copying files and so on.
-
@tango said in SDCard Unreliable - Move all RP to USB card? Or fix SD?:
After a power failure, I just get the red LED.
Have you tried removing and then re-attaching the power plug to the Pi ? A non-blinking RED led usually means the Pi is just stopped.
I'd rather not install a new system, since the current one has all my settings, not just for RP, but for Samba and everything else, so if it's possible to just copy it to the USB drive, I'd rather do that. (And I figure I'm going to have to change /etc/fstab for that, including changing UUID numbers used for partition ID.)
You can take backup your current sdcard's image and flash it on an USB drive - it should work as long as the RPI3 is configured to boot from USB.
-
@mitu Yes, when I've had this happen, I've pulled the plug, given it time, then plugged the Pi back in. It still happens the same - red LED remains on and nothing boots. Then I take the SD card, plug it into an SD reader on my Linux system and can't find anything wrong with it. All I do is mount the card on my computer, click on one folder in the GUI, or
ls
a folder, or even just do nothing other than mount it. After that, I unmount it and take it back to the arcade system and it boots perfectly.I'll go on and try moving it all to the USB stick. I'm sure I'll have to change the UUID numbers in /etc/fstab, but I'm hoping that's all I have to change. And, of course, reconfigure to boot from USB. (Is there a boot order, so if I leave the SD card out all together, it might try the USB?)
-
@tango said in SDCard Unreliable - Move all RP to USB card? Or fix SD?:
Is there a boot order, so if I leave the SD card out all together, it might try the USB?
I think that on the Pi3 you can't choose the boot order, it will always try to run from USB first, then sdcard. That should be ok though, if you wish to boot from sdcard you'll need to remove the USB stick/disc first.
-
@mitu I think that's either reversed or only after I change the OTP bit, since I currently have the SD card with /boot and the RP system on it and my USB stick and it boots the SD, even with both in.
Or does it do that because I have no boot sector or boot programs on my USB stick?
I know this may be picky, but I'm asking to be sure I understand. Thank you for your patience!
-
@tango said in SDCard Unreliable - Move all RP to USB card? Or fix SD?:
Or does it do that because I have no boot sector or boot programs on my USB stick?
If you haven't programmed the OTP bit for USB boot, the Pi will always boot from sdcard.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.