Changes

Jump to: navigation, search

Installation

27 bytes added, 10:06, 22 July 2014
no edit summary
<code>criu</code> is an utility to checkpoint/restore a process tree. This page describes manual installationhow to manually build and install prerequisites and the tool itself.
{{Note|Most probably you don't need manual installation, but rather [[Packages]] for your distro.}}
== Tools installation Prerequisites ==
Get the latest release:{{Out|{{Latest release}}}}=== Protocol Buffers with C Bindings ===
AlternativelyCRIU uses the C bindings of Google's Protocol Buffers. The easiest approach for most would be to install a distribution packages. RPM package name: <code>protobuf-c-devel</code>. Debian package name: <code>libprotobuf-c0-dev</code>. If you would like to build from source, use [the Protocol Buffer library can be found at http://gitcode.criugoogle.orgcom/?p=criu/protobuf/, while the Protocol Buffer C bindings can be found at http://code.git;a=summary gitgoogle.criu.org] git repository. Clone this repo to test new functionalitycom/p/protobuf-c/.
Before building, make sure you have C bindings for Google's Protocol Buffers installed. In an RPM-based world this is the <code>protobuf-c-devel</code> package, and on Debian and derivatives, <code>libprotobuf-c0-dev</code>.If for some reason there is no appropriate package for your system available, just install Google's Protocol Buffer from thesource tarball. The protocol buffer library can be found at http://code.google.com/p/protobuf/, whileprotocol buffer C binding can be found at http://code.google.com/p/protobuf-c/. Then run <code>make</code> in the sources root. Please note that the tool only supports x86_64 and ARM architectures. == = Linux Kernel configuration ===
Linux kernel v3.11 or newer is required, with some specific options set. If your distribution does not provide needed kernel, you might want to compile one yourself. Note we also have our [[custom kernel]], which might contain some experimental CRIU related patches.
(welcome to Kconfig reverse chains hell).
The following options should must be enabled for CRIU to work:
; <code>CONFIG_CHECKPOINT_RESTORE</code>
: Networking support -> Networking options -> Network testing -> Packet generator
===iproute2===
The iproute2 tool version 3.5.0 or higher is needed for dumping network namespaces.
The latest one can be cloned from [http://git.kernel.org/?p=linux/kernel/git/shemminger/iproute2.git;a=summary iproute2]. It should be compiled and a path to ip written in the environment variable <code>CR_IP_TOOL</code>.
== Building CRIU From Source == Get the latest release:{{Out|{{Latest release}}}} Alternatively, use [http://git.criu.org/?p=criu.git;a=summary git.criu.org] git repository. Clone this repo to test new functionality. Then run <code>make</code> in the sources root. Please note that the tool only supports x86_64 and ARM architectures. == Checking how it works That It Works ==
First thing to do is to run
50
edits

Navigation menu