public inbox for pbs-devel@lists.proxmox.com
 help / color / mirror / Atom feed
* [pbs-devel] [PATCH proxmox-backup 0/5] update and improve sysadmin documenation
@ 2022-05-11 14:06 Stoiko Ivanov
  2022-05-11 14:06 ` [pbs-devel] [PATCH proxmox-backup 1/5] docs: sysadmin: adapt kernel-specifics for PBS Stoiko Ivanov
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Stoiko Ivanov @ 2022-05-11 14:06 UTC (permalink / raw)
  To: pbs-devel

This patchset started from #3761 (adding kernel-pinning).

I skimmed through the docs - fixed a few things which seemed not too
fitting for PBS

else the chapter for system-booting is taken from pve-docs (with new
screenshots) and translated (more or less) mechanically to reST.

Currently planning on similarly copying and adapting the certificate
documentation.

In the long run I think it'd make sense to have a common docs repo
(proxmox-docs) for things that our products share (zfs, the acme
part of the certificate documentation) and just include the files.
(after some preprocessing and for the time being conversion
reST->asciidoc)

Stoiko Ivanov (5):
  docs: sysadmin: adapt kernel-specifics for PBS
  docs: add system-booting from pve-docs
  docs: system-booting: (re)add screenshots
  docs: local-zfs: minor cleanup and adaptation
  docs: zfs: update documentation about ZED

 docs/conf.py                                 |   1 +
 docs/images/screenshots/boot-grub.png        | Bin 0 -> 10090 bytes
 docs/images/screenshots/boot-systemdboot.png | Bin 0 -> 4613 bytes
 docs/local-zfs.rst                           |  37 +-
 docs/sysadmin.rst                            |   8 +-
 docs/system-booting.rst                      | 379 +++++++++++++++++++
 www/OnlineHelpInfo.js                        |  44 +++
 7 files changed, 445 insertions(+), 24 deletions(-)
 create mode 100644 docs/images/screenshots/boot-grub.png
 create mode 100644 docs/images/screenshots/boot-systemdboot.png
 create mode 100644 docs/system-booting.rst

-- 
2.30.2





^ permalink raw reply	[flat|nested] 7+ messages in thread

* [pbs-devel] [PATCH proxmox-backup 1/5] docs: sysadmin: adapt kernel-specifics for PBS
  2022-05-11 14:06 [pbs-devel] [PATCH proxmox-backup 0/5] update and improve sysadmin documenation Stoiko Ivanov
@ 2022-05-11 14:06 ` Stoiko Ivanov
  2022-05-11 14:06 ` [pbs-devel] [PATCH proxmox-backup 2/5] docs: add system-booting from pve-docs Stoiko Ivanov
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Stoiko Ivanov @ 2022-05-11 14:06 UTC (permalink / raw)
  To: pbs-devel

while all statements here are technically true - adding all
virtualization improvements is not relevant for proxmox backup in most
cases.
The intel nic driver seems like a left-over from a time (pre PVE 5.1)
where the pve-kernel included the out-of-tree drivers.

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
---
 docs/sysadmin.rst | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/docs/sysadmin.rst b/docs/sysadmin.rst
index 626b28fe..7e843111 100644
--- a/docs/sysadmin.rst
+++ b/docs/sysadmin.rst
@@ -15,10 +15,8 @@ through that channel. In addition, we provide our own package
 repository to roll out all Proxmox related packages. This includes
 updates to some Debian packages when necessary.
 
-We also deliver a specially optimized Linux kernel, where we enable
-all required virtualization and container features. That kernel
-includes drivers for ZFS_, as well as several hardware drivers. For example,
-we ship Intel network card drivers to support their newest hardware.
+We also deliver a specially optimized Linux kernel, based on the Ubuntu
+kernel. That kernel includes drivers for ZFS_.
 
 The following sections will concentrate on backup related topics. They
 will explain things which are different on `Proxmox Backup`_, or
-- 
2.30.2





^ permalink raw reply	[flat|nested] 7+ messages in thread

* [pbs-devel] [PATCH proxmox-backup 2/5] docs: add system-booting from pve-docs
  2022-05-11 14:06 [pbs-devel] [PATCH proxmox-backup 0/5] update and improve sysadmin documenation Stoiko Ivanov
  2022-05-11 14:06 ` [pbs-devel] [PATCH proxmox-backup 1/5] docs: sysadmin: adapt kernel-specifics for PBS Stoiko Ivanov
