Bisakah seseorang memposting sintaks yang tepat? Saya telah mencoba menggunakan perintah chmod, tetapi saya melakukan sesuatu yang salah. Saya hanya mencoba untuk memindahkan file cento iso ke / gambar untuk mengatur vm pengujian
Bisakah seseorang memposting sintaks yang tepat? Saya telah mencoba menggunakan perintah chmod, tetapi saya melakukan sesuatu yang salah. Saya hanya mencoba untuk memindahkan file cento iso ke / gambar untuk mengatur vm pengujian
Jawaban:
Anda tidak benar-benar "seharusnya" melakukannya dengan cara itu, karena libvirt menangani kumpulan volumenya sendiri. Menggunakan:
size=$(stat -Lc%s centos.iso)
virsh vol-create-as default centos $size --format raw
virsh vol-upload --pool default centos centos.iso
Ini akan membuat volume virsh yang disebut centos
dalam kumpulan default dengan isi centos.iso
.
Dengan cara ini, libvirt menangani semua izin dan kepemilikan yang diperlukan itu sendiri.
Saya berasumsi dua hal: /var/lib/libvirt/images/
dimiliki oleh root
dan Anda tidak root
. Tidak apa-apa, tetapi Anda harus menghargai bahwa itulah masalahnya.
Mungkin paling masuk akal untuk hanya menyalin file sebagai root , menggunakan sudo
:
sudo cp my-image /var/lib/libvirt/images/
Atau, Anda dapat mengambil alih /var/lib/libvirt/images/
:
sudo chown $USER /var/lib/libvirt/images/
Atau (paling tidak bagus) Anda bisa membuatnya bisa ditulis secara global:
sudo chmod 755 $USER /var/lib/libvirt/images/
Saya akan mengikuti logika bahwa itu root karena suatu alasan tetapi jika Anda hanya bermain-main dan ini tidak akan pernah menjadi mesin produksi, Anda mungkin tidak perlu berhati-hati.
Anda dapat mencoba melakukannya di ketik nautilus saja
sudo -i nautilus
dan setelah itu salin file seperti biasa.
Saya tahu ini adalah pos lama tetapi saya ingin membagikan apa yang saya lakukan.
Dalam kasus saya, saya perlu mengimpor gambar qcow2 ke volume. Saya telah menggunakan jq, qemu-img dan dan 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)
Buat daftar kolam dan pilih yang Anda inginkan:
# virsh pool-list --all
Name State Autostart
-------------------------------------------
default active yes
# export IMGPOOL=default
Buat volume:
# virsh vol-create-as $IMGPOOL myvolume $IMGSIZE --format $IMGFMT
Vol myvolume created
Dan unggah gambar:
# virsh vol-upload --pool $IMGPOOL myvolume /data/myfile.qcow2
Saya tidak tahu apakah Anda dapat mem-pipe qemu-img ke virsh, semacam seperti 'qemu-img dd ... | virsh vol-unggah ... 'tapi itu akan nyaman :-)
Terima kasih @Robie Basak untuk postingnya, saya telah menggunakannya untuk menulis informasi di atas.