[SOLVED] [REGRESSION] Internal error bad disk name trying to assign an iso on btrfs storage on a dvd drive

Fantu

Member
Jan 23, 2024
72
20
8
Hi, I tried for the first time on latest proxmox server updated to latest version to assign to a vm an iso from a btrfs storage and failed with this error:
Code:
internal error: bad disk name: gparted-live-1.6.0-10-amd64.iso at /usr/share/perl5/PVE/Storage/BTRFSPlugin.pm: 200 (500)
From a fast look to this source file seems that try to manage iso files like vm disks and as directory that seems wrong to me.

Code:
proxmox-ve: 8.3.0 (running kernel: 6.8.12-5-pve)
pve-manager: 8.3.1 (running version: 8.3.1/fb48e850ef9dde27)
proxmox-kernel-helper: 8.1.0
proxmox-kernel-6.8: 6.8.12-5
proxmox-kernel-6.8.12-5-pve-signed: 6.8.12-5
proxmox-kernel-6.8.12-4-pve-signed: 6.8.12-4
proxmox-kernel-6.8.4-2-pve-signed: 6.8.4-2
ceph-fuse: 17.2.7-pve3
corosync: 3.1.7-pve3
criu: 3.17.1-2
glusterfs-client: 10.3-5
ifupdown2: 3.2.0-1+pmx11
ksm-control-daemon: 1.5-1
libjs-extjs: 7.0.0-5
libknet1: 1.28-pve1
libproxmox-acme-perl: 1.5.1
libproxmox-backup-qemu0: 1.4.1
libproxmox-rs-perl: 0.3.4
libpve-access-control: 8.2.0
libpve-apiclient-perl: 3.3.2
libpve-cluster-api-perl: 8.0.10
libpve-cluster-perl: 8.0.10
libpve-common-perl: 8.2.9
libpve-guest-common-perl: 5.1.6
libpve-http-server-perl: 5.1.2
libpve-network-perl: 0.10.0
libpve-rs-perl: 0.9.1
libpve-storage-perl: 8.3.1
libspice-server1: 0.15.1-1
lvm2: 2.03.16-2
lxc-pve: 6.0.0-1
lxcfs: 6.0.0-pve2
novnc-pve: 1.5.0-1
proxmox-backup-client: 3.3.2-1
proxmox-backup-file-restore: 3.3.2-2
proxmox-firewall: 0.6.0
proxmox-kernel-helper: 8.1.0
proxmox-mail-forward: 0.3.1
proxmox-mini-journalreader: 1.4.0
proxmox-offline-mirror-helper: 0.6.7
proxmox-widget-toolkit: 4.3.3
pve-cluster: 8.0.10
pve-container: 5.2.2
pve-docs: 8.3.1
pve-edk2-firmware: 4.2023.08-4
pve-esxi-import-tools: 0.7.2
pve-firewall: 5.1.0
pve-firmware: 3.14-2
pve-ha-manager: 4.0.6
pve-i18n: 3.3.2
pve-qemu-kvm: 9.0.2-4
pve-xtermjs: 5.3.0-3
qemu-server: 8.3.2
smartmontools: 7.3-pve1
spiceterm: 3.3.0
swtpm: 0.8.0+pve1
vncterm: 1.8.0
zfsutils-linux: 2.2.6-pve1
 
Hi!

Thanks for reporting this! I'll take a look on it, could you provide a VM configuration for the affected VM?
 
Hi, thanks for reply.
Don't seem a thing specific to vm configuration, seems is unable to assign any iso (to cd/dvd drive of the vm) located in btrfs storage using libpve-storage-perl 8.3.1

Anyway here one vm config of this server where I tried to assign the iso and I had to downgrade libpve-storage-perl to have it working:
Code:
qm config 101
agent: 1
balloon: 0
boot: order=scsi0
cores: 6
cpu: host
ide2: none,media=cdrom
memory: 8192
meta: creation-qemu=9.0.2,ctime=1733399411
name: PORTALE-FRONT
net0: virtio=BC:24:11:45:CD:C3,bridge=vmbr0,firewall=1
numa: 0
onboot: 1
ostype: l26
parent: pre-update
scsi0: nvme-disks:vm-101-disk-0,backup=0,cache=writeback,discard=on,iothread=1,size=150G,ssd=1
scsihw: virtio-scsi-single
smbios1: uuid=b30e1113-3f18-4d9d-bd71-0ba9e3fd8fd2
sockets: 1
startup: order=2,up=30
vmgenid: 07ae9d12-8f05-480e-8c2f-973cef8430fd
 