@ 2022-05-11 14:06 ` Stoiko Ivanov
  2022-05-11 14:06 ` [pbs-devel] [PATCH proxmox-backup 3/5] docs: system-booting: (re)add screenshots Stoiko Ivanov
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Stoiko Ivanov @ 2022-05-11 14:06 UTC (permalink / raw)
  To: pbs-devel

and transform to reST.

semantic changes to the content are:
* s/{pve}/`Proxmox Backup`_/g
* changing footnotes to parenthesized notes (did not see footnote use in
  the current docs)
* removed the comment about systems setup before the introduction of
  p-b-t (which was introduced before pbs)

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
---
 docs/conf.py            |   1 +
 docs/sysadmin.rst       |   2 +
 docs/system-booting.rst | 370 ++++++++++++++++++++++++++++++++++++++++
 www/OnlineHelpInfo.js   |  44 +++++
 4 files changed, 417 insertions(+)
 create mode 100644 docs/system-booting.rst

diff --git a/docs/conf.py b/docs/conf.py
index dcc44988..2a189ba6 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -113,6 +113,7 @@ exclude_patterns = [
     'pbs-copyright.rst',
     'local-zfs.rst'
     'package-repositories.rst',
+    'system-booting.rst'
 ]
 
 # The reST default role (used for this markup: `text`) to use for all
diff --git a/docs/sysadmin.rst b/docs/sysadmin.rst
index 7e843111..b156acc9 100644
--- a/docs/sysadmin.rst
+++ b/docs/sysadmin.rst
@@ -26,4 +26,6 @@ please refer to the standard Debian documentation.
 
 .. include:: local-zfs.rst
 
+.. include:: system-booting.rst
+
 .. include:: services.rst
