No description
  • Perl 98.9%
  • Makefile 1.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jakob Klocker c05243e426 fix: #7148: check target CT protection before reassigning volume
When reassigning a volume, check if the destination config has
protection mode enabled before removing the volume from the source
config. Without the check, the volume would fail to be added to the
target because of the protection mode and thus end up orphaned, not
present in either configuration.

Link: https://bugzilla.proxmox.com/show_bug.cgi?id=7148
Signed-off-by: Jakob Klocker <j.klocker@proxmox.com>
Tested-by: Lukas Sichert <l.sichert@proxmox.com>
Link: https://lore.proxmox.com/20260601115240.36497-1-j.klocker@proxmox.com
[FE: make tidy
     improve commit message
     clarify error message]
Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
2026-08-26 16:14:46 +02:00
debian bump version to 6.1.13 2026-08-04 13:11:15 +02:00
src fix: #7148: check target CT protection before reassigning volume 2026-08-26 16:14:46 +02:00
.gitignore gitignore: add build artefacts to ignore list 2023-11-17 15:56:10 +01:00
Makefile adopt perltidy also for executables without perl extension 2025-07-02 22:45:16 +02:00
README update README for new configuration format 2015-08-08 17:11:40 +02:00

= Info for developers =

== Command Line Tool ==

Example:

 # pct create 200 debian-7.0-standard_7.0-2_i386.tar.gz
 # pct start 200
 # pct enter 200
 # pct stop 200
 # pct destroy 200

You can get detailed help with:

 # pct help -v
 
== Container names ==

We use integers values for container names (and do not allow to use
arbitrary names for containers).

== LXC Configuration ==

We store LXC container configurations on the cluster file system:

 /etc/pve/nodes/lxc/<CTID>.conf

There is a symbolic link for the local node at

 /etc/pve/lxc => /etc/pve/nodes/<localhost>/lxc

see man pct.conf for syntax details.

== CRIU ==

CRIU (1.5.2) does not work well with kernel 3.10.0, so checkpoint/restore
and live migration does not work.

= FAQ =

* Why not LXD

- LXD uses a local database to store configuration files, which simply
  does not work with our distributed configuration file system
  (pmxcfs)

- We want to use our existing libraries (i.e. Storage). Also see:
  https://lists.linuxcontainers.org/pipermail/lxc-users/2015-June/009441.html
  where they write: "Lxd will not be as flexible as lxc in many ways,
  including with respect to backing stores."

  We have a different goal, and want to support many new storage technologies
  like zfs, ceph, ...
  
- It is a wrapper around LXC, and only provides a REST API and new CLI
  tool. But Proxmox VE already provides a full featured API, and CLI tools
  are automatically generated from that API.