Broken update -> set nemo ssh password from recovery

REPRODUCIBILITY (% or how often):
BUILD ID = OS VERSION (Settings > About product): something between 3.3.0.16 and 3.4.0.24
HARDWARE (Jolla1, Tablet, XA2,…): Xperia XA2 Plus
UI LANGUAGE: German
REGRESSION: (compared to previous public release: Yes, No, ?):

DESCRIPTION:

Well, obviously there was a version of android aliendalvic-control installed, that actually should not be there…
Nevertheless, the update stopped in the middle and rebootet with the error message, that it could not be updatet. Since then, it does not boot up completly…
I’m trying to set a new password for nemo, because I can’t remember the old ssh password…
I’ve tried it from the shell using:

chroot rootfs
passwd nemo

But restarting the phone and entering the set password crashs with the error: Permission denied.

Does anybody knows, how to set the password for ssh from recovery or how to complete the update from recovery?
Thanks in advance!

PRECONDITIONS:

  • don’t have encryption enabled on this phone

STEPS TO REPRODUCE:

EXPECTED RESULT:

ACTUAL RESULT:

ADDITIONAL INFORMATION:

  • ssu seem to be a bit confused:
    DBus unavailable, UUID not necessarily connected to reality. Device registration status: not registered Device model: Xperia XA2 Plus - Dual SIM (h4413 / h4413) Device variant: sony-nile Device UID: d3609affebfd4b20a10930295c474ad8 Release: 3.2.0.12 Domain: sales Brand: Jolla

So it crashes on decrypting the phone on boot or just when devel-su’ing in the terminal?

I don’t have encryption enabled. This makes it easier for now…
I can do nearly everything, but i can’t run pkcon update in recovery. I’m getting the error Failed to contact PackageKit: Could not connect: Connection refused
So I guess I need to boot up the phone and get a working ssh connection.
But I’m failing setting a new ssh password from recovery…
Steps:

  1. Boot into recovery
  2. chroot rootfs
  3. passwd nemo
  4. leave chroot and reboot phone
  5. trying to enter password for name fails with the error: permission denied
    -> soo ssh is at least running
  6. reboot into recovery
  7. enter chroot
  8. su nemo
  9. passwd nemo
    -> there I’m asked for the current nemo password, and now the entered password from step 3 works!

So now I’m a bit confused…

Tried already if removing AlienDalvik-Control in Recovery Mode console helps you getting further in the boot up?

Jep, i tried this. It did not change anything… :confused:

I reflashed the phone, because I need it as a daily driver.

Nevertheless thanks for your help!

Remember to write down on a note the developer password this time :wink:

1 Like

I’ll do so! It’s just not my phone, so I forget it…
At my phone I know it :slight_smile:

PackageKit (pkcon) can not work when chrooted into the root partition in recovery mode, because it requires a couple of other services/daemons to run which can not function in the recovery environment.

If you need to deal with packages, you must use the plain rpm command.

For example, to uninstall package harbour-foo, do a

# rpm --erase harbour-foo

Note that in some circumstances, you should, in others you shouldn’t do instead:

# rpm --erase --noscripts harbour-foo
2 Likes

Thanks for your answer!
That explains, why pkcon fails in recovery.