diff --git a/docs/system-booting.rst b/docs/system-booting.rst
new file mode 100644
index 00000000..6d6ebaab
--- /dev/null
+++ b/docs/system-booting.rst
@@ -0,0 +1,370 @@
+
+.. _chapter-systembooting:
+
+Host Bootloader
+---------------
+
+`Proxmox Backup`_ currently uses one of two bootloaders depending on the disk setup
+selected in the installer.
+
+For EFI Systems installed with ZFS as the root filesystem ``systemd-boot`` is
+used. All other deployments use the standard ``grub`` bootloader (this usually
+also applies to systems which are installed on top of Debian).
+
+
+.. _systembooting-installer-part-scheme:
+
+Partitioning Scheme Used by the Installer
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The `Proxmox Backup`_ installer creates 3 partitions on all disks selected for
+installation.
+
+The created partitions are:
+
+* a 1 MB BIOS Boot Partition (gdisk type EF02)
+
+* a 512 MB EFI System Partition (ESP, gdisk type EF00)
+
+* a third partition spanning the set ``hdsize`` parameter or the remaining space
+  used for the chosen storage type
+
+Systems using ZFS as root filesystem are booted with a kernel and initrd image
+stored on the 512 MB EFI System Partition. For legacy BIOS systems, ``grub`` is
+used, for EFI systems ``systemd-boot`` is used. Both are installed and configured
+to point to the ESPs.
+
+``grub`` in BIOS mode (``--target i386-pc``) is installed onto the BIOS Boot
+Partition of all selected disks on all systems booted with ``grub`` (These are
+all installs with root on ``ext4`` or ``xfs`` and installs with root on ZFS on
+non-EFI systems).
+
+
+.. _systembooting-proxmox-boot-tool:
+
+Synchronizing the content of the ESP with ``proxmox-boot-tool``
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+``proxmox-boot-tool`` is a utility used to keep the contents of the EFI System
+Partitions properly configured and synchronized. It copies certain kernel
+versions to all ESPs and configures the respective bootloader to boot from
+the ``vfat`` formatted ESPs. In the context of ZFS as root filesystem this means
+that you can use all optional features on your root pool instead of the subset
+which is also present in the ZFS implementation in ``grub`` or having to create a
+separate small boot-pool (see: `Booting ZFS on root with grub
+<https://github.com/zfsonlinux/zfs/wiki/Debian-Stretch-Root-on-ZFS>`_).
+
+In setups with redundancy all disks are partitioned with an ESP, by the
+installer. This ensures the system boots even if the first boot device fails
+or if the BIOS can only boot from a particular disk.
+
+The ESPs are not kept mounted during regular operation. This helps to prevent
+filesystem corruption to the ``vfat`` formatted ESPs in case of a system crash,
+and removes the need to manually adapt ``/etc/fstab`` in case the primary boot
+device fails.
+
+``proxmox-boot-tool`` handles the following tasks:
+
+* formatting and setting up a new partition
+* copying and configuring new kernel images and initrd images to all listed ESPs
+* synchronizing the configuration on kernel upgrades and other maintenance tasks
+* managing the list of kernel versions which are synchronized
+* configuring the boot-loader to boot a particular kernel version (pinning)
+
+
+You can view the currently configured ESPs and their state by running:
+
+.. code-block:: console
+
+  # proxmox-boot-tool status
+
+.. _systembooting-proxmox-boot-setup:
+
+Setting up a new partition for use as synced ESP
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+To format and initialize a partition as synced ESP, e.g., after replacing a
+failed vdev in an rpool, ``proxmox-boot-tool`` from ``pve-kernel-helper`` can be used.
+
+WARNING: the ``format`` command will format the ``<partition>``, make sure to pass
+in the right device/partition!
+
+For example, to format an empty partition ``/dev/sda2`` as ESP, run the following:
+
+.. code-block:: console
+
+  # proxmox-boot-tool format /dev/sda2
+
+To setup an existing, unmounted ESP located on ``/dev/sda2`` for inclusion in
+`Proxmox Backup`_'s kernel update synchronization mechanism, use the following:
+
+.. code-block:: console
+
+  # proxmox-boot-tool init /dev/sda2
+
+Afterwards `/etc/kernel/proxmox-boot-uuids`` should contain a new line with the
+UUID of the newly added partition. The ``init`` command will also automatically
+trigger a refresh of all configured ESPs.
+
+.. _systembooting-proxmox-boot-refresh:
+
+Updating the configuration on all ESPs
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+To copy and configure all bootable kernels and keep all ESPs listed in
+``/etc/kernel/proxmox-boot-uuids`` in sync you just need to run:
+
+.. code-block:: console
+
+  # proxmox-boot-tool refresh
+
+(The equivalent to running ``update-grub`` systems with ``ext4`` or ``xfs`` on root).
+
+This is necessary should you make changes to the kernel commandline, or want to
+sync all kernels and initrds.
+
+.. NOTE:: Both ``update-initramfs`` and ``apt`` (when necessary) will automatically
+   trigger a refresh.
+
+Kernel Versions considered by ``proxmox-boot-tool``
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+The following kernel versions are configured by default:
+
+* the currently running kernel
+* the version being newly installed on package updates
+* the two latest already installed kernels
+* the latest version of the second-to-last kernel series (e.g. 5.0, 5.3), if applicable
+* any manually selected kernels
+
+Manually keeping a kernel bootable
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+Should you wish to add a certain kernel and initrd image to the list of
+bootable kernels use ``proxmox-boot-tool kernel add``.
+
+For example run the following to add the kernel with ABI version ``5.0.15-1-pve``
+to the list of kernels to keep installed and synced to all ESPs:
+
+.. code-block:: console
+
+  # proxmox-boot-tool kernel add 5.0.15-1-pve
+
+
+``proxmox-boot-tool kernel list`` will list all kernel versions currently selected
+for booting:
+
+.. code-block:: console
+
+  # proxmox-boot-tool kernel list
+  Manually selected kernels:
+  5.0.15-1-pve
+
+  Automatically selected kernels:
+  5.0.12-1-pve
+  4.15.18-18-pve
+
+Run ``proxmox-boot-tool kernel remove`` to remove a kernel from the list of
+manually selected kernels, for example:
+
+.. code-block:: console
+
+  # proxmox-boot-tool kernel remove 5.0.15-1-pve
+
+
+.. NOTE:: It's required to run ``proxmox-boot-tool refresh`` to update all EFI System
+   Partitions (ESPs) after a manual kernel addition or removal from above.
+
+
+.. _systembooting-determine-bootloader:
+
+Determine which Bootloader is Used
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+
+The simplest and most reliable way to determine which bootloader is used, is to
+watch the boot process of the `Proxmox Backup`_ node.
+
+You will either see the blue box of ``grub`` or the simple black on white
+``systemd-boot``.
+
+
+Determining the bootloader from a running system might not be 100% accurate. The
+safest way is to run the following command:
+
+
+.. code-block:: console
+
+  # efibootmgr -v
+
+
+If it returns a message that EFI variables are not supported, ``grub`` is used in
+BIOS/Legacy mode.
+
+If the output contains a line that looks similar to the following, ``grub`` is
+used in UEFI mode.
+
+.. code-block:: console
+
+  Boot0005* proxmox	[...] File(\EFI\proxmox\grubx64.efi)
+
+
+If the output contains a line similar to the following, ``systemd-boot`` is used.
+
+.. code-block:: console
+
+  Boot0006* Linux Boot Manager	[...] File(\EFI\systemd\systemd-bootx64.efi)
+
+
+By running:
+
+.. code-block:: console
+
+  # proxmox-boot-tool status
+
+
+you can find out if ``proxmox-boot-tool`` is configured, which is a good
+indication of how the system is booted.
+
+
+.. _systembooting-grub:
+
+Grub
+~~~~
+
+``grub`` has been the de-facto standard for booting Linux systems for many years
+and is quite well documented
+(see the `Grub Manual
+<https://www.gnu.org/software/grub/manual/grub/grub.html>`_).
+
+Configuration
+^^^^^^^^^^^^^
+Changes to the ``grub`` configuration are done via the defaults file
+``/etc/default/grub`` or config snippets in ``/etc/default/grub.d``. To regenerate
+the configuration file after a change to the configuration run:
+
+.. code-block:: console
+
+  # update-grub
+
+.. NOTE:: Systems using ``proxmox-boot-tool`` will call
+  ``proxmox-boot-tool refresh`` upon ``update-grub``
+
+.. _systembooting-systemdboot:
+
+Systemd-boot
+~~~~~~~~~~~~
+
+``systemd-boot`` is a lightweight EFI bootloader. It reads the kernel and initrd
+images directly from the EFI Service Partition (ESP) where it is installed.
+The main advantage of directly loading the kernel from the ESP is that it does
+not need to reimplement the drivers for accessing the storage. In `Proxmox
+Backup`_ :ref:`proxmox-boot-tool <systembooting-proxmox-boot-tool>` is used to
+keep the configuration on the ESPs synchronized.
+
+.. _systembooting-systemd-boot-config:
+
+Configuration
+^^^^^^^^^^^^^
+
+``systemd-boot`` is configured via the file ``loader/loader.conf`` in the root
+directory of an EFI System Partition (ESP). See the ``loader.conf(5)`` manpage
+for details.
+
+Each bootloader entry is placed in a file of its own in the directory
+``loader/entries/``
+
+An example entry.conf looks like this (``/`` refers to the root of the ESP):
+
+.. code-block:: console
+
+  title    Proxmox
+  version  5.0.15-1-pve
+  options   root=ZFS=rpool/ROOT/pve-1 boot=zfs
+  linux    /EFI/proxmox/5.0.15-1-pve/vmlinuz-5.0.15-1-pve
+  initrd   /EFI/proxmox/5.0.15-1-pve/initrd.img-5.0.15-1-pve
+
+
+.. _systembooting-edit-kernel-cmdline:
+
+Editing the Kernel Commandline
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+You can modify the kernel commandline in the following places, depending on the
+bootloader used:
+
+Grub
+^^^^
+
+The kernel commandline needs to be placed in the variable
+``GRUB_CMDLINE_LINUX_DEFAULT`` in the file ``/etc/default/grub``. Running
+``update-grub`` appends its content to all ``linux`` entries in
+``/boot/grub/grub.cfg``.
+
+Systemd-boot
+^^^^^^^^^^^^
+
+The kernel commandline needs to be placed as one line in ``/etc/kernel/cmdline``.
+To apply your changes, run ``proxmox-boot-tool refresh``, which sets it as the
+``option`` line for all config files in ``loader/entries/proxmox-*.conf``.
+
+
+.. _systembooting-kernel-pin:
+
+Override the Kernel-Version for next Boot
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+To select a kernel that is not currently the default kernel, you can either:
+
+* use the boot loader menu that is displayed at the beginning of the boot
+  process
+* use the ``proxmox-boot-tool`` to ``pin`` the system to a kernel version either
+  once or permanently (until pin is reset).
+
+This should help you work around incompatibilities between a newer kernel
+version and the hardware.
+
+.. NOTE:: Such a pin should be removed as soon as possible so that all current
+   security patches of the latest kernel are also applied to the system.
+
+For example: To permanently select the version ``5.15.30-1-pve`` for booting you
+would run:
+
+.. code-block:: console
+
+  # proxmox-boot-tool kernel pin 5.15.30-1-pve
+
+
+.. TIP:: The pinning functionality works for all `Proxmox Backup`_ systems, not only those using
+   ``proxmox-boot-tool`` to synchronize the contents of the ESPs, if your system
+   does not use ``proxmox-boot-tool`` for synchronizing you can also skip the
+   ``proxmox-boot-tool refresh`` call in the end.
+
+You can also set a kernel version to be booted on the next system boot only.
+This is for example useful to test if an updated kernel has resolved an issue,
+which caused you to ``pin`` a version in the first place:
+
+.. code-block:: console
+
+  # proxmox-boot-tool kernel pin 5.15.30-1-pve --next-boot
+
+
+To remove any pinned version configuration use the ``unpin`` subcommand:
+
+.. code-block:: console
+
+  # proxmox-boot-tool kernel unpin
+
+While ``unpin`` has a ``--next-boot`` option as well, it is used to clear a pinned
+version set with ``--next-boot``. As that happens already automatically on boot,
+invonking it manually is of little use.
+
+After setting, or clearing pinned versions you also need to synchronize the
+content and configuration on the ESPs by running the ``refresh`` subcommand.
+
+.. TIP:: You will be prompted to automatically do for  ``proxmox-boot-tool`` managed
+   systems if you call the tool interactively.
+
+.. code-block:: console
+
+  # proxmox-boot-tool refresh
diff --git a/www/OnlineHelpInfo.js b/www/OnlineHelpInfo.js
index 0510df21..c982e7dd 100644
--- a/www/OnlineHelpInfo.js
+++ b/www/OnlineHelpInfo.js
@@ -147,6 +147,50 @@ const proxmoxOnlineHelpInfo = {
     "link": "/docs/sysadmin.html#sysadmin-host-administration",
     "title": "Host System Administration"
   },
