sysv-rc-conf missing
-
Hi there,
Here is some information for anybody upgrading their installation to Ubuntu 18.04 and getting stuck because of the sysv-rc-conf package which does not exist on Ubuntu 18.The thing is that if you do a fresh install of Ubuntu 18 and then install Fog, you don’t face this issue.
But if you are coming e.g. from Ubuntu 14, you get stuck and as a solution are told to remove the package from config.sh, see: https://forums.fogproject.org/topic/9998/upgrade-ubuntu-16-10-to-17-04-sysv-rc-conf-fail
This “riddle” has been asked but not answered here: https://github.com/FOGProject/fogproject/issues/258 before.
I noticed when comparing the two that for the install that gets stuck, the output is:
Installing package: sysv-rc-conf..............................Failed! (Will try later)
while for the fresh install that works it is:
Skipping package: sysv-rc-conf..............................(Does not exist)
I wondered what that meant and had a look at /lib/common/functions.sh
What happens here is that the installer calls:
eval $packagelist "$x"
which in this case is:
apt-cache pkgnames | grep sysv-rc-conf
Now on a fresh Ubuntu 18, this will give you no output and return code 1, while on an upgraded Ubuntu, it is
sysvr-rc-conf
and the return code is 0, because the package has been removed, but is still listed by dpkg and marked as “rc”.
To cut a long story short, before you install Fog, completely purge sysvr-rc-conf, and you will be fine:
sudo apt purge sysv-rc-conf
Have fun!
-
I have tests that automatically test Ubuntu 18.04 automatically every day. Links in my signature.
I’ve been told by @Sebastian-Roth that there is a big repository difference between Ubuntu 18.04 LIVE and non-live, namely the universe repository is present in one, missing in another. -
@Wayne-Workman I see that there can be issues due to missing package sources, but the sysv-rc-conf simply does not exist anymore for Ubuntu 18.04.
I hope that my post explains this well and helps other people who run into the same issue. -
@abulhol Thanks for looking into this. It’s very hard for us to keep up the installer to meet all situations. So I am grateful for you to bring this up and even find a solution to the issue when upgrading instead of doing a fresh install.
because the package has been removed, but is still listed by dpkg and marked as “rc”.
You are right that packages not being purged are listed by
dpkg -l
but that’s not the command we use here.apt-cache pkgnames
puts out all the packages available - installed or not installed or even purged from the system!So the interesting question is, why does
apt-cache pkgnames
print outsysv-rc-conf
even if it’s not part of the 18.04 package lists anymore. Possibly it’s just a cache thing. Maybe we need to do something likeapt clean
before to get rid of it. What do you think? -
@Sebastian-Roth At least after I had purged the package, it was not listed by
apt-cache pkgnames
anymore. But I am continuing testing upgrades and will check ifapt clean
helps.
Keep up the good work! -
@abulhol Ahhh, well that sounds reasonable. Possibly it is still in
apt-cache pkgnames
list because not being purged… Sorry I got the goat the wrong way here.So maybe I just add a
apt purge sysv-rc-conf
to the start of the installer. It wouldn’t hurt any of the older Ubuntu versions I reckon?! -
@Sebastian-Roth That sounds like a plan. I cannot tell whether it will hurt older Ubuntu versions, but I suppose not.
-
@abulhol Fixed in working branch, will be in the next release. Let’s see if we are able to get this out in time so people upgrading their servers from 16.04 to 18.04 won’t run into the same issue as you did.