No description
Find a file
Andrew Vagin 5bdc16238b files: try to change fsuid only if linkat() failed
We found that linkat for "unsafe" files doesn't work in userns
if a file uid isn't equal to the currect fsuid. This issue was
fixed by changing fsuid before calling linkat. But in this
case we are not able to createa link if a target directory doesn't
have write premissions.

Starting with the 4.3 kernel, it's possible to create links of
"unsafe files":

f2ca379642d7 ("namei: permit linking with CAP_FOWNER in userns")

So we can try to call linkat() without changing fsuid and make one
more attempt with changing fsuid if the first one failed with EPERM.

Signed-off-by: Andrew Vagin <avagin@virtuozzo.com>
Signed-off-by: Pavel Emelyanov <xemul@virtuozzo.com>
2016-04-27 14:11:02 +03:00
contrib Add OverlayFS support to docker_cr.sh 2015-08-18 18:14:32 +03:00
crit crit: Add symbolic link for pycriu module 2016-03-01 12:50:47 +03:00
criu files: try to change fsuid only if linkat() failed 2016-04-27 14:11:02 +03:00
Documentation rework criu check logic 2016-03-25 23:39:21 +03:00
images build: images -- Add missing cleanups 2016-03-25 23:39:22 +03:00
lib build: clean up various other bits 2016-03-16 16:16:08 +03:00
scripts criu: Drop prlimit compat layer 2016-04-07 13:58:42 +03:00
test criu: check without file descriptors 2016-04-21 16:21:24 +03:00
.gitignore git: ignore scripts/build/qemu-user-static/* 2016-03-16 16:16:09 +03:00
.mailmap repo: Add mailmap file 2012-03-25 23:31:20 +04:00
.travis.yml travis: execute tests from travis 2016-02-24 13:17:44 +03:00
COPYING Add LGPL licence for library directory 2013-04-01 12:29:06 +04:00
CREDITS Add the CREDITS file 2012-07-30 13:52:37 +04:00
Makefile Makefile: drop 'rebuild' from help message 2016-04-01 18:06:31 +03:00
Makefile.install build: install -- Don't forget to init DESTDIR 2016-04-21 16:21:24 +03:00
Makefile.versions criu: Version 2.1 2016-04-11 11:19:43 +03:00
README.md Updated README 2015-05-19 22:38:06 +03:00

CRIU (Checkpoint and Restore in Userspace)

An utility to checkpoint/restore tasks. Using this tool, you can freeze a running application (or part of it) and checkpoint it to a hard drive as a collection of files. You can then use the files to restore and run the application from the point it was frozen at. The distinctive feature of the CRIU project is that it is mainly implemented in user space.

The project home is at http://criu.org.

Pages worth starting with are:

How to contribute