+  "chapter-systembooting": {
+    "link": "/docs/sysadmin.html#chapter-systembooting",
+    "title": "Host Bootloader"
+  },
+  "systembooting-installer-part-scheme": {
+    "link": "/docs/sysadmin.html#systembooting-installer-part-scheme",
+    "title": "Partitioning Scheme Used by the Installer"
+  },
+  "systembooting-proxmox-boot-tool": {
+    "link": "/docs/sysadmin.html#systembooting-proxmox-boot-tool",
+    "title": "Synchronizing the content of the ESP with ``proxmox-boot-tool``"
+  },
+  "systembooting-proxmox-boot-setup": {
+    "link": "/docs/sysadmin.html#systembooting-proxmox-boot-setup",
+    "title": "Setting up a new partition for use as synced ESP"
+  },
+  "systembooting-proxmox-boot-refresh": {
+    "link": "/docs/sysadmin.html#systembooting-proxmox-boot-refresh",
+    "title": "Updating the configuration on all ESPs"
+  },
+  "systembooting-determine-bootloader": {
+    "link": "/docs/sysadmin.html#systembooting-determine-bootloader",
+    "title": "Determine which Bootloader is Used"
+  },
+  "systembooting-grub": {
+    "link": "/docs/sysadmin.html#systembooting-grub",
+    "title": "Grub"
+  },
+  "systembooting-systemdboot": {
+    "link": "/docs/sysadmin.html#systembooting-systemdboot",
+    "title": "Systemd-boot"
+  },
+  "systembooting-systemd-boot-config": {
+    "link": "/docs/sysadmin.html#systembooting-systemd-boot-config",
+    "title": "Configuration"
+  },
+  "systembooting-edit-kernel-cmdline": {
+    "link": "/docs/sysadmin.html#systembooting-edit-kernel-cmdline",
+    "title": "Editing the Kernel Commandline"
+  },
+  "systembooting-kernel-pin": {
+    "link": "/docs/sysadmin.html#systembooting-kernel-pin",
+    "title": "Override the Kernel-Version for next Boot"
+  },
   "tape-backup": {
     "link": "/docs/tape-backup.html#tape-backup",
     "title": "Tape Backup"
-- 
2.30.2





^ permalink raw reply	[flat|nested] 7+ messages in thread

* [pbs-devel] [PATCH proxmox-backup 3/5] docs: system-booting: (re)add screenshots
  2022-05-11 14:06 [pbs-devel] [PATCH proxmox-backup 0/5] update and improve sysadmin documenation Stoiko Ivanov
  2022-05-11 14:06 ` [pbs-devel] [PATCH proxmox-backup 1/5] docs: sysadmin: adapt kernel-specifics for PBS Stoiko Ivanov
  2022-05-11 14:06 ` [pbs-devel] [PATCH proxmox-backup 2/5] docs: add system-booting from pve-docs Stoiko Ivanov
@ 2022-05-11 14:06 ` Stoiko Ivanov
  2022-05-11 14:06 ` [pbs-devel] [PATCH proxmox-backup 4/5] docs: local-zfs: minor cleanup and adaptation Stoiko Ivanov
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Stoiko Ivanov @ 2022-05-11 14:06 UTC (permalink / raw)
  To: pbs-devel

add the grub+systemdboot screen from a PBS system (taken via
spice-viewer).

The alingment of left/right looked better to me than keeping both on the
right).

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
---
 docs/images/screenshots/boot-grub.png        | Bin 0 -> 10090 bytes
 docs/images/screenshots/boot-systemdboot.png | Bin 0 -> 4613 bytes
 docs/system-booting.rst                      |   9 +++++++++
 3 files changed, 9 insertions(+)
 create mode 100644 docs/images/screenshots/boot-grub.png
 create mode 100644 docs/images/screenshots/boot-systemdboot.png

