]> git.proxmox.com Git - pve-docs.git/blobdiff - pct.adoc
vzdump: drop overly scary & outdated warning about fleecing
[pve-docs.git] / pct.adoc
index 9a9d4ff07551195e43ba9d00e2ef8f0303bc810a..529b72f49a1090d92bc8424768686269d15f3fca 100644 (file)
--- a/pct.adoc
+++ b/pct.adoc
@@ -59,7 +59,7 @@ VM, but without the additional overhead. This means that Proxmox Containers can
 be categorized as ``System Containers'', rather than ``Application Containers''.
 
 NOTE: If you want to run application containers, for example, 'Docker' images, it
-is recommended that you run them inside a Proxmox Qemu VM. This will give you
+is recommended that you run them inside a Proxmox QEMU VM. This will give you
 all the advantages of application containerization, while also providing the
 benefits that VMs offer, such as strong isolation from the host and the ability
 to live-migrate, which otherwise isn't possible with containers. 
@@ -72,7 +72,7 @@ Technology Overview
 
 * Integrated into {pve} graphical web user interface (GUI)
 
-* Easy to use command line tool `pct`
+* Easy to use command-line tool `pct`
 
 * Access via {pve} REST API
 
@@ -84,13 +84,172 @@ Technology Overview
 
 * Modern Linux kernels
 
-* Image based deployment (templates)
+* Image based deployment (xref:pct_supported_distributions[templates])
 
 * Uses {pve} xref:chapter_storage[storage library]
 
 * Container setup from host (network, DNS, storage, etc.)
 
 
+[[pct_supported_distributions]]
+Supported Distributions
+-----------------------
+
+List of officially supported distributions can be found below.
+
+Templates for the following distributions are available through our
+repositories. You can use xref:pct_container_images[pveam] tool or the
+Graphical User Interface to download them.
+
+Alpine Linux
+~~~~~~~~~~~~
+
+[quote, 'https://alpinelinux.org']
+____
+Alpine Linux is a security-oriented, lightweight Linux distribution based on
+musl libc and busybox.
+____
+
+For currently supported releases see:
+
+https://alpinelinux.org/releases/
+
+Arch Linux
+~~~~~~~~~~
+
+[quote, 'https://archlinux.org/']
+____
+Arch Linux, a lightweight and flexible Linux® distribution that tries to Keep It Simple.
+____
+
+Arch Linux is using a rolling-release model, see its wiki for more details:
+
+https://wiki.archlinux.org/title/Arch_Linux
+
+CentOS, Almalinux, Rocky Linux
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+CentOS / CentOS Stream
+^^^^^^^^^^^^^^^^^^^^^^
+
+[quote, 'https://centos.org']
+____
+The CentOS Linux distribution is a stable, predictable, manageable and
+reproducible platform derived from the sources of Red Hat Enterprise Linux
+(RHEL)
+____
+
+For currently supported releases see:
+
+https://en.wikipedia.org/wiki/CentOS#End-of-support_schedule
+
+Almalinux
+^^^^^^^^^
+
+[quote, 'https://almalinux.org']
+____
+An Open Source, community owned and governed, forever-free enterprise Linux
+distribution, focused on long-term stability, providing a robust
+production-grade platform. AlmaLinux OS is 1:1 binary compatible with RHEL® and
+pre-Stream CentOS.
+____
+
+
+For currently supported releases see:
+
+https://en.wikipedia.org/wiki/AlmaLinux#Releases
+
+Rocky Linux
+^^^^^^^^^^^
+
+[quote, 'https://rockylinux.org']
+____
+Rocky Linux is a community enterprise operating system designed to be 100%
+bug-for-bug compatible with America's top enterprise Linux distribution now
+that its downstream partner has shifted direction.
+____
+
+For currently supported releases see:
+
+https://en.wikipedia.org/wiki/Rocky_Linux#Releases
+
+Debian
+~~~~~~
+
+[quote, 'https://www.debian.org/intro/index#software']
+____
+Debian is a free operating system, developed and maintained by the Debian
+project. A free Linux distribution with thousands of applications to meet our
+users' needs.
+____
+
+For currently supported releases see:
+
+https://www.debian.org/releases/stable/releasenotes
+
+Devuan
+~~~~~~
+
+[quote, 'https://www.devuan.org']
+____
+Devuan GNU+Linux is a fork of Debian without systemd that allows users to
+reclaim control over their system by avoiding unnecessary entanglements and
+ensuring Init Freedom.
+____
+
+For currently supported releases see:
+
+https://www.devuan.org/os/releases
+
+Fedora
+~~~~~~
+
+[quote, 'https://getfedora.org']
+____
+Fedora creates an innovative, free, and open source platform for hardware,
+clouds, and containers that enables software developers and community members
+to build tailored solutions for their users.
+____
+
+For currently supported releases see:
+
+https://fedoraproject.org/wiki/Releases
+
+Gentoo
+~~~~~~
+
+[quote, 'https://www.gentoo.org']
+____
+a highly flexible, source-based Linux distribution.
+____
+
+Gentoo is using a rolling-release model.
+
+OpenSUSE
+~~~~~~~~
+
+[quote, 'https://www.opensuse.org']
+____
+The makers' choice for sysadmins, developers and desktop users.
+____
+
+For currently supported releases see:
+
+https://get.opensuse.org/leap/
+
+Ubuntu
+~~~~~~
+
+[quote, 'https://ubuntu.com/']
+____
+Ubuntu is the modern, open source operating system on Linux for the enterprise
+server, desktop, cloud, and IoT.
+____
+
+For currently supported releases see:
+
+https://wiki.ubuntu.com/Releases
+
 [[pct_container_images]]
 Container Images
 ----------------
