Reply
Thread Tools
Community Council | Posts: 4,920 | Thanked: 12,867 times | Joined on May 2012 @ Southerrn Finland
#41
Originally Posted by frogjump View Post
Anybody got the mmcblk0p28 ? and can send to me?
Did a stupid thing and now my Jolla only shows logo,recovery mode dont help.
I doubt anyone's going to send you the image, it is where all private stuff is kept...
__________________
Dave999: Meateo balloons. What’s so special with em? Is it a ballon?
 

The Following 2 Users Say Thank You to juiceme For This Useful Post:
Posts: 7 | Thanked: 3 times | Joined on Dec 2014
#42
Originally Posted by juiceme View Post
I doubt anyone's going to send you the image, it is where all private stuff is kept...
There where a file before but cannot find it anymoore,jolla-sailfish-1.0.8.21.tar.xz
just send a private message If someone know where to get It
Edit..I see It was removed,Jolla care then

Last edited by frogjump; 2014-12-22 at 10:53.
 
Posts: 248 | Thanked: 1,142 times | Joined on Dec 2014 @ Earth
#43
It's 2017 now and I'm still using a Jolla 1 phone.

My BTRFS partition got corruption.
(One log entry causes the kernel to segfault while trying to replay).

I made the mistake of trying the recovery mode without much checking.
I ended up with a partition with cleared checksum, that still doesn't mount in-kernel (Still the same replay-log segfault).