diff --git a/docs/images/screenshots/boot-grub.png b/docs/images/screenshots/boot-grub.png
new file mode 100644
index 0000000000000000000000000000000000000000..528782dc63c34319ec1e56dd071ea2aed536317c
GIT binary patch
literal 10090
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

literal 0
HcmV?d00001

diff --git a/docs/images/screenshots/boot-systemdboot.png b/docs/images/screenshots/boot-systemdboot.png
new file mode 100644
index 0000000000000000000000000000000000000000..cdd7f4a44c1140dea089af05dafe3678b04c6460
GIT binary patch
literal 4613
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
AHvj+t

literal 0
HcmV?d00001

diff --git a/docs/system-booting.rst b/docs/system-booting.rst
index 6d6ebaab..f8fa0e14 100644
--- a/docs/system-booting.rst
+++ b/docs/system-booting.rst
@@ -181,13 +181,22 @@ manually selected kernels, for example:
 Determine which Bootloader is Used
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
+.. image:: images/screenshots/boot-grub.png
+  :target: _images/boot-grub.png
+  :align: left
+  :alt: Grub boot screen
 
 The simplest and most reliable way to determine which bootloader is used, is to
 watch the boot process of the `Proxmox Backup`_ node.
 
+
 You will either see the blue box of ``grub`` or the simple black on white
 ``systemd-boot``.
 
