如何将磁盘映像导入 libvirt?

Fmo*_*oov 14 virtualization chmod

有人可以发布正确的语法吗?我曾尝试使用 chmod 命令,但我做错了一些事情。我只是想将 centos iso 文件移动到 /images 以设置测试虚拟机

Rob*_*sak 16

您并不是真的“应该”这样做,因为 libvirt 会处理自己的卷池。用:

size=$(stat -Lc%s centos.iso)
virsh vol-create-as default centos $size --format raw
virsh vol-upload --pool default centos centos.iso
Run Code Online (Sandbox Code Playgroud)

这将创建一个centos在默认池中调用的 virsh 卷,其内容为centos.iso.

这样,libvirt 会自行处理所有必需的权限和所有权。


Oli*_*Oli 2

我假设两件事:/var/lib/libvirt/images/属于 且root您不属于root。没关系,但你必须尊重这就是问题所在。

使用以下命令将文件复制为 root可能是最有意义的sudo

sudo cp my-image /var/lib/libvirt/images/
Run Code Online (Sandbox Code Playgroud)

或者,您可以接管/var/lib/libvirt/images/

sudo chown $USER /var/lib/libvirt/images/
Run Code Online (Sandbox Code Playgroud)

或者(最不好)你可以让它全局可写:

sudo chmod 755 $USER /var/lib/libvirt/images/
Run Code Online (Sandbox Code Playgroud)

我遵循这样的逻辑:它是有原因的,但如果你只是玩玩,而这永远不会成为一台生产机器,你可能不需要那么小心。


Mih*_*hai 1

您可以尝试在 nautilus 中执行此操作,只需键入

sudo -i nautilus
Run Code Online (Sandbox Code Playgroud)

然后像平常一样复制文件。

  • @Rat2000 [仅供参考](http://meta.askubuntu.com/questions/6634/psa-gksu-is-no-longer-installed-by-default) (2认同)