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!


  • Developer

    @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.



  • @Sebastian-Roth That sounds like a plan. I cannot tell whether it will hurt older Ubuntu versions, but I suppose not.


  • Developer

    @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 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 if apt clean helps.
    Keep up the good work!


  • Developer

    @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 out sysv-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 like apt clean before to get rid of it. What do you think?



  • @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.



  • 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.


 

518
Online

5.4k
Users

12.6k
Topics

118.7k
Posts