+.. image:: images/screenshots/boot-systemdboot.png
+  :target: _images/boot-systemdboot.png
+  :align: right
+  :alt: systemd-boot screen
 
 Determining the bootloader from a running system might not be 100% accurate. The
 safest way is to run the following command:
-- 
2.30.2





^ permalink raw reply	[flat|nested] 7+ messages in thread

* [pbs-devel] [PATCH proxmox-backup 4/5] docs: local-zfs: minor cleanup and adaptation
  2022-05-11 14:06 [pbs-devel] [PATCH proxmox-backup 0/5] update and improve sysadmin documenation Stoiko Ivanov
                   ` (2 preceding siblings ...)
  2022-05-11 14:06 ` [pbs-devel] [PATCH proxmox-backup 3/5] docs: system-booting: (re)add screenshots Stoiko Ivanov
@ 2022-05-11 14:06 ` Stoiko Ivanov
  2022-05-11 14:06 ` [pbs-devel] [PATCH proxmox-backup 5/5] docs: zfs: update documentation about ZED Stoiko Ivanov
  2022-05-12  8:14 ` [pbs-devel] applied-series: [PATCH proxmox-backup 0/5] update and improve sysadmin documenation Thomas Lamprecht
  5 siblings, 0 replies; 7+ messages in thread
From: Stoiko Ivanov @ 2022-05-11 14:06 UTC (permalink / raw)
  To: pbs-devel

fixes a few small glitches in the markup.

rephrases a few PVEisms (PBS will not swap when starting a backup to
an external storage)

add zstd to available compression algorithms

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
---
 docs/local-zfs.rst | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/docs/local-zfs.rst b/docs/local-zfs.rst
index 32af860f..4c4bd387 100644
--- a/docs/local-zfs.rst
+++ b/docs/local-zfs.rst
@@ -191,12 +191,12 @@ With `systemd-boot`:
 
 .. code-block:: console
 
-  # pve-efiboot-tool format <new disk's ESP>
-  # pve-efiboot-tool init <new disk's ESP>
+  # proxmox-boot-tool format <new ESP>
+  # proxmox-boot-tool init <new ESP>
 
 .. NOTE:: `ESP` stands for EFI System Partition, which is setup as partition #2 on
-  bootable disks setup by the {pve} installer since version 5.4. For details, see
-  xref:sysboot_systemd_boot_setup[Setting up a new partition for use as synced ESP].
+  bootable disks setup by the `Proxmox Backup`_ installer. For details, see
+  :ref:`Setting up a new partition for use as synced ESP <systembooting-proxmox-boot-setup>`.
 
 With `grub`:
 
@@ -254,6 +254,7 @@ The above example limits the usage to 8 GiB ('8 * 2^30^').
    configuration in `/etc/modprobe.d/zfs.conf`, with:
 
 .. code-block:: console
+
   options zfs zfs_arc_min=8589934591
   options zfs zfs_arc_max=8589934592
 
@@ -273,8 +274,7 @@ Swap on ZFS
 ^^^^^^^^^^^
 
 Swap-space created on a zvol may cause some issues, such as blocking the
-server or generating a high IO load, often seen when starting a Backup
-to an external Storage.
+server or generating a high IO load.
 
 We strongly recommend using enough memory, so that you normally do not
 run into low memory situations. Should you need or want to add swap, it is
@@ -311,18 +311,20 @@ ZFS compression
 ^^^^^^^^^^^^^^^
 
 To activate compression:
+
 .. code-block:: console
 
   # zpool set compression=lz4 <pool>
 
 We recommend using the `lz4` algorithm, since it adds very little CPU overhead.
-Other algorithms such as `lzjb` and `gzip-N` (where `N` is an integer from `1-9`
+Other algorithms such as `lzjb`, `zstd` and `gzip-N` (where `N` is an integer from `1-9`
 representing the compression ratio, where 1 is fastest and 9 is best
 compression) are also available. Depending on the algorithm and how
 compressible the data is, having compression enabled can even increase I/O
 performance.
 
 You can disable compression at any time with:
+
 .. code-block:: console
 
   # zfs set compression=off <dataset>
-- 
2.30.2





^ permalink raw reply	[flat|nested] 7+ messages in thread

* [pbs-devel] [PATCH proxmox-backup 5/5] docs: zfs: update documentation about ZED
  2022-05-11 14:06 [pbs-devel] [PATCH proxmox-backup 0/5] update and improve sysadmin documenation Stoiko Ivanov
                   ` (3 preceding siblings ...)
  2022-05-11 14:06 ` [pbs-devel] [PATCH proxmox-backup 4/5] docs: local-zfs: minor cleanup and adaptation Stoiko Ivanov
@ 2022-05-11 14:06 ` Stoiko Ivanov
  2022-05-12  8:14 ` [pbs-devel] applied-series: [PATCH proxmox-backup 0/5] update and improve sysadmin documenation Thomas Lamprecht
  5 siblings, 0 replies; 7+ messages in thread
From: Stoiko Ivanov @ 2022-05-11 14:06 UTC (permalink / raw)
  To: pbs-devel

This closely follows commit aa425868069818167ff0a3cca5c64a2acc88173e
in pve-docs.

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
---
 docs/local-zfs.rst | 21 ++++++++-------------
 1 file changed, 8 insertions(+), 13 deletions(-)

diff --git a/docs/local-zfs.rst b/docs/local-zfs.rst
index 4c4bd387..7b2d3850 100644
--- a/docs/local-zfs.rst
+++ b/docs/local-zfs.rst
@@ -211,27 +211,22 @@ Usually `grub.cfg` is located in `/boot/grub/grub.cfg`
 Activate e-mail notification
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
-ZFS comes with an event daemon, which monitors events generated by the
-ZFS kernel module. The daemon can also send emails on ZFS events like
-pool errors. Newer ZFS packages ship the daemon in a separate package,
-and you can install it using `apt-get`:
+ZFS comes with an event daemon ``ZED``, which monitors events generated by the
+ZFS kernel module. The daemon can also send emails on ZFS events like pool
+errors. Newer ZFS packages ship the daemon in a separate package ``zfs-zed``,
+which should already be installed by default in `Proxmox Backup`_.
 
-.. code-block:: console
-
-  # apt-get install zfs-zed
-
-To activate the daemon, it is necessary to to uncomment the ZED_EMAIL_ADDR
-setting, in the file `/etc/zfs/zed.d/zed.rc`.
+You can configure the daemon via the file ``/etc/zfs/zed.d/zed.rc`` with your
+favorite editor. The required setting for email notfication is
+``ZED_EMAIL_ADDR``, which is set to ``root`` by default.
 
 .. code-block:: console
 
   ZED_EMAIL_ADDR="root"
 
-Please note that Proxmox Backup forwards mails to `root` to the email address
+Please note that `Proxmox Backup`_ forwards mails to `root` to the email address
 configured for the root user.
 
-IMPORTANT: The only setting that is required is `ZED_EMAIL_ADDR`. All
-other settings are optional.
 
 Limit ZFS memory usage
 ^^^^^^^^^^^^^^^^^^^^^^
-- 
2.30.2





^ permalink raw reply	[flat|nested] 7+ messages in thread

* [pbs-devel] applied-series: [PATCH proxmox-backup 0/5] update and improve sysadmin documenation
  2022-05-11 14:06 [pbs-devel] [PATCH proxmox-backup 0/5] update and improve sysadmin documenation Stoiko Ivanov
                   ` (4 preceding siblings ...)
  2022-05-11 14:06 ` [pbs-devel] [PATCH proxmox-backup 5/5] docs: zfs: update documentation about ZED Stoiko Ivanov
@ 2022-05-12  8:14 ` Thomas Lamprecht
  5 siblings, 0 replies; 7+ messages in thread
