Commit Graph

116 Commits

Author SHA1 Message Date
Stoiko Ivanov
182bfa3a0f proxmox-boot-tool: add status command
currently simply checking if $ESP_LIST exists, and indicating via
the exit status if proxmox-boot-tool is used for booting the system.

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2021-04-23 13:28:56 +02:00
Stoiko Ivanov
b3c980626d proxmox-boot-tool: rename from pve-efiboot-tool
We will be using the mechanics also for ZFS systems booting with BIOS
legacy boot, and the tool is used also in PMG and PBS.

A symlink is kept in place for compatibility reasons

The hook scripts are marked as conffiles (as all files in /etc) and
are handled by dpkg-maintscript-helper(1) via dh_installdeb(1)

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2021-04-23 13:28:56 +02:00
Thomas Lamprecht
f41600a3a6 bump version to 7.0-0+4
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-09 11:07:51 +02:00
Thomas Lamprecht
96257df1e3 bump version to 7.0-0+3
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-03-18 19:22:55 +01:00
Thomas Lamprecht
825caa0f5d bump version to 7.0-0+2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-03-18 16:08:33 +01:00
Thomas Lamprecht
659521a666 bump version to 7.0-0+1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-03-02 16:20:54 +01:00
Thomas Lamprecht
63e0aae7f4 bump version to 6.3-6
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-02-26 14:16:42 +01:00
Thomas Lamprecht
833938ddac bump version to 6.3-5
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-02-15 18:21:35 +01:00
Thomas Lamprecht
03c04fd36b bump version to 6.3-4
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-02-15 17:23:15 +01:00
Thomas Lamprecht
60956e9ab2 bump version to 6.3-4
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-01-28 16:00:24 +01:00
Thomas Lamprecht
5ab2d06ce3 bump version to 6.3-3
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-12-03 15:11:28 +01:00
Thomas Lamprecht
30645aaef0 bump version to 6.3-2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-11-30 12:05:36 +01:00
Thomas Lamprecht
ad81f6384b bump version to 6.3-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-11-16 11:28:24 +01:00
Thomas Lamprecht
2006e8c483 bump version to 6.2-7
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-09-21 17:17:06 +02:00
Thomas Lamprecht
2ec72b24eb bump version to 6.2-6
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-08-31 11:59:14 +02:00
Thomas Lamprecht
ffebe658c4 bump version to 6.2-4
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-07-02 07:16:40 +02:00
Thomas Lamprecht
a8f040bc92 bump version to 6.2-3
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-06-16 13:43:06 +02:00
Aaron Lauterer
78c0b9cbd1 pve-efiboot-tool: format: show real path in warning if needed
Show the real path of the partition in case when the basename couldn't
be determined and the partition given is a symlinked one like
/dev/disk/by-id/<part>/

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2020-06-02 12:29:57 +02:00
Aaron Lauterer
5d733131b6 pve-efiboot-tool: format: fix handling of disk/by-id
The format command will fail when using other paths like
/dev/disk/by-id/<part> instead of /dev/sdXY directly. It cannot find
the path /sys/block/<disk>/<part>/partition path.

The part name in /dev/disk/by-id is a symlink to /dev/sdXY. At that
point we already have the symlink resolved to the real path. It is
stored in `bdev`.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2020-06-02 12:29:54 +02:00
Thomas Lamprecht
723eacb774 bump version to 6.2-2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-15 15:40:17 +02:00
Thomas Lamprecht
04ec22d77d bump version to 6.2-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-06 10:23:48 +02:00
Thomas Lamprecht
f8b44bc9e5 bump version to 6.1-9
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-04-10 11:34:53 +02:00
Thomas Lamprecht
541cd729b6 bump version to 6.1-8
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-03-23 15:03:55 +01:00
Thomas Lamprecht
c454a8217d bump version to 6.1-7
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-03-09 16:08:46 +01:00
Thomas Lamprecht
1536115e6a bump version to 6.1-6
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-03-02 18:59:43 +01:00
Thomas Lamprecht
403d7c5b11 bump version to 6.1-5
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-02-15 17:24:40 +01:00
Thomas Lamprecht
6a3c4acefd fix #2595: less false positives when filtering out meta packages
This fixes selecting kernels for manual inclusion in the ESP which do
not come with a "-pve" in name.
It fixes listing, by just printing out the whole list as is. refresh
complains already if there's a kernel selected but no respective
vmlinuz got found. Additionally, we already plainly add the "manual
kernel list" in kernel_keep_versions, but filter then out any kernel
not containing a "-pve" in boot_kernel_list.

But boot_kernel_list should actually only filter out the kernel meta
packages.

So, use a inverse match and check for a /\d+\.\d+/ pattern, this
seems to work well enough.

