Может кто-нибудь опубликовать правильный синтаксис? Я пытался использовать команду chmod, но я делаю что-то неправильно. Я просто пытаюсь переместить файл Centos ISO в / images, чтобы настроить тест VM
Может кто-нибудь опубликовать правильный синтаксис? Я пытался использовать команду chmod, но я делаю что-то неправильно. Я просто пытаюсь переместить файл Centos ISO в / images, чтобы настроить тест VM
Ответы:
Вы не «должны» делать это таким образом, поскольку libvirt заботится о своих собственных пулах томов. Использование:
size=$(stat -Lc%s centos.iso)
virsh vol-create-as default centos $size --format raw
virsh vol-upload --pool default centos centos.iso
Это создаст том virsh, называемый centos
в пуле по умолчанию с содержимым centos.iso
.
Таким образом, libvirt позаботится обо всех необходимых разрешениях и собственниках.
Я предполагаю две вещи: /var/lib/libvirt/images/
принадлежит, root
а вы нет root
. Это хорошо, но вы должны уважать, в чем проблема.
Вероятнее всего, имеет смысл просто скопировать файл с правами root , используя sudo
:
sudo cp my-image /var/lib/libvirt/images/
Кроме того, вы можете взять на себя /var/lib/libvirt/images/
:
sudo chown $USER /var/lib/libvirt/images/
Или (наименее хороший) вы можете просто сделать его доступным для записи:
sudo chmod 755 $USER /var/lib/libvirt/images/
Я бы следовал логике, что это корень по какой-то причине, но если вы просто играете, и это никогда не будет производственной машиной, вам, вероятно, не нужно быть таким осторожным.
Вы можете попробовать сделать это в nautilus просто введите
sudo -i nautilus
и после этого скопируйте файл, как обычно.
Я знаю, что это старый пост, но я хотел поделиться тем, что я сделал.
В моем случае мне нужно было импортировать изображение qcow2 в том. Я использовал jq, qemu-img и и bash:
# export IMGSIZE=$(qemu-img info --output json /data/myfile.qcow2 | jq -r .[\"virtual-size\"])
# export IMGFMT=$(qemu-img info --output json /data/myfile.qcow2 | jq -r .format)
Перечислите пулы и выберите тот, который вы хотите:
# virsh pool-list --all
Name State Autostart
-------------------------------------------
default active yes
# export IMGPOOL=default
Создать том:
# virsh vol-create-as $IMGPOOL myvolume $IMGSIZE --format $IMGFMT
Vol myvolume created
И загрузите изображение:
# virsh vol-upload --pool $IMGPOOL myvolume /data/myfile.qcow2
Я не знаю, можете ли вы передать qemu-img virsh, вроде как 'qemu-img dd ... | virsh vol-upload ... 'но это было бы удобно :-)
Спасибо @Robie Basak за его пост, я использовал его, чтобы написать информацию выше.