-
Notifications
You must be signed in to change notification settings - Fork 337
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
sys-clone fails to mount cloned sd card on subsequent sync #163
Comments
You're talking about AFAIU, you've cloned from SD-card to EMMC, which works, but then running from EMMC cloning back to SD card fails? Is that right? You could try running
You mean you can mount the SD card after the sync-to-EMMC (but before the sync-back-to-SD), but after the sync-back-to-SD fails, the SD-card is no longer mountable? That suggests to me that the script does something to the SD card that breaks the filesystem. I'd also suggest you add some code formatting to your post (eg. use |
I renamed rpi-clone to sys-clone as I am not using raspberry pi. It is the same code.
I did not use rpi-clone to clone the system to EMMC, I used the Armbian native scripts to do it.
Will do and report
I can mount the SD card after the sync-from-EMMC-to-SD but before doing a subsequent sync from EMMC to SD. If I repeat the sync from EMMC to SD the card is no longer mountable.
Tried that but failed. Will try better. |
This is what comes in the log: |
I've looked at the log, but I'm puzzled why it does not work. It looks like the script mostly just collects info, and then the failing mount of /dev/sdb1 is pretty much one of the first things it does, so I do not see any preceding commands that look like they could kill the FS. The only thing that happens beforehand is setting the FS label, so maybe that breaks it? Maybe you can verify this by trying it manually? e.g.:
|
Everything until
The error text direct translation is "Structure requires cleaning" Edit: |
If I run rsync without the e2label command it works just fine:
What is the e2label command good for? |
It sets the filesystem label. In this case there is none (or it is literally "--", not sure). That should be fairly harmless command, though it does modify the filesystem, and in this case, for some reason, that gets messed up. Maybe you could try running |
Unfortunately same error:
Is the e2label command necessary in the context of rpi-clone? Why is it used here? |
It is used to copy the filesystem label from the source filesystem to the target filesystem, to provide a sync that is as complete as possible. Also, the filesystem label is sometimes used for mounting the filesystem (check So I guess you could remove the e2label command and see if that works (would be a good debug step as well - maybe e2label is not the problem, but just exposes a different problem..) |
After doing the initial sync, I commented the e2label out like so:
Now the subsequent sync works just fine and my SBC boots onto the cloned SD-card, as it should. However, after that sys-clone fails again, if I boot from the EMMC:
|
I have an Orangepi 3LTS running Armbian 23.8.1 Bullseye with Linux 5.15.93-sunxi64. Installed rpi-clone and renamed it to sys-clone by
git clone https://github.com/matthijskooijman/rpi-clone.git cd rpi-clone git checkout support-fsuuid-and-armbian sudo ./rpi-clone device
sys-clone works perfect as long as I have the Armbian system on an SD card. Problems started when I moved the Armbian system to the Orangepi 3 LTS EMMC. The initial sync works, but sys-clone fails to do a subsequent sync complaining that it can not mount the clone disk:
$ sudo sys-clone sdc
The text was updated successfully, but these errors were encountered: