[Bug 984778] New: zypper (unlike YaST) gives no reboot warning after updating the kernel
http://bugzilla.opensuse.org/show_bug.cgi?id=984778 Bug ID: 984778 Summary: zypper (unlike YaST) gives no reboot warning after updating the kernel Classification: openSUSE Product: openSUSE Distribution Version: Leap 42.1 Hardware: x86-64 OS: openSUSE 42.1 Status: NEW Severity: Normal Priority: P5 - None Component: libzypp Assignee: zypp-maintainers@forge.provo.novell.com Reporter: antoine.mechelynck@gmail.com QA Contact: qa-bugs@suse.de Found By: Community User Blocker: --- After updating the kernel, zypper doesn't warn the user that a reboot is necessary (YaST does). Even "zypper ps" says "No processes using deleted files found" in that case, because the "old" kernel is left lying around in /boot. (I noticed it today when "zypper up" upgraded my kernel from 4.1.24-19 to 4.1.26-21 from the Leap 42.1 Update-Test repository.) -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c2
--- Comment #2 from Michael Andres
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c3
Michael Andres
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c4
Andreas Stieger
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c5
--- Comment #5 from Tony Mechelynck
Unfortunately the information to 'suggest a reboot' is not tied to a 'package', but to a 'patch'. A 'patch' describes the minimal versions of a bunch of packages which need to be installed in order to fix the issue addressed by the 'patch'. [...]
Thanks for the explanation. YaST online update indeed checks "patches", which explains the difference. @kernels lying around in /boot At the moment, /boot lists kernels 4.1.24-19 and 4.1.26-21 (for -default, -debug and -vanilla, which are the ones I currently keep around). Yesterday I had at least one older kernel (-default only) but it has indeed been removed. Again, thanks for the explanation. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c6
--- Comment #6 from Michael Andres
All of the above would make "zypper up" all but identical to "patch". :-) I adjusted the summary to reflect the enhancement request.
Even if the result is usually similar, the approach is different: - up: Is a 'best effort' approach. You get the latest version 'if it can be installed without conflicts'. There's no assertion - and no conflicts. - patch: A patch requires minimal package versions to be installed. If it can't be applied because packages are involved in a conflict, the conflict is reported. The enhancement could also include 'zypper patch --update'; an option to 'patch' which combines 'patch' and 'up' (assert patches get applied and update whatever else is possible in one go). -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c7
--- Comment #7 from Tony Mechelynck
The enhancement could also include 'zypper patch --update'; an option to 'patch' which combines 'patch' and 'up' (assert patches get applied and update whatever else is possible in one go).
That would be a nice touch, considering that openSUSE's own repos usually have patches for everything while Packman "openSUSE" repos usually have updates but no patches. I've have examples of this, when, let's say, "zypper up && zypper lp" reports patches from Update-Test and additional updates from Packman: then I've run "zypper patch" followed by "zypper up" which is essentially running zypper twice to do what your proposed "zypper patch --update" would do in one step. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c8
--- Comment #8 from Tony Mechelynck
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c9
--- Comment #9 from Tony Mechelynck
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c10
Tony Mechelynck
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c11
Tony Mechelynck
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c12
Michael Andres
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c13
--- Comment #13 from Tony Mechelynck
JFYI: zypper-1.13.24 supports 'zypper patch --with-update' which will perform a combination of 'patch' and 'up'. This includes suppressing any package updates, if patches for the updatestack need to be applied first.
JFYI: the current zypper version on Leap 42.2 (even with the Update-Test repo enabled) is 1.13.21. I hope the update will appear soon, but in the meantime I'm still explicitly specifying "-t patch -t package" to both "zypper lu" and "zypper up", and I usually notice dependency conflicts (of the kind you mentioned below) by the fact that a "needed" patch is silently not applied, or only partly, and reappears as "needed" the next time I check for updates (cf. bug 1034010).
@'zypper up including patches': not per default, because patch installation may raise dependency conflicts, which is not wanted in plain 'zupper up'.
Ah, OK. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c14
--- Comment #14 from Michael Andres
(In reply to Michael Andres from comment #12) JFYI: the current zypper version on Leap 42.2 (even with the Update-Test repo enabled) is 1.13.21. I hope the update will appear soon, but in the
In case you want to give it a try: http://download.opensuse.org/repositories/zypp:/SLE-12-SP2-Branch/openSUSE_L... This repo always contains the latest updatestack (libsolv.libzypp/zypper) for SLE12-SP2/Leap-42.2 that has passed the developers test suite - i.e. the candidate for the next maintenance update. Nevertheless a developers repo, which has not yet passed the maintenance QA and does not include dependent packages like yast/packagekit (relevant in case the libzypp ABI would chane). -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c15
--- Comment #15 from Tony Mechelynck
Nevertheless a developers repo, [...]
...and thus with a different "vendor" string. I've done this in the past (for a different package), and in the long run I've had unobvious difficulties because of it. Thank you, but this time I'll wait on the "official" 42.1 repositories, including Update-Test. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c17
Tony Mechelynck
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c18
Michael Andres
Michael: You said in comment #3 "Keep it open as an RFE". Now the bug has been closed becaused openSUSE 42.1 is at EOL. Do you want to REOPEN it for 42.3 (or for Factory) as an RFE?
Yes.
In the meantime, adding "-t patch -t package" (or vice-versa) on the command-lines for "zypper lu" and "zypper up" looks to me like a satisfactory solution.
However, unlike "zypper patch", "zypper up -t patch -t package" simply skips packages for which there is a conflict, rather than asking the user what to do. I suppose this is intentional.
Yes. The 'pro' of 'zypper patch' is, that that you are sure the affected/vulnerable packages mentioned in the patches are updated (otherwise you get a conflict reporting the problem). Zypper patch meanwhile allows you to 'update' the remaining packages: zypper patch --with-update Additionally try to update all packages not covered by patches. The option is ignored, if the patch command must update the update stack first. Can not be combined with --updatestack-only. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c19
--- Comment #19 from Tony Mechelynck
zypper patch --with-update
Additionally try to update all packages not covered by patches. The option is ignored, if the patch command must update the update stack first. Can not be combined with --updatestack-only.
Ah, thanks for drawing my attention to this nice option. Previously I would cancel the update if "zypper up -t package -t patch" showed that one patch required reloading zypper, then run "zypper patch --updatestack-only" followed by "zypper up -t package -t patch". "zypper patch --with-update" is more streamlined (and more foolproof) in that it will do, in effect, either "up -t patch -t package" or "patch --updatestack-only" depending on whether or not a zypper reload is required. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
Tony Mechelynck
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c20
--- Comment #20 from Tony Mechelynck
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c21
--- Comment #21 from Tony Mechelynck
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c22
--- Comment #22 from Tony Mechelynck
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c24
--- Comment #24 from Tony Mechelynck
(In reply to Michael Andres from comment #2)
Unfortunately the information to 'suggest a reboot' is not tied to a 'package', but to a 'patch'.
This has meanwhile changed. Since zypper-1.14.15 packages also may carry a reboot-needed attribute. We added the `zypper needs-rebooting` command to check whether the system should be rebooted. Hints have also been added to the commit summary and `zypper ps`.
Closing it.
Ah, nice. The highest version of zypper currently available with openSUSE Leap 15.0 is 1.14.12, I hope an upgrade will soon come around -- or if it doesn't, it is bound to be included in openSUSE 15.1, "planned to be released in May 2019". -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c25
--- Comment #25 from Tony Mechelynck
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c26
Benjamin Zeller
Upgraded yesterday to the current beta or RC of Leap 15.1.
zypper version is 1.14.27 and its manpage mentions the needs-rebooting command.
It says: No core libraries or services have been updated. Reboot is probably not necessary.
and ends with status zero (indeed, ATM my system doesn't need rebooting).
Note that it said the same thing at the end of "zypper --releasever=15.1 dup" even though the kernel had been updated as part of the distribution upgrade.
If the "needs rebooting" flag was set or not depends on the zypper version that did the upgrade. If you upgraded from a zypper version not having the feature to the one offering it, the flag can not be set. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=984778
http://bugzilla.opensuse.org/show_bug.cgi?id=984778#c27
--- Comment #27 from Tony Mechelynck
If the "needs rebooting" flag was set or not depends on the zypper version that did the upgrade. If you upgraded from a zypper version not having the feature to the one offering it, the flag can not be set.
Ah, I see. I upgraded from whatever version of zypper was present day before yesterday on Leap 15.0, "zypper --releasever=15.1 dup" acted on more than 9000 packages including itself and the kernel, and IIUC it invoked its updated version when finishing, which couldn't see the flag because the earlier version didn't know about it. Thanks for explaining. -- You are receiving this mail because: You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@novell.com