Difference between revisions of "CLI"

From CRIU
Jump to navigation Jump to search
(rm "limitations", add link to live migration category)
Line 1: Line 1:
Since the tools and overall concept are still under heavy development, there are some known limitations applied, in particular only pure x86-64 environment is supported, no IA32 emulation allowed.
 
 
 
== Synopsis ==
 
== Synopsis ==
 
<pre>
 
<pre>
Line 101: Line 99:
  
 
See [[Security]]
 
See [[Security]]
== Further reading ==
+
 
 +
== See also ==
  
 
* [[Advanced usage]] article for more options
 
* [[Advanced usage]] article for more options
 
* [[Remote syscall execution]] article for 'exec' command info
 
* [[Remote syscall execution]] article for 'exec' command info
 
* [[:Category:HOWTO]]
 
* [[:Category:HOWTO]]
* A set of articles about live migration:
+
* [[:Category:Live migration]]
** [[Live migration]]
 
** [[Iterative migration]]
 
** [[Disk-less migration]]
 
 
* [[Incremental dumps]]
 
* [[Incremental dumps]]
 
* [[Statistics]]
 
* [[Statistics]]

Revision as of 22:41, 8 September 2016

Synopsis

criu <command> -t <pid> [<options>]

Description

criu is command line utility to steer checkpoint and restore procedure.

Options

<command>::
    One of the following commands
        * 'dump'
                to initiate checkpoint procedure
        * 'restore'
                to restore previously checkpointed processes
        * 'show'
                to decode binary dump files and show their contents in human
                readable format
        * 'check'
                to test whether the kernel support is up-to-date
        * 'exec'
                to execute a system call from another task's context
        * 'page-server'
                to launch a page-server
        * 'service'
                to start RPC service

-c::
    In case of 'show' command the dumped pages content will be shown in hex format.

-D <path>::
    Use path 'path' as a base directory where to look for dump files set. This
    commands allpies to any <command>.

-s::
    Leave tasks in stopped state after checkpoint instead of killing them.

-f <file>::
    This option is valid for 'show' command only and allows to see content of
    the <file> specified.

-t <pid>::
    Checkpoint the whole process tree starting from 'pid'.

-d::
    Detach criu itself once restore is complete.

-n <ns>::
    Checkpoint namespaces. Namespaces must be separated by comma.
    We now support all namespaces -- uts, ipc, net and mnt

-o <file>::
    Write logging messages to 'file'.

-v <num>::
    Set logging level to 'num'. Valid options are: 0 - (silent, error messages
    only), 1 - informative (default), 2 - debug messages.

Examples

First thing to do is to check the kernel support being up-to-date with the

# criu check

command. If it says "Looks good", then you can proceed, otherwise dump/restore may not work.

To checkpoint a program with pid 1234 and write all image files into directory checkpoint one should type

# criu dump -D checkpoint -t 1234

To restore this program detaching criu itself, one should type

criu restore -d -D checkpoint

"Detaching" (the -d option) here means, that criu will exit after restoring the processes and the latter will get re-parent-ed to the init task.

To close a file descriptor number 1 in task with pid 1234 run

criu exec -t 1234 close 1

To open a file named /foo/bar for read-write in the task with pid 1234 run

criu exec -t 1234 open '&/foo/bar' 2

Security

See Security

See also