Last edited:
Thanks for the fast fix, I still not tested it because I'm busy with other things.
I tried fast only to update the list (apt update) and check if present the updated package (apt-cache policy libpve-storage-perl) but I still don't see it (no subscription repository), is it normal? I thought it was loaded first in no subscription (thinking it comparable to Debian unstable) and migrated later to subscription one, if no critical bug found (comparable to Debian testing), or am I wrong?


I spotted also another thing, I don't understand if another regression or is something I know wrong: https://forum.proxmox.com/threads/l...d-even-if-vms-have-balloning-disabled.158904/
 
I also encountered this error when trying to use container images on btrfs storage

internal error: bad disk name: debian-12-standard_12.2-1_amd64.tar.zst at /usr/share/perl5/PVE/Storage/BTRFSPlugin.pm: 200 (500)


apt-cache policy libpve-storage-perl shows the latest version available to me at the moment is 8.3.1

I will try the new version and report back when it becomes available.
 
it's on pvetest at the moment
 
  • Like
Reactions: nhasian
Seems a regression of latest libpve-storage-perl version
downgrading libpve-storage-perl from 8.3.1 to 8.3.0 workaround the issue and I was able to assign the iso
I suppose can be an unexpected case after this commit: https://github.com/proxmox/pve-storage/commit/bfb3dff3199d5db30af1015a8bcde75f959599ac
Ok I so rebooted my Proxmox not realizing this was an issue - so here I am trying to fix this: TASK ERROR: internal error: bad disk name: pfSense-CE-2.7.0-RELEASE-amd64.iso at /usr/share/perl5/PVE/Storage/BTRFSPlugin.pm: 200, as the VM won't start with this error.

How do I list what version I'm running, and how to down grade this, as the VM in question of course is my firewall and had to switch to an old firewall temporarily to get internet access. Ooops.
 
it's on pvetest at the moment

I downloaded and installed libpve-storage-perl 8.3.2 directly from pvetest. I can confirm that this resolved the issue for me. I am able to create new lxc containers with templates that are in my local-btrfs.
 
Ok I so rebooted my Proxmox not realizing this was an issue - so here I am trying to fix this: TASK ERROR: internal error: bad disk name: pfSense-CE-2.7.0-RELEASE-amd64.iso at /usr/share/perl5/PVE/Storage/BTRFSPlugin.pm: 200, as the VM won't start with this error.

How do I list what version I'm running, and how to down grade this, as the VM in question of course is my firewall and had to switch to an old firewall temporarily to get internet access. Ooops.
Ok, figured it out, learn learn learn. Add pvetest repository, upgrade, and restart, all OK. When/how do I remove the test repository?
 
Last edited:
Ok, figured it out, learn learn learn. Add pvetest repository, upgrade, and restart, all OK. When do I remove the test repository?

You don't even need to enable that repository. I just downloaded the updated package and installed it with apt.

Bash:
wget http://download.proxmox.com/debian/pve/dists/bookworm/pvetest/binary-amd64/libpve-storage-perl_8.3.2_all.deb
 
You don't even need to enable that repository. I just downloaded the updated package and installed it with apt.

Bash:
wget http://download.proxmox.com/debian/pve/dists/bookworm/pvetest/binary-amd64/libpve-storage-perl_8.3.2_all.deb
Sadly I enabled the repository, now I have to learn how to disable it. And I would have used wget, but I had no idea where the deb was located. Learn learn learn.

Of course the pvetest repository is enabled - but it's not listed in the APT repositories; I'm gathering I have to resubscribe to another non pvetest repository to disable it?

Update: Did some refresh, and lo and behold the pretest repository is now listed....simply delete, or disable. Thanks everyone, including Mr Learn. ha!
 
Last edited:
  • Like
Reactions: nhasian

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!