We have moved to a new Sailfish OS Forum. Please start new discussions there.
1

Cannot install apps or change system settings

asked 2019-05-13 20:43:49 +0300

ajwatt gravatar image

updated 2019-05-15 13:55:12 +0300

jiit gravatar image

I have had this happen twice now on my Xperia X. I am unable to set a password for ssh access, as in it will not generate a password and it will not save one that I set. It shows a single bullet character in the password field even if I type a new password and click save. And of course nothing that I try for the password will work for ssh connections or devel-su elevation. Also, changing settings for things like location service and VPN are not saved, and apps cannot be installed or updated.

The first time this happened, it was on release 3.0.0 (upgraded from a 2.x release). I re-flashed it to release 3.0.2.8 and that corrected the problem. The second time (on release 3.0.2.8), I looked at the permissions for /etc/shadow there are no permissions set:

[nemo@Sailfish ~]$ ls -l /etc/shad*
---------- 1 root root 2094 2019-05-02 12:40 /etc/shadow
---------- 1 root root 2192 2019-05-02 11:55 /etc/shadow-

So that's my problem, but I can't figure out how that happened. I checked the system date and time just to be sure something odd wasn't going on there, and they are correct. So I wanted to check here to see if anyone has heard of this before I do another re-flash.

EDIT: the problem is not with /etc/shadow, it's something else unknown. Thanks @hlub.

edit retag flag offensive close delete

Comments

1

I have solved this. It is due to not enough inodes in the root filesystem. This can be verified with the following in a shell:

df -i /

The IFree column should list thousands. Mine was showing more like 150.

The thing that led me to this was viewing the zypper history:

cat /var/log/zypp/history

This shows errors installing apps, with the reason listed as "installing package <pkg name=""> needs 796 inodes on the / filesystem".</pkg>

And thanks to the comments by @aerique on this post, I confirmed that I likewise had a lot of inodes taken up by unused /var/lib/connman files and directories.

Because I could not elevate my shell permissions with devel-su, I had to boot into recovery mode to delete the unneeded connman directories. Once in the recovery mode shell, here's the process I used.

chroot /rootfs
mount /proc /proc -t proc
df -i /     ## note "IFree" number of available inodes

# We'll delete all connman directories that do not have a settings file.
cd /var/lib/connman
mkdir ../connman_save
for i in */settings; do
  dir=echo $i|cut --delimiter=/ --fields=1
  mv $dir ../connman_save
done
cd ..
ls connman_save
rm -r connman
mv connman_save connman

# Verify outcome
df -i /

After all of this, the phone is back to functioning normally. And apparently this issue is fixed in 3.0.3 Hossa. Now I am able to update to that version.

ajwatt ( 2019-05-29 00:46:12 +0300 )edit

1 Answer

Sort by » oldest newest most voted
2

answered 2019-05-13 23:36:40 +0300

hlub gravatar image

updated 2019-05-13 23:46:08 +0300

Those permissions are not at all unusual

On my Xperia XA2 /etc/shadow has 000 permission as well, and I am able to set the password for devel-su (and presumably, ssh) without any problem

The problems you describe (e.g. not being able to install apps) seem quite serious, but they are not caused by /etc/shadow having wrong permissions.

edit flag offensive delete publish link more

Comments

Thank you, I was using my Ubuntu system as a reference, which was probably a bad idea in hindsight.

ajwatt ( 2019-05-14 20:24:08 +0300 )edit
Login/Signup to Answer

Question tools

Follow
2 followers

Stats

Asked: 2019-05-13 20:43:49 +0300

Seen: 493 times

Last updated: May 16 '19