Commit bb7d912e authored by Svyatoslav Vlasov's avatar Svyatoslav Vlasov Committed by Pavel Emelyanov

tmpfiles: implement user tmp files feature

Add new action script tmp-files.sh, which allows user to
add files that can be lost between checkpoint and restore to the dump.
User files are stored in .tar.gz archive.
Tar command does all the file paths and attributes related work.

Fixes #65
Signed-off-by: 's avatarSvyatoslav Vlasov <svloyso@gmail.com>
Signed-off-by: 's avatarEugene Batalov <eabatalov89@gmail.com>
Signed-off-by: 's avatarPavel Emelyanov <xemul@virtuozzo.com>
parent 7f1a4a16
#!/bin/bash
#
# Script allows to save arbitrary files in CRIU dump dir and properly restore
# these files on CRIU restore cmd.
#
# Normally you need to call this script for files that can be lost between
# CRIU checkpoint and restore cmds. For example for files stored on non-tmpfs
# mount points. That's why this script is called tmp-files.
#
# You should call this script on both CRIU dump and restore cmds.
#
# Usage:
# criu dump <options> --action-script \
# '$CRIU_SCRIPTS_PATH/tmp-files.sh /tmp/ycm_temp /home/user/.tmpfile.txt.swp'
# criu restore <options> --action-script $CRIU_SCRIPTS_PATH/tmp-files.sh
#
# Note: absolute path to tmp-files.sh should be supplied in --action-script with ''
#
POSTDUMP="post-dump"
PRERESTORE="pre-restore"
DUMPARGS="--create --absolute-names --gzip --no-unquote --no-wildcards --file"
RESTOREARGS="--extract --gzip --no-unquote --no-wildcards --absolute-names --directory / --file"
IMGFILE=$CRTOOLS_IMAGE_DIR"/tmpfiles.tar.gz"
MY_NAME=`basename "$0"`
case "$CRTOOLS_SCRIPT_ACTION" in
$POSTDUMP )
if [ "$#" -lt 1 ]; then
echo "$MY_NAME: ERROR! No files are given."
exit 1
fi
tar $DUMPARGS $IMGFILE -- "$@"
exit $?
;;
$PRERESTORE )
if [ "$#" -ne 0 ]; then
echo "$MY_NAME: ERROR! Not expected script args."
exit 1
fi
tar $RESTOREARGS $IMGFILE
exit $?
;;
esac
exit 0
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment