Installation

From CRIU
Revision as of 11:36, 23 July 2012 by Kir (talk | contribs) (some moving around)
Jump to navigation Jump to search

CRtools is an utility to checkpoint/restore a process tree.

Tools installation

Get the latest release:

Tarball: criu-3.19.tar.gz
Version: 3.19 "Bronze Peacock"
Released: 27 Nov 2023
GIT tag: v3.19

.

Alternatively, use git.criu.org git repository. Clone this repo to test new functionality. Anything but master branch are development ones, don't refer on them.

Before building, make sure you have C bindings for Google's Protocol Buffers installed. In rpm-based world this is protobuf-c-devel package.

Then run make in the sources root.

Kernel configuration

The v3.5 upstream kernel already has most of the required functionality merged. Some is still out-of-tree though, so you might need to clone the linux-2.6-crtools.git, checkout the crtools-3.5 branch and compile the kernel.

Make sure you have the following options turned on:

  • General setup -> Checkpoint/restore support (CONFIG_CHECKPOINT_RESTORE)
  • General setup -> open by fhandle syscalls (CONFIG_FHANDLE)
  • General setup -> Enable eventfd() system call (CONFIG_EVENTFD)
  • General setup -> Enable eventpoll support (CONFIG_EPOLL)
  • File systems -> Inotify support for userspace (CONFIG_INOTIFY_USER)
  • Networking support -> Networking options -> Unix domain sockets -> UNIX: socket monitoring interface (CONFIG_UNIX_DIAG)
  • Networking support -> Networking options -> TCP/IP networking -> INET: socket monitoring interface (CONFIG_INET_DIAG)

Note you might have to enable

  • General setup -> Configure standard kernel features (expert users) (CONFIG_EXPERT)

option, which depends on

  • General setup -> Embedded system (CONFIG_EMBEDDED)

(welcome to Kconfig reverse chains hell).

Checking how it works

You can first look into the ZDTM Test Suite which sits in the tests/zdtm/ directory.

Using CR tools

Please see Usage.