From: Thomas Lamprecht @ 2022-05-12  8:14 UTC (permalink / raw)
  To: Proxmox Backup Server development discussion, Stoiko Ivanov

Am 5/11/22 um 16:06 schrieb Stoiko Ivanov:
> This patchset started from #3761 (adding kernel-pinning).
> 
> I skimmed through the docs - fixed a few things which seemed not too
> fitting for PBS
> 
> else the chapter for system-booting is taken from pve-docs (with new
> screenshots) and translated (more or less) mechanically to reST.
> 
> Currently planning on similarly copying and adapting the certificate
> documentation.
> 
> In the long run I think it'd make sense to have a common docs repo
> (proxmox-docs) for things that our products share (zfs, the acme
> part of the certificate documentation) and just include the files.
> (after some preprocessing and for the time being conversion
> reST->asciidoc)
> 
> Stoiko Ivanov (5):
>   docs: sysadmin: adapt kernel-specifics for PBS
>   docs: add system-booting from pve-docs
>   docs: system-booting: (re)add screenshots
>   docs: local-zfs: minor cleanup and adaptation
>   docs: zfs: update documentation about ZED

applied, thanks!




^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2022-05-12  8:14 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-11 14:06 [pbs-devel] [PATCH proxmox-backup 0/5] update and improve sysadmin documenation Stoiko Ivanov
2022-05-11 14:06 ` [pbs-devel] [PATCH proxmox-backup 1/5] docs: sysadmin: adapt kernel-specifics for PBS Stoiko Ivanov
2022-05-11 14:06 ` [pbs-devel] [PATCH proxmox-backup 2/5] docs: add system-booting from pve-docs Stoiko Ivanov
2022-05-11 14:06 ` [pbs-devel] [PATCH proxmox-backup 3/5] docs: system-booting: (re)add screenshots Stoiko Ivanov
2022-05-11 14:06 ` [pbs-devel] [PATCH proxmox-backup 4/5] docs: local-zfs: minor cleanup and adaptation Stoiko Ivanov
2022-05-11 14:06 ` [pbs-devel] [PATCH proxmox-backup 5/5] docs: zfs: update documentation about ZED Stoiko Ivanov
2022-05-12  8:14 ` [pbs-devel] applied-series: [PATCH proxmox-backup 0/5] update and improve sysadmin documenation Thomas Lamprecht

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal