下一篇:Checkpoint/Restore In Userspace(CRIU)使用细节
1.安装
- 方法一:从源码安装,个人不推荐,虽然最后成功了,但是浪费时间,有兴趣可参考 Ubuntu CRIU安装
- 方法二:使用Linux命令:
yum install criu
2.检测
- 使用命令:
criu check
出现Looks good.字样表示安装成功
3.使用
- 编写简单小程序test.c
vim test.c #使用vim编辑C程序
#include<stdio.h> #include<unistd.h> //代码没有跑过,大概就是这个样子 int main(){ int i = 0; for(;i<100;i++){ printf("第%d次\n",i); sleep(1); }
return 0; }:wq #保存并退出文件编辑
- 创建文件夹,命名checkpoint(命名可以随便写)
mkdir checkpoint
- 使用命令创建检查点
criu dump -D checkpoint -j -t 1446 #程序id一定要使用自己的程序id
以下为命令格式
criu dump -D $dir -j -t $pid #设置检查点命令格式
-D 指明检查点文件存储位置,可以使用--images-dir代替
-j 表明被检查的是命令行程序
-t 指明被检查程序的id该命令在程序跑起来之后使用,其中$dir是存储检查点文件的文件夹路径,此处为新建的checkpoint文件夹路径
$pid就是跑起来的程序 ID&pid获取方法,使用命令ps -ef | grep test
以下为命令格式
ps -ef | grep $demo_name
$demo_name就是你新建程序的名字,此处为test
到此为止,没有出错的话,在 checkpoint文件夹内,将出现很多 img文件,这些文件记录了程序的状态,在恢复时使用 - 程序的重新启动,以上三步,对一个运行的程序创建了快照,若要从快照中恢复程序运行,使用命令
criu restore -D checkpoint -j
命令格式
criu restore -D $dir -j #重现程序命令 restore 重现命令 -D 指明检查点文件夹 -j 指明恢复的程序是命令行程序
$dir为快照文件存储路径,此处为checkpoint