unable to parse volume filename 'vm-100-disk-1' ??

LooneyTunes

Active Member
Jun 1, 2019
203
23
38
I am trying to create storage using CLI and I almost got it, but fails when trying to allocate space for the EFI drive. I can't find any information to help me understand why. If you have an idea, please share. Thank you.

This is the what I am trying to do, and below that the error I'm getting;
Code:
  - qm create 100 --name hassio --net0 virtio,bridge=vmbr0 --bios ovmf --cores 2 --memory 4096 --agent enabled=1
  - qm importdisk 100 haos_ova-10.1.qcow2 NFS --format qcow2
  - qm set 100 --scsihw virtio-scsi-pci --scsi0 NFS:vm-100-disk-0
  - qm set 100 --boot c --bootdisk scsi0
  - pvesm alloc NFS 100 vm-100-disk-1 4M   <------ This step fails
  - qm set 100 -efidisk0 NFS:vm-100-disk-1

Code:
unable to parse volume filename 'vm-100-disk-1'

Please help me figure out why

Thanks
 
NFS is a file storage, it needs to know what type of file you want , ie qcow or raw. A correct format for a file storage for disk images will contain extension.
Code:
root@proxmox-1:/usr/share/perl5/PVE# pvesm alloc bbnas 100 vm-100-disk-1 4M 
unable to parse volume filename 'vm-100-disk-1'
root@proxmox-1:/usr/share/perl5/PVE# pvesm alloc bbnas 100 vm-100-disk-1.raw 4M 
Formatting '/mnt/pve/bbnas/images/100/vm-100-disk-1.raw', fmt=raw size=4194304
successfully created 'bbnas:100/vm-100-disk-1.raw'


Blockbridge : Ultra low latency all-NVME shared storage for Proxmox - https://www.blockbridge.com/proxmox
 
  • Like
Reactions: LooneyTunes
NFS is a file storage, it needs to know what type of file you want , ie qcow or raw. A correct format for a file storage for disk images will contain extension.
Code:
root@proxmox-1:/usr/share/perl5/PVE# pvesm alloc bbnas 100 vm-100-disk-1 4M
unable to parse volume filename 'vm-100-disk-1'
root@proxmox-1:/usr/share/perl5/PVE# pvesm alloc bbnas 100 vm-100-disk-1.raw 4M
Formatting '/mnt/pve/bbnas/images/100/vm-100-disk-1.raw', fmt=raw size=4194304
successfully created 'bbnas:100/vm-100-disk-1.raw'


Blockbridge : Ultra low latency all-NVME shared storage for Proxmox - https://www.blockbridge.com/proxmox
Thanks! What threw me off a bit was this in the manual
Code:
pvesm alloc <STORAGE_ID> <VMID> <name> <size> [--format <raw|qcow2>]
Anything within square brackets are usually optional, so never thought it would be needed, but you are absolutely correct. It now works nicely. Thank you! :)
 
You are welcome. It is optional but since you are providing name it wants a correct format. Technically you can call it vm-100-disk-1.qcow and force --format raw.
"man pvesm" gives us this example for auto naming:
Code:
 Allocate a 4G volume in local storage. The name is auto-generated if you pass an empty string as <name>

           pvesm alloc local <VMID> '' 4G


Blockbridge : Ultra low latency all-NVME shared storage for Proxmox - https://www.blockbridge.com/proxmox
 
Last edited:
  • Like
Reactions: LooneyTunes
You welcome. It is optional but since you are providing name it wants a correct format. Technically you can call it vm-100-disk-1.qcow and force --format raw.
"man pvesm" gives us this example for auto naming:
Code:
 Allocate a 4G volume in local storage. The name is auto-generated if you pass an empty string as <name>

           pvesm alloc local <VMID> '' 4G


Blockbridge : Ultra low latency all-NVME shared storage for Proxmox - https://www.blockbridge.com/proxmox

Aha, figures :) But when I thought I had it, it turns out the last command also gives me an error as well. I tried the same tactic, to add it's suffix, but was not it unfortunately
Code:
qm set 100 -efidisk0 NFS:vm-100-disk-1.raw
unable to parse directory volume name 'vm-100-disk-1.raw'

qm set 100 -efidisk0 NFS:vm-100-disk-1
unable to parse directory volume name 'vm-100-disk-1'

It is created and should be available?
disks.png
 
Why not just use single command to achieve the same thing?
Code:
You can create such a disk with the following command:

           qm set <vmid> -efidisk0 <storage>:1,format=<format>

So something like: qm set 100 -efidisk NFS:1,format=raw

But for your specific quesiton, the path is wrong. If in doubt always get path from pvesm list
Code:
pvesm list bbnas --content images
Volid                       Format  Type         Size VMID
bbnas:100/vm-100-disk-1.raw raw     images    4194304 100
bbnas:100/vm-100-disk-2.raw raw     images    4194304 100


Blockbridge : Ultra low latency all-NVME shared storage for Proxmox - https://www.blockbridge.com/proxmox
 
  • Like
Reactions: LooneyTunes
Why not just use single command to achieve the same thing?
Code:
You can create such a disk with the following command:

           qm set <vmid> -efidisk0 <storage>:1,format=<format>

So something like: qm set 100 -efidisk NFS:1,format=raw

But for your specific quesiton, the path is wrong. If in doubt always get path from pvesm list
Code:
pvesm list bbnas --content images
Volid                       Format  Type         Size VMID
bbnas:100/vm-100-disk-1.raw raw     images    4194304 100
bbnas:100/vm-100-disk-2.raw raw     images    4194304 100


Blockbridge : Ultra low latency all-NVME shared storage for Proxmox - https://www.blockbridge.com/proxmox
Thanks! With the correct path it worked a lot better! This was a bit tricky really, I tried the man-page, but with tons of options and switches... I'm really grateful for your help! :)