mirror of
https://github.com/checkpoint-restore/criu.git
synced 2026-07-30 13:30:19 +00:00
No description
blcrcheckpointcontainercontainerscriudmtcphighly-availablelinuxmemory-trackingmigrationparasitepost-copyrestoresnapshotsuspenduserfaultfdzero-downtime
How to restore an external file? The problem is that a file can be opened with different flags (O_APPNED, O_RDWR, O_RONLY, etc). These flags can't be changed for a file descriptor, so we can't just duplicate an inherit fd, when we meet an external file. A file is external, when we can't access them directly. CRIU is able to restore a file descriptor, if it knows how to open it, so we need to provide a way to open an external file. The idea of this patch is that we can open an external file via /proc/self/fd/X where X is an inherit fd. This approach works for files and fifo. An example how it can be used: criu -o dump.log -D dump/fifo.py/6/1 -v4 -t 6 --external file[72:a3e7] criu -o restore.log -D dump/fifo.py/6/1 -v4 --restore-sibling --inherit-fd fd[4]:file[72:a3e7] --restore-detached https://github.com/xemul/criu/issues/104 Cc: Saied Kazemi <saied@google.com> Signed-off-by: Andrew Vagin <avagin@virtuozzo.com> Signed-off-by: Pavel Emelyanov <xemul@virtuozzo.com> |
||
|---|---|---|
| contrib | ||
| crit | ||
| criu | ||
| Documentation | ||
| images | ||
| lib | ||
| scripts | ||
| test | ||
| .gitignore | ||
| .mailmap | ||
| .travis.yml | ||
| COPYING | ||
| CREDITS | ||
| Dockerfile | ||
| Makefile | ||
| Makefile.install | ||
| README.md | ||
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:
- Kernel configuration, compilation, etc
- A simple example of usage
- More sophisticated example with graphical app
How to contribute
- How to submit patches;
- Send all bug reports to mailing list;
- Spread the word about CRIU in social networks;