@@ -98,11 +257,11 @@ Container Images
 Container images, sometimes also referred to as ``templates'' or
 ``appliances'', are `tar` archives which contain everything to run a container.
 
-{pve} itself provides a variety of basic templates for the most common Linux
-distributions. They can be downloaded using the GUI or the `pveam` (short for
-{pve} Appliance Manager) command line utility.
-Additionally, https://www.turnkeylinux.org/[TurnKey Linux] container templates
-are also available to download.
+{pve} itself provides a variety of basic templates for the
+xref:pct_supported_distributions[most common Linux distributions].  They can be
+downloaded using the GUI or the `pveam` (short for {pve} Appliance Manager)
+command-line utility.  Additionally, https://www.turnkeylinux.org/[TurnKey
+Linux] container templates are also available to download.
 
 The list of available templates is updated daily through the 'pve-daily-update'
 timer. You can also trigger an update manually by executing:
@@ -268,8 +427,9 @@ cpulimit: 0.5
 
 `cpuunits`: :: This is a relative weight passed to the kernel scheduler. The
 larger the number is, the more CPU time this container gets. Number is relative
-to the weights of all the other running containers. The default is 1024. You
-can use this setting to prioritize some containers.
+to the weights of all the other running containers. The default is `100` (or
+`1024` if the host uses legacy cgroup v1). You can use this setting to
+prioritize some containers.
 
 
 [[pct_memory]]
@@ -362,10 +522,21 @@ hierarchy under `/mnt/bindmounts`. Never bind mount system directories like
 NOTE: The bind mount source path must not contain any symlinks.
 
 For example, to make the directory `/mnt/bindmounts/shared` accessible in the
-container with ID `100` under the path `/shared`, use a configuration line like
-`mp0: /mnt/bindmounts/shared,mp=/shared` in `/etc/pve/lxc/100.conf`.
-Alternatively, use `pct set 100 -mp0 /mnt/bindmounts/shared,mp=/shared` to
-achieve the same result.
+container with ID `100` under the path `/shared`, add a configuration line such as:
+
+----
+mp0: /mnt/bindmounts/shared,mp=/shared
+----
+
+into `/etc/pve/lxc/100.conf`.
+
+Or alternatively use the `pct` tool:
+
+----
+pct set 100 -mp0 /mnt/bindmounts/shared,mp=/shared
+----
+
+to achieve the same result.
 
 
 Device Mount Points
@@ -509,7 +680,7 @@ https://www.kernel.org/doc/html/v5.11/admin-guide/cgroup-v2.html['cgroupv2'].
 Since {pve} 7.0, the default is a pure 'cgroupv2' environment. Previously a
 "hybrid" setup was used, where resource control was mainly done in 'cgroupv1'
 with an additional 'cgroupv2' controller which could take over some subsystems
-via the 'cgroup_no_v1' kernel command line parameter. (See the
+via the 'cgroup_no_v1' kernel command-line parameter. (See the
 https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html[kernel
 parameter documentation] for details.)
 
@@ -551,9 +722,8 @@ environment, you can either
   decades old OS versions just fine there.
 
 * Switch back to the legacy 'cgroup' controller. Note that while it can be a
-  valid solution, it's not a permanent one. There's a high likelihood that a
-  future {pve} major release, for example 8.0, cannot support the legacy
-  controller anymore.
+  valid solution, it's not a permanent one. Starting from {pve} 9.0, the legacy
+  controller will not be supported anymore.
 ====
 
 [[pct_cgroup_change_version]]
@@ -563,7 +733,7 @@ Changing CGroup Version
 TIP: If file system quotas are not required and all containers support 'cgroupv2',
 it is recommended to stick to the new default.
 
-To switch back to the previous version the following kernel command line
+To switch back to the previous version the following kernel command-line
 parameter can be used:
 
 ----
@@ -792,8 +962,8 @@ explicitly set, the mount point configuration from the backed up configuration
 file is restored using the following steps:
 
 . Extract mount points and their options from backup
-. Create volumes for storage backed mount points on the target provided with the
-  `storage` parameter. (default: `local`)
+. Create volumes for storage backed mount points on the storage provided with
+  the `storage` parameter (default: `local`).
 . Extract files from backup archive
 . Add bind and device mount points to restored configuration (limited to root
   user)
@@ -829,7 +999,7 @@ time, for example:
 Managing Containers with `pct`
 ------------------------------
 
-The ``Proxmox Container Toolkit'' (`pct`) is the command line tool to manage
+The ``Proxmox Container Toolkit'' (`pct`) is the command-line tool to manage
 {pve} containers. It enables you to create or destroy containers, as well as
 control the container execution (start, stop, reboot, migrate, etc.). It can be
 used to set parameters in the config file of a container, for example the
@@ -891,6 +1061,19 @@ backup jobs and HA resource configurations.
 # pct destroy 100 --purge
 ----
 
+Move a mount point volume to a different storage.
+
+----
+# pct move-volume 100 mp0 other-storage
+----
+
+Reassign a volume to a different CT. This will remove the volume `mp0` from
+the source CT and attaches it as `mp1` to the target CT. In the background
+the volume is being renamed so that the name matches the new owner.
+
+----
+#  pct move-volume 100 mp0 --target-vmid 200 --target-volume mp1
+----
 
 
 Obtaining Debugging Logs