Luckily, I can recover nearly every file I need from my busted partition (thank you BTRFS's Copy-on-Write !!!) using btrfs tools which will use whichever copy happens to not be busted.

Now instead of trying to rebuild a functioning BTRFS partition myself....
(which would be possible at this point but tedious - recovery mode lost the checksums, btrfs tools doesn't save the posix access rights, and I still need to fix the segfault causing log entry. So quite some work until phone is up again)
...I wanted to know if anyone happens to have a useable "factory-@" Image file ?

(Jolla Care are slow to answer my Zendesk ticket, and as mentioned above, it's not possible to publish it on web due to copyrighted bit from Qualcomm)
 

The Following User Says Thank You to DrYak For This Useful Post:
Posts: 248 | Thanked: 1,142 times | Joined on Dec 2014 @ Earth
#44
Originally Posted by DrYak View Post
...I wanted to know if anyone happens to have a useable "factory-@" Image file ?
Update:

My laptop's btrfs restore works even better and I got everything I wanted out of the busted partition.

I managed to rebuild a new BTRFS partition with both the recovery bits ( 'factory-@', etc. ) and the regular subvolumes ( '@', '@home' ).

I replaced mmcblk0p28 and now I've got everything back working, not even needing to do a factory reset.

("Copy-on-Write", bitches ! It works)
 

The Following 3 Users Say Thank You to DrYak For This Useful Post:
Amboss's Avatar
Posts: 237 | Thanked: 502 times | Joined on May 2010 @ Mittelfranken, Germany
#45
Argh, I had send in my Jolla for service to Finland.See here.
They actually had to change mainboard because it was completely dead. So I had it back now for three weeks or so,everything set up again, as far as possible since I didn't have a full backup and only an older one from backup function.
Last week I found it on my table stuck on boot screen. This time I could get into recovery mode, but...

I thought, the option in that menu are actually to be used! Naah, almost everytime I tried something, it disconnected telnet. An everytime I tried again, I made it worse. factory-@ was broke pretty early maybe even form the beginning.

Yesterday I finally got around to make my own image file from the remaining pieces, while adding missing pieces from /@ which I thought were part of the original image (mostly translations). It seems, it was not enough to be recovered Tar complained about errors while packing and unplacking as well.

I am proud to at least make it to the next stage: It went from bootloop to "trying to revover file system" but ends at "please seek service".

Could someone help me out with advice or even factory-@? factory-@home seems to be OK. I understand, these parts don't contain personal information as with the other 2 subvolumes.
 

The Following 2 Users Say Thank You to Amboss For This Useful Post:
Amboss's Avatar
Posts: 237 | Thanked: 502 times | Joined on May 2010 @ Mittelfranken, Germany
#46
*BUMP*

Sorry to doublepost. I could still use some help here. I already contacted jolla support, but they seem to be busy shipping sailfish X.

Where could I get help from? For a start I would at least try to confirm contents of factory-@ just to be sure of it's completeness.
 
Amboss's Avatar
Posts: 237 | Thanked: 502 times | Joined on May 2010 @ Mittelfranken, Germany
#47
I managed to build a new image too. There were some files missing from originial, if I found all that is. I added them from my regular linux machine as there were all public files like /zoneinfo folder and xmls in /application.

But:
When I write the new image to mmcblk0p28 everything seems fine, btrfs check gives no errors.
After reboot, I get the "trying to recover" followed by "seek service" I mentioned above.
When doing another btrfs check, file system is now broken again with lots of csum erros and more.

What am I missing?

btw: asking on #jollamobile or zendesk seems to not help. Please help somebody!!
 
Posts: 248 | Thanked: 1,142 times | Joined on Dec 2014 @ Earth
#48
Originally Posted by Amboss View Post
Naah, almost everytime I tried something, it disconnected telnet. An everytime I tried again, I made it worse.
Actually, trying to fsck a BTRFS partition is a VERY BAD idea.
(Same applies for other CoW filesystems like ZFS and log-structured filesystems like UDF and F2FS).

The best is to always simply try to get an early version (before the "copy" part of Copy-on-Write).

For BTRFS, things that might help :
- mounting with "recovery" (will scan back the older copies until it finds the latest usable) (for kernel 4.6 and newer, its now called "usebackuproot")
- mounting with "nologreplay" (completely ignore the journal log)
- using "btrfs restore -s -x -m -S -i " on an image transfered to a laptop.

Originally Posted by Amboss View Post
When I write the new image to mmcblk0p28 everything seems fine, btrfs check gives no errors.
By write, you mean you DD an image file over the raw device.
Not that you mount the (perhaps corrupted) partition and untar your files inside ?

By check you mean mount and "btrfs scrub start" ?

Originally Posted by Amboss View Post
When doing another btrfs check, file system is now broken again with lots of csum erros and more.
To me, that looks like a broken btrfs partition.
If you have some place where I can send you the file (FTP server ? Something else ?) I can send you my recovery partition.

I just can't post it publicly, because it contain non-public code (mostly driver and blobs from Qualcomm which make it illegal to post online).
 

The Following User Says Thank You to DrYak For This Useful Post:
Amboss's Avatar
Posts: 237 | Thanked: 502 times | Joined on May 2010 @ Mittelfranken, Germany
#49
Originally Posted by DrYak View Post
Actually, trying to fsck a BTRFS partition is a VERY BAD idea.
(Same applies for other CoW filesystems like ZFS and log-structured filesystems like UDF and F2FS).
yes, seems I found that out the hard way. On the other hand, I didn't use any options other than what Jolla gave me at hand, which is: recovery menu with options 5, 1 and 4 (used them in that order after each failing) . Reaching No.4 the other two already broke everything.
Originally Posted by DrYak View Post
The best is to always simply try to get an early version (before the "copy" part of Copy-on-Write).

For BTRFS, things that might help :
- mounting with "recovery" (will scan back the older copies until it finds the latest usable) (for kernel 4.6 and newer, its now called "usebackuproot")
- mounting with "nologreplay" (completely ignore the journal log)
- using "btrfs restore -s -x -m -S -i " on an image transfered to a laptop.
Thx, will try these. Up until now I did a btrfs restore -ivso (which is btrfs 3.16) from device to sd card.
Originally Posted by DrYak View Post
By write, you mean you DD an image file over the raw device.
Not that you mount the (perhaps corrupted) partition and untar your files inside ?

By check you mean mount and "btrfs scrub start" ?
By write I mean DD
By check I mean unmounted btrfs check (without --repair)
Originally Posted by DrYak View Post
To me, that looks like a broken btrfs partition.
If you have some place where I can send you the file (FTP server ? Something else ?) I can send you my recovery partition.

I just can't post it publicly, because it contain non-public code (mostly driver and blobs from Qualcomm which make it illegal to post online).
One thing I found out lately: dmesg gives me a unsupported option (100). I guess the btrfs created on my laptop is not compatible with the old 3.16, so it won't mount. In the end this might cause the errors being created on first reboot, when J1 tries to repair automatically?
At the moment I try to create btrfs on device and the restore from dd image file.

I do not have a publicly writable storage for file transfer. Will see, if I can get a ftp server running temporarily.

Appreciate your help!
 
Posts: 248 | Thanked: 1,142 times | Joined on Dec 2014 @ Earth
#50
Originally Posted by Amboss View Post
One thing I found out lately: dmesg gives me a unsupported option (100). I guess the btrfs created on my laptop is not compatible with the old 3.16, so it won't mount. In the end this might cause the errors being created on first reboot, when J1 tries to repair automatically?
Yup, definitely.

Format it with (where <uuid> is the UUID of the old partition, or alternatively, let btrfs generate a new UUID and upgrade your /etc/fstab file) :
Code:
mkfs.btrfs -d single -m single -n 4096 -L sailfish -O ^extref,^skinny-metadata -U <uuid>
That should do it.

The 3.4.108.20170530.1 kernel onboard of the Jolla 1 is a tiny bit old.
As such it doesn't support some feature that later versions of BTRFS have enabled by default.
If you generate it on a laptop/desktop your BTRFS will be way too modern.
If you generate it on device, the btrfs-tools are a tiny bit more modern too (3.16 instead of 3.4).

Details :
  • -n / --nodesize : it used to be 4096 by default on older (<= 3.11), nowadays (>= 3.12) it's 16k
  • -O / --features : that the most critical part
    • ^ext-ref : It's default on on 3.16 (e.g.: btrfs-tools on jolla), but it's not available before 3.7 (like on the jolla)
    • ^skinny-metadata : it's default on with 3.18 (like on your desktop) but it's not available before 3.10 (like on the jolla)
  • -d / --data and -m / --metadata : although it's not mandatory, it helps a lot on space-constrained devices like the Jolla.
  • -L / --label : it's fixed with "sailfish"
  • -U / --uuid : Sailfish identifies and mounts the partitions based on UUID. The one of the partition must match the one in /etc/fstab

More information about features in BTRFS :
Code:
> mkfs.btrfs -O list-all
Filesystem features available:
mixed-bg            - mixed data and metadata block groups (0x4, compat=2.6.37, safe=2.6.37)
extref              - increased hardlink limit per file to 65536 (0x40, compat=3.7, safe=3.12, default=3.12)
raid56              - raid56 extended format (0x80, compat=3.9)
skinny-metadata     - reduced-size metadata extent refs (0x100, compat=3.10, safe=3.18, default=3.18)
no-holes            - no explicit hole extents for files (0x200, compat=3.14, safe=4.0)

I do not have a publicly writable storage for file transfer. Will see, if I can get a ftp server running temporarily.
I'll MP.
 

The Following User Says Thank You to DrYak For This Useful Post:
Reply

Tags
backup, jolla image

Thread Tools

 
Forum Jump


All times are GMT. The time now is 10:08.