REPRODUCIBILITY (% or how often):
BUILD ID = OS VERSION (3.xx.xx.xx -> 3.4.0.22):
HARDWARE (XperiaX):
UI LANGUAGE:
REGRESSION: (Yes):
DESCRIPTION:
Tried to update to the proposed version. It downloaded the 560MB package. Started installation and than the screen froze(for 5-10mins) with the installation of SFOS with the progress bar showing around 3/4 of the bar white (advanced). I hard reset the phone, and no access to the phone is possible anymore.
After reseting again, the screen blinks 5 times in a row and nothing else happens.
The installation didnt even ask about backup!!!
Did I loose all my data not being backuped?
Why is this version so crappy and untested?
How can I rescue my SFOS ?
How can I save my previous installation.
PRECONDITIONS:
STEPS TO REPRODUCE:
EXPECTED RESULT:
ACTUAL RESULT:
ADDITIONAL INFORMATION:
(Please ALWAYS attach relevant data such as logs, screenshots, etc…)
if you did reset your phone then all your data is gone, that was nit on sd card
resetting might have been a bit too quickly done. i do usually not reset bu do enter the recovery mode; longpress start and obe of the volume buttons. i think tge vol up.
So, following how to backup data in recovery mode, Im stopped by:
mount -o subvol=@home /dev/mmcblk0p28 /myhome/
mount: mounting /dev/mmcblk0p28 on /myhome/ failed: Invalid argument
mount -t btrfs -o subvol=@home /dev/mmcblk0p28 /myhome
mount: mounting /dev/mmcblk0p28 on /myhome/ failed: Invalid argument
while myhome exists.
$ dmesg
EXT4-fs (dm-0): couldn't mount as ext3 due to feature incompatibilities
EXT4-fs (dm-0): couldn't mount as ext2 due to feature incompatibilities
EXT4-fs (dm-0): mounted filesystem with ordered data mode. Opts: (null)
FAT-fs (mmcblk1p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
EXT4-fs (mmcblk0p28): Unrecognized mount option "subvol=@home" or missing value
what would that mean for the recovery? Any other suggestions?
The commands you cite are from the Jolla1 guide. Jolla 1 in the official image uses BTRFS instead of Ext4 for /home. Other devices do not use BTRFS and use different commands. Also, the storage devices are different depending on device and OS image.
The error messages and dmesg reflect your use of incorrect commands.
Ah sorry, I only looked in the top bug report where it’s not present.
Anyway, forget btrfs on Sailfish-X. It’s ext4-on-LVM on those devices, and often luks-encrypted on top of that. (I believe there are some Community edition images where versions for either btrfs or ext4 exist for the same device, but that shouldn’t be relevant here.)
So you do the same thing again, in recovery you select the shell. You can use the filesystem check option before, because it’s output will show you the correct device where your home is located.
If unencrypted, there should be a /dev/mapper/sailfish-home device you can mount as ext4.
If encrypted, you will have to
The filesystem check I had made output:
… root: ***** FILE SYSTEM WAS MODIFIED ****** .
after it the Shell option is showing:
> /dev/mmcblk0rpmb: read failed after 0 of 4096 at 0: Input/output error > 2 logical volume(s) in volume group “sailfish” now active
*> * > WARNING: Locking directory /run/cryptsetup is missing!
so the correct command would be the one you suggested
mount -vv -t ext4 -o ro /dev/mapper/sailfish-home /myhome
However, whats next? saving the data and than factory reset? Or maybe I dont need to make any factory reset ?
Btw. why cant I find a command to make a backup from the command line ?
Well I can’t really tell you what to do no next as I’m not quite sure what’s broken precisely.
You are now in a position to, for example:
backup/save whatever data you have on your /home to the SD card (if inserted and mounted). This will have to be done manually using tar and friends, there is no ready-made script to do it.
change your /etc/systemd/journald.conf file from volatile to persistent storage. This can be used to see what is actually failing when the device tries to boot. see also here
using chroot, enter the SailfishOS filesytem proper and e.g. remove RPMs that are known to cause prolbems. like here. There’s a couple of possible candidates from OpenRepos that can cause boot to fail or apparently to fail.
using chroot, manually install or reinstall RPMs you know have failed to install correctly.
any amount of other tricks to fix broken things.
Note these are just examples.
I would try the systemd thing first, edit the file to persistent, create the log file location, and reboot the device again. After it failed, go into recovery mode again, and inspect the log files created at the log file location. Maybe even copy it to SD card for easier viewing/pastebin etc.
I cannot find calendar, contacts, call history, sms, notes and tasksl. They must be stored in a database in this case? Which db is the possible candiate?
.phonehook/phonehook.db # ?!? contacts
.local/share/commhistory/commhistory.db # ?!? call history
But for the rest of the stuff, I have no clue where to find them.
There is no /etc/systemd in my sailfish-home. Do I have to remount to rootfs?!?
Sounds like you have Phonehook installed, it is one of the apps known to break the system on 3.4 update. Try removing it with rpm -command (rpm -e [packagename] if I recall correctly) and test if the phone boots normally after that.
Use chroot /rootfs before trying to do these things.
also erase any other apps which are known to cause problems: harbour-defender, any overlay apps like tint-overlay, battery-overlay, also collectd and systemdatascope, possibly others.
(You can to a rpm -qa | grep <name> to find the correct package name, rpm -qa will list ALL installed packages).
For contacts, you can try /usr/bin/contacts-tool, but I’m not sure this works in the recovery chroot. I think this will include call history. It’s still a good idea to backup the commhistory.db itself.
For SMS, there is a script here, but I haven’t tried it with a recent release.
Im seeing a lot of erros while booting. What kind of errors might be significant?
Sailfish start_alien.sh[3988]: /system/genv/bin/alien_bridge_server: error while loading shared libraries: libicui18n.so.63: cannot open shared object file: No such file or directory
Sailfish lipstick[4966]: [F] unknown:0 - QPA-HWC: There can only be one window, someone tried to create more. in createNativeWindow Failed to start The lipstick UI.
Life could have been easier … error: package phonehook is not installed
I also did rpm --erase --noscripts patchmanager
but reboot didn’t work either.
(it was removed however, because the recovery mode when starting in a shell mode, complained about: ERROR: ld.so: object '/usr/lib/libpreloadpatchmanager.so' from /etc/ld.so.preload cannot be preloaded (cannot open shared object file): ignored.
to resolve it I did: #remove the dodgy preload rm /etc/ld.so.preload
)
What does this mean at all?
Mine hope goes towards resolving the log errors from above.
Might be that the package name of Phonehook is something different than just phonehook. Find the proper package name of the phonehook with rpm -qa | grep phonehook and use that name for the erase-command.
Try installing zypper and linking the /home/.pk-zypp-dist-upgrade-cache to /var/cache/zypp and do su zypper dup to see if that fixes the problem.
Could be also Phonehook or some other variant, it is case sensitive. To install packages in recovery mode you need to have the .rpms on SDCard or SSH them to the phone and then install them with rpm -command
Do you have a link for me? Which version do I need? And why zypper could fix the problem?
Does anybody know what
tracker-miner-fs 1)
messageserver5 2)
are ?
1 ) Failed to start Tracker metadata database store and lookup manager. tracker-store.service: Failed with result 'exit-code'. tracker-miner-fs.service: Failed with result 'exit-code.
2) messageserver5.service: Failed with result 'exit-code'.
I did try, but: [root@(none) /]# zypper dup Medium not attached: plugin:/ssu?repo=adaptation0
…
Did I miss something?
Tracker ist the indexing tool which among other things presents pictures to gallery, music files to the media app and so on. It shouldn’t fail, but I guess it failing is non-critical.
messageserver5 is the service dealing with SMS and other messages. That’s pretty much a core function.
It does sound like the update didn’t finish and the system is “half-updated” at the moment.
Unless you have a very good reason you want to recover from this state, I’d just reset to factory settings from recovery mode and start anew. Poking around and fixing things is probably going to take more time than starting anew.