CRIU(8) CRIU Manual CRIU(8) (NAME) criu - (checkpoint/restore in userspace) (SYNOPSIS) criu command [option ...] (DESCRIPTION) criu . ( dump ) ( restore ) . . (OPTIONS) no- ( : --isplay-stats --0-isplay-stats). (Common options) . -v[v...], -- () . v . -vnum, -- num. . : o -v0 o -v1 o -v2 ( ) o -v3 o -v4 (debug). --onfig file criu. --0-efault-onfig . --idfile file (pid) page-server file. -o, -- () file. --isplay-ats dump restore criu dump . stats-dump stats-restore crit(1) . --isplay-ats . -D, --images-ir path path . --ream / criu-image-streamer. https://github.com/checkpoint-restore/criu-image-streamer . --rev-images-ir path path . dump . -W, --216 dir pidfile . path -D . --lose fd fd . -L, --r path . --\nable- . all . : . mount(src, mountpoint, flags, options) . dump restore . --\xternal dev . --ction-ript script . CRTOOLS_SCRIPT_ACTION : pre-dump dump post-dump dump pre-restore restore post-restore restore pre-resume . . post-resume . network-lock network-unlock setup-namespaces . . post-setup-namespaces orphan-pts-master pty (master). RPC pty . query-ext-files . RPC . . --nprivileged criu . criu CAP_SYS_ADMIN CAP_CHECKPOINT_RESTORE . NON-ROOT . -V, -- . -h, -- . pre-dump (pre-dump) criu pre-dump . criu fsnotify restore . pre-dump -t ( dump ). page-server . --rack-m . . --re-ump-de=mode mode . splice (parasite) read process_vm_readv . read splice (frozen time) . splice . dump (checkpoint). -t, --ree pid pid. -R, ---unning . . TCP . criu restore . post-dump . . -s, ---opped (stopped) . --\xternal type[id]:value . type id ( ) value ( ). : mnt, dev, file, tty, unix. . --\xternal --inherit-fd . --\xternal mnt[mountpoint]:name bind mount mountpoint name. --\xternal mnt[]:flags bind mount . flags m master s (shared) ( ). flags . --\xternal dev[major/minor]:name . major minor criu name . --\xternal file[mnt_id:inode] . mnt_id ( /proc/pid/fdinfo/N) inode ( stat(2)) . --\xternal tty[rdev:dev] TTY st_rdev st_dev stat(2). --\xternal unix[id] criu UNIX ( socketpair(2)) id . --\xternal net[inode]:name . name --inherit-fd . --\xternal pid[inode]:name PID . PID . name PID --inherit-fd . -- cgroup freezer . --nage-groups cgroup . criu cgroup . --group-rops spec . criu . spec YAML : "c1": - "strategy": "merge" - "properties": ["a", "b"] "c2": - "strategy": "replace" - "properties": ["c", "d"] c1 c2 a b c d . . strategy : criu merge () replace () . : --cgroup-props " --group-rops- --group-rops file . --group-ump-ontroller name name ( /proc). criu . --group-yard path cgroup CRIU yard cgroup . CAP_SYS_ADMIN CRIU . cgroup . . . /proc/cgroups : #subsys_name hierarchy num_cgroups enabled cpu 1 1 1 devices 2 2 1 freezer 2 2 1 yard cgroup : mkdir private_yard cd private_yard mkdir cpu mount -t cgroup -o cpu none cpu mkdir devices,freezer mount -t cgroup -o devices,freezer none devices,freezer --cp-\stablished TCP. --cp-lose TCP ( ). TCP . --ip-in- (in-flight) TCP. TCP criu . TCP . --\vasive-evices . --age-rver ( page-server ). -- inotify fsnotify. --uto-edup dump . dump ( pre-dump ). -l, -- . dump . -- (unlinked) ( restore ). --imeout number dump. . --ost-t size . . . size K M G ( ) . --ost- fiemap ioctl (ghost) . --0-ost- -j, --ell-job (shell jobs). (session) criu . tty ( top). dump restore . --pu-ap [cap[,cap...]] CPU . : o none o fpu FPU o ins CPU o cpu o all . fpu ins . --group-oot [controller:]/newroot . criu . cgroup . --ges dump . lazy-pages . -- dump . mode : filesize . . buildid ELF build-ID . build-ID chksm-first (). --0twork-de] . TCP dump restore RST . mode : iptables iptables (). nftables nftables . skip . --cp-close . --llow-probes dump uprobes vma . dump . uprobes vma uprobe . uprobe . uprobes criu uprobe . uprobe uprobe SIGTRAP . uprobe foo p_bar uprobes vma . dump uprobe foo SIGTRAP p_bar . restore . --inherit-fd fd[N]:resource . criu N resource . --\xternal file tty pid unix . resource : o tty[rdev:dev] o pipe[inode] o socket[inode*]* o file[mnt_id:inode] o path/to/file (literal) . -d, --estore-etached criu ( detached) . -s, ---opped (stopped) ( ). -S, --estore-bling sibling () --estore-etached . -- pid. -r, --oot path path ( ). . path . --\xternal type[id]:value . type id ( ) value ( ). : mnt, dev, veth, macvlan. ( --\xternal file tty unix ) --inherit-fd . --\xternal mnt[name]:mountpoint bind mount name bind-mount mountpoint . --\xternal mnt[] bind mount ( ). --\xternal dev[name]:/dev/path name /dev/path. --\xternal veth[inner_dev]:outer_dev@bridge VETH ( inner_dev ) outer_dev. @bridge outer_dev . outer_dev . --\xternal macvlan[inner_dev]:outer_dev MacVLAN inner_dev outer_dev ( CRIU) . -J, --join-0 NS:{PID|NS_FILE}[,EXTRA_OPTS] . PID NS_FILE (: --join-ns net:12345 --join-ns net:/foo/bar). NS : ipc, net, time, user, uts. PID --\xternal --inherit-fd . EXTRA_OPTS UID GID . --nage-groups [mode] cgroup . . mode : none cgroup cgroup restore. props cgroup cgroup . soft cgroup cgroup criu (). full cgroup . strict cgroup . ignore cgroup . --group-yard path cgroup CRIU yard cgroup . dump . --group-oot [controller:]/newroot cgroup . . --cp-\stablished TCP . dump restore . --cp-lose TCP . -- veth. -l, -- . -- LSM . type apparmor selinux . -- . . context= . : context="system_u:object_r:container_file_t:s0:c82,c137" : --lsm-mount-context "system_u:object_r:container_file_t:s0:c204,c495" context= . selinux ( ) . --uto-edup (punch out) . -j, --ell-job ( criu). --pu-ap [cap[,cap...]] CPU . ^ . --pu-cap dump fpu. cap : all ( ). cpu . fpu FPU ( ). ins . none ( ). --192 sysctl . . --ges . . lazy-pages . -- . filesize buildid . --ip- (r/w/x u/g/o) . --llow-probes dump . dump . check criu . : criu check -- Category 1 . /proc/PID/map_files NETLINK_SOCK_DIAG /proc/sys/kernel/ns_last_pid . Category 2 . AIO /dev/net/tun . Category 3 . task-diag ( ) . criu "Looks good." 0 . "Does not look good." . "...Looks good but" . criu check . : --\xtra . --\xperimental . --ll . -- . name list . page-server criu (page server mode). --aemon ( ). --atus- \0 FD page-server . . --aemon . --ddress address IP page server. --ort number page server. --s-cket fd ( address port ). . --ges lazy-pages. . --ls-acert file (CA) PEM. --ls-acrl file (CRL) PEM. --ls-ert file X.509 PEM . --ls-y file TLS PEM. --ls TLS . lazy-pages criu lazy- pages. lazy-pages . restore . exec . Compel . service criu RPC criu RPC . () . dedup pagemap criu pagemap . cpuinfo dump . cpuinfo check ( criu ) . (CONFIGURATION FILES) Criu . "--onfig file" . /etc/criu/default.conf $HOME/.criu/default.conf ( ) . CRIU_CONFIG_FILE . CRIU CLI RPC : o apply_config(/etc/criu/default.conf) o apply_config($HOME/.criu/default.conf) o apply_config(CRIU_CONFIG_FILE) o apply_config(--onfig file) o apply_config(CLI) apply_config(RPC) o apply_config(RPC configuration file) ( RPC) "--0-efault-onfig" . . (Configuration file syntax) '#' . '--' ( ). . . : $ cat ~/.criu/default.conf tcp-established work-dir "/home/USERNAME/criu/my # no-restore-sibling # RPC (Configuration files in RPC mode) criu CLI RPC . RPC . RPC RPC ( "req.opts.config_file = /path/to/file"). . criu . (NON-ROOT) criu CAP_SYS_ADMIN CAP_CHECKPOINT_RESTORE ( 5.9) . CAP_CHECKPOINT_RESTORE . criu CAP_SYS_PTRACE 0 /proc/sys/kernel/yama/ptrace_scope ( ptrace(2) ) dump . criu . CAP_CHECKPOINT_RESTORE criu : o CAP_NET_ADMIN o CAP_SYS_CHROOT o CAP_SETUID o CAP_SYS_RESOURCE init ( /) . symlink proc/[pid]/map_files CAP_CHECKPOINT_RESTORE init . "--nprivileged" criu . (EXAMPLES) 1234 checkpoint: criu dump -D checkpoint -t 1234 criu: criu restore -d -D checkpoint (AUTHOR) CRIU. (COPYRIGHT) Copyright (C) 2011-2016, Parallels Holdings, Inc. criu 4.2.1 07/21/2026 CRIU(8)