我已经运行命令
lvconvert -m1 rootvg/newroot /dev/sdb
Run Code Online (Sandbox Code Playgroud)
将线性逻辑卷转换为镜像逻辑卷。操作尚未完成;我在 10% 左右时用 ctrl-c 中断了该命令,但该操作似乎无论如何都在后台运行。
是否有可能
1)中止lvconvert操作并恢复到之前的状态?(这将是我的首选)
2) 安全地中断操作并稍后恢复?
有没有办法让非特权用户或 root 允许非特权用户创建一个 systemd 作用域(或由 systemd 管理的其他控制组),以便限制该作用域的内存使用量,并且该限制可以由用户?
或者说,为什么这样达不到上面描述的效果:
$ systemd-run --scope --user --unit=limit-test.scope bash
Running as unit limit-test.scope.
$ systemctl show --user limit-test.scope |grep Mem
MemoryAccounting=no
MemoryLimit=18446744073709551615
$ systemctl set-property --user limit-test.scope MemoryAccounting=yes
$ systemctl set-property --user limit-test.scope MemoryLimit=100M
$ systemctl show --user limit-test.scope |grep Mem
MemoryAccounting=yes
MemoryLimit=104857600
$ python
>>> a = [1]*1000000000 # happily eats 7.4G of RAM
Run Code Online (Sandbox Code Playgroud)
我正在使用 systemd 215 的 Debian stable 上进行测试。内核是 3.18.2 并使用所需的支持进行编译,我相信:
$ zgrep -E 'CGROUP|MEMCG' /proc/config.gz
CONFIG_CGROUPS=y
# CONFIG_CGROUP_DEBUG is …
Run Code Online (Sandbox Code Playgroud)