Note that kernel_keep_versions doesn't picks up non-pve kernels
anyway, so this only really alters manual selection.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-02-15 17:17:39 +01:00
Thomas Lamprecht
c4ef475852 bump version to 6.1-4
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-02-05 13:15:58 +01:00
Thomas Lamprecht
e224fb3428 bump version to 6.1-3
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-01-31 14:15:01 +01:00
Oguz Bektas
8e80d38d3c zz-pve-efiboot: improve loader title detection
Signed-off-by: Oguz Bektas <o.bektas@proxmox.com>
2020-01-31 14:14:47 +01:00
Thomas Lamprecht
8b88cd5d5a bump version to 6.1-2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-01-24 12:22:23 +01:00
Thomas Lamprecht
0ba2c0c421 bump version to 6.1-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-12-05 09:28:47 +01:00
Thomas Lamprecht
2368f59412 bump version to 6.0-12
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-14 10:46:47 +01:00
Oguz Bektas
cd42dbfb99 use perl instead of (g)awk to clean /proc/cmdline
this awk line only works with gawk because of implementation differences
between awk alternatives.
debian has mawk installed by default, and mawk does not implement word
boundary regex. to avoid having to depend on gawk, we can just use perl
instead.

Signed-off-by: Oguz Bektas <o.bektas@proxmox.com>
2019-11-08 14:13:30 +01:00
Thomas Lamprecht
25c1475040 efiboot/autorm functions: ignore running kernel if it was removed
In the case were someone removes the current kernel we do not can
"keep" it anymore. While this was obviously no issue for the
autoremoval logic, it is an issue for the pve-efiboot-tool refresh
command, which reuses this helper to see which kernels it needs to
keep on the ESP.

Without this a running kernel was never removed from the EFI System
Partitions if de-installed from a host, so if it sorted as newest one
it was then booted again, which naturally confuses users (it was just
removed!!). So to ensure that we cannot get such zombie kernels
ensure that only installed kernels are included in the list.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-07 18:37:06 +01:00
Thomas Lamprecht
40cfed49af bump version to 6.0-11 with ABI 5.3.7-1-pve
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-23 19:44:35 +02:00
Thomas Lamprecht
1a72195a29 followup: code cleanup
* add some spaces for separation, increasing readability
* do not use the non-existent variable x as replacement, but an actual
  empty string ""
* don't use the "truth-y action" at end to make awk print the line ($0)
  but explicitly print $0 after the gsub, makes it easier to get for
  people with not much awk background

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-17 07:44:52 +02:00
Oguz Bektas
86cdbeb5aa fix #2403: exclude initrd entries from /proc/cmdline
if we fallback to /proc/cmdline, it can include the booted initrd.

to avoid loader entries with initrd 'options' lines, we have to parse
them out.

Signed-off-by: Oguz Bektas <o.bektas@proxmox.com>
2019-10-17 07:25:15 +02:00
Thomas Lamprecht
1533d98534 bump version to 6.0-10
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-02 08:42:21 +02:00
Thomas Lamprecht
015b1e852f bump version to 6.0-9
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-30 09:47:22 +02:00
Thomas Lamprecht
6b9b98085f d/control: adapt to lintian change regarding empty-binary-package
Previously, mentioning "virtual package" in the package long
description was enough to supress the "empty-binary-package" linitian
tag[0]. That changed, so let's use "metapackage", which is suggested
as one of the replacement options.

[0]: https://lintian.debian.org/tags/empty-binary-package.html

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-30 09:47:22 +02:00
Thomas Lamprecht
3cfa335dc3 bump version to 6.0-8
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-05 15:38:00 +02:00
Thomas Lamprecht
8d0eb48179 bump version to 6.0-7 with ABI 5.0.21-1-pve
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-08-21 09:44:38 +02:00
Stefan Reiter
d156f6aa14 Add efiboot refresh hook to update-initramfs
As explained in [0], we can add a hook script that will be called after
update-initramfs did its job (and thus, a new initrd has been created).

We can use this to automatically sync the ESPs using 'pve-efiboot-tool
refresh', if update-initramfs was called manually (on kernel upgrade we
already have a hook that does this).

[0]: https://kernel-team.pages.debian.net/kernel-handbook/ch-update-hooks.html

Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
2019-08-05 13:26:08 +02:00
Fabian Grünbichler
27d9325195 efiboot refresh: check --hook parameter
against list of default hook scripts.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-08-05 13:26:08 +02:00
Stefan Reiter
6e829c9b0a Add parameter '--hook' to 'refresh' command
Mostly to avoid calling hooks directly in other scripts, future-proofing.

Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
2019-08-05 12:06:52 +02:00
Thomas Lamprecht
82a85499c3 bump version to 6.0-6
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-24 16:47:37 +02:00
Thomas Lamprecht
46aeff56bc bump version to 6.0-5
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-15 15:08:59 +02:00
Thomas Lamprecht
992c689e1b pve-efiboot-tool: accept also 'kernel' for the 'kernels' command
As all operations are done on a single or no version, thus "kernel"
fits minimally better, IMO. But just accept both, for convenience

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-15 15:07:42 +02:00
Thomas Lamprecht
f43873b2be zz-efiboot: output ESP_LIST fn quoted, to avoid copying the !
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-15 15:06:01 +02:00