我的 docker 容器内的 Fallocate 失败

jcm*_*jcm 4 linux docker

我正在尝试在 Linux Ubuntu 14.10 Docker 容器中运行一个脚本,该容器使用fallocate如下命令:

fallocate -l 10M 10meg
Run Code Online (Sandbox Code Playgroud)

但是,当我运行此脚本时,甚至当我通过 ssh 连接到容器时运行命令时,也会收到以下错误:

root@~$>> fallocate -l 10M 10meg
fallocate: fallocate failed: Operation not supported
Run Code Online (Sandbox Code Playgroud)

知道为什么这在我的容器内失败吗?

Dav*_*rri 5

在撰写本文时,Docker 使用的文件系统Union FSfallocate()不支持 syscall 。您可以按如下方式使用(推荐):truncate

truncate -s 10M 10meg
Run Code Online (Sandbox Code Playgroud)

dd(昂贵):

dd if=/dev/zero of=10meg bs=1M count=10
Run Code Online (Sandbox Code Playgroud)