Results 1 to 4 of 4

Thread: / MicroOS - transactional-update not working when /etc/sysconfig/network/config set

  1. #1

    Default / MicroOS - transactional-update not working when /etc/sysconfig/network/config set

    I'm booting a MicroOS with the an Ignition-configuration (relevant parts below). I'm basically trying to set a static ip (+ default route) and a static DNS resolver.

    This has been working for a few months, but recently I updated the base-image I'm spawning MicroOS-instances from and suddenly I run into problems.

    By trial-and-error I've come down to this: As soon as the file /etc/sysconfig/network/config is included/overwritten by ignition, once I run transactional-update pkg install python3 (or similar command) I get:

    Code:
    # transactional-update pkg install python3 
    Checking for newer version. 
    transactional-update 3.1.4 started 
    Options: pkg install python3 
    Separate /var detected. 
    ERROR: filesystem error: cannot copy: File exists [/run/netconfig] [/.snapshots/2/snapshot/run/netconfig] 
    Calling zypper install 
    2021-02-23 14:14:00 tukit 3.1.4 started 
    2021-02-23 14:14:00 Options: call  bash -c exec -a tu_keep-transaction-alive sleep 1d  
    ERROR: Snapshot  does not exist.
    And then it just keeps hanging...

    What does that mean? Can I debug it somehow?

    I can see in http://mirrors.dotsrc.org/opensuse/t...S.20210218.txt that transactional-update has been updated to a new major - Don't know if that is related. I can't seem to find older versions of MicroOS images so I could test when exactly this issue occured (Is there any archive?)

    Relevant Ignition file (network/config copied from an image without it overwritten and removed comments, adding static DNS and NTP)
    Code:
    storage:
      files: 
        - path: /etc/sysconfig/network/ifcfg-eth0 
          mode: 0600 
          overwrite: true 
          contents: 
            inline: | 
              BOOTPROTO='static' 
              STARTMODE='auto' 
              IPADDR='{{ip6}}/64'
        - path: /etc/sysconfig/network/ifroute-eth0 
          mode: 0644 
          overwrite: true 
          contents: 
            inline: | 
              default {{ipv6defaultgw}} - eth0
        - path: /etc/sysconfig/network/config 
          mode: 0644 
          overwrite: true 
          contents: 
            inline: | 
                    AUTO6_WAIT_AT_BOOT="" 
                    AUTO6_UPDATE="" 
                    LINK_REQUIRED="auto" 
                    WICKED_DEBUG="yes" 
                    WICKED_LOG_LEVEL="" 
                    CHECK_DUPLICATE_IP="yes" 
                    SEND_GRATUITOUS_ARP="auto" 
                    DEBUG="yes" 
                    WAIT_FOR_INTERFACES="30" 
                    FIREWALL="no" 
                    NETCONFIG_MODULES_ORDER="dns-resolver dns-bind dns-dnsmasq nis ntp-runtime" 
                    NETCONFIG_VERBOSE="yes" 
                    NETCONFIG_FORCE_REPLACE="no" 
                    NETCONFIG_DNS_POLICY="auto" 
                    NETCONFIG_DNS_FORWARDER="resolver" 
                    NETCONFIG_DNS_FORWARDER_FALLBACK="no" 
                    NETCONFIG_DNS_STATIC_SEARCHLIST="" 
                    NETCONFIG_DNS_STATIC_SERVERS="" 
                    #NETCONFIG_DNS_STATIC_SERVERS="2606:4700:4700::1001" 
                    NETCONFIG_DNS_RANKING="" 
                    NETCONFIG_DNS_RESOLVER_OPTIONS="" 
                    NETCONFIG_DNS_RESOLVER_SORTLIST="" 
                    NETCONFIG_NTP_POLICY="auto" 
                    NETCONFIG_NTP_STATIC_SERVERS="2.pool.ntp.org" 
                    NETCONFIG_NIS_POLICY=""

  2. #2
    Join Date
    Jun 2008
    Location
    San Diego, Ca, USA
    Posts
    13,295
    Blog Entries
    2

    Default Re: / MicroOS - transactional-update not working when /etc/sysconfig/network/config set

    I'm not sure that python3 is a good example, it should already be installed as part of every standard openSUSE... Because you can't install something that already exists (but you can "force re-install" by adding the 'f flag, ie "zypper in -f python3"

    If you believe a particular version of a file is a problem, you can either roll back your entire system or restore just that or specified files from your past snapshots.

    TSU
    Beginner Wiki Quickstart - https://en.opensuse.org/User:Tsu2/Quickstart_Wiki
    Solved a problem recently? Create a wiki page for future personal reference!
    Learn something new?
    Attended a computing event?
    Post and Share!

  3. #3

    Default Re: / MicroOS - transactional-update not working when /etc/sysconfig/network/config set

    Quote Originally Posted by tsu2 View Post
    I'm not sure that python3 is a good example, it should already be installed as part of every standard openSUSE... Because you can't install something that already exists (but you can "force re-install" by adding the 'f flag, ie "zypper in -f python3"

    If you believe a particular version of a file is a problem, you can either roll back your entire system or restore just that or specified files from your past snapshots.

    TSU
    Hi tsu, thanks for your response.

    python3 is not installed by default in MicroOS, and if I exclude the config-file from Ignition, I can install it just fine. This is the first boot of the base image, so it's a totally clean slate and no snapshots to roll back to.

  4. #4

    Default Re: / MicroOS - transactional-update not working when /etc/sysconfig/network/config set

    I finally figured it out. Turned out it was actually not the presence of the file itself, but some of the content.

    At some point in time I had changed NETCONFIG_NIS_POLICY="auto" to NETCONFIG_NIS_POLICY="" from the default config-file to disable NIS/YP configuration for netconf - believing it was an innocent change

    Wild guess: It seems something somewhere in the newer images expects yp.conf (or similar) to be present at /etc/yp.conf - Maybe that file exists in the "base" image and it fails if it can no longer find the file in the snapshot after netconf has run.

    As soon as setting NIS to auto, it all worked and I can install packages, use transaction-commands again.

    Thanks for your help.

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •