[SOLVED] NFS ISO's not showing in UI

b3nw

Active Member
Jul 21, 2017
18
3
43
39
Hello,

I have a QNAP SAN with a specific folder full of ISO's. I configured this on my proxmox server and the NFS mount shows up, and the ISO's show up on disk on the pve server.

upload_2017-7-23_23-45-16.png

I can also see ISO's when I browse:

upload_2017-7-23_23-46-12.png

Yet when I attempt to create a new VM, and set the ISO:

upload_2017-7-23_23-47-20.png

I am unable to get the ui to show a list of ISOs.

Any suggestions would be appreciated.

I am Virtual Environment 5.0-23 // 4.10.15-1-pve

Thanks
 
we list the isos only from the subdirectory 'template/iso'

you can try to make a softlink to your directory
 
This was strange. I would expect the iso to just show when you mark it as ISO-repository. It shows in /mnt/pve/iso/ in shell.

When I try to create a symbolic link in /mnt/pve/iso/template/iso, it will not work as our iso-nfs-mounted storage doesn't have write access (and shouldn't have). Also, I assume it would cause confusion with multiple hosts.. Some other way to fix this?
 
Yeah I'd kinda like to know that too. Odd when it says "solved" in the subject.

Using pvesm I managed to mount an nfs share with my isos, under /mnt/template/iso:

192.168.1.3:/volume2/public/cifs-repo 7747527296 2409983488 5337425024 32% /mnt/template/iso

ls of this folder shows the isos present. In the gui I can select it, but still, no files showing up.

How can it be so complicated, it should be a matter of mount .. boom.
 
Last edited:
  • Like
Reactions: kolonuk
ls of this folder shows the isos present. In the gui I can select it, but still, no files showing up.
the share share itself has to have a 'template/iso' directory on it
 
Thanks. After hours of trial and error, here is finally a working example of mounting and making available an ISO repo:

Assuming the ISO folder is stored on an NFS server like this:
server: 192.168.1.3
path to the iso folder: /volume2/public/templates/iso
folder exported by nfs: /volume2/public
You can call it anything, I choose iso-repo

root@pve1:~# pvesm add nfs iso-repo --server 192.168.1.3 --path /mnt/templates/iso --export /volume2/public
 
  • Like
Reactions: Kingneutron
I cannot thank you enough for this post -- you saved me hours of struggle ... Have a new FreeNas BOx with nfs share ... could not see the ISO's, even though they had been copied there with no errors...

I could find nothing in the documentation .... is it there ???

Once more , this amazing community saves the day !
 
  • Like
Reactions: rcd
Since I just wasted like an hour trying to figure this out, figured I might as well post.

I am running freenas 9.10, and like everyone else, was having problems. I could access either a CIFS or NFS share via an fstab command, but that command would have to be made to every single /etc/fstab file on each node of the cluster.

when I made used the add Storage->NFS option from the gui, the default path was incorrect (/mnt/pve/<storage_ID>, and while the ISO's would mount to the default folder path (shown in gui), they were not visible from the gui whenever I tried to make a new container or VM (ISO).

pvesm scan nfs 10.10.10.2 #(freenas address)
/mnt/Darkside/config/ISO 10.10.10.14,10.10.10.13,10.10.10.12,10.10.10.11 #(allowed hosts in NFS share configuration)

#add in the storage with correct content type
pvesm add nfs NFS-iso --server 10.10.10.2 --path /var/lib/vz/template/iso/ --export /mnt/Darkside/config/ISO --content images,iso

#verify storage was added:
cat /etc/pve/storage.cfg

nfs: NFS-iso
export /mnt/Darkside/config/ISO
path /var/lib/vz/template/iso/
server 10.10.10.2
content images,iso

Now, from the gui, the iso files will show up as "local" for all nodes in the cluster.
 
just flight testing ProxMox, coming from KVM and this is something that blows my mind. how is this a thing? a network store of iso images is normal and having to jump through seemingly pointless configuration hoops like this just to see a simple mount's contents in the GUI is kinda nuts. is there no simpler way to accomplish this? this should be a no-brainer.
 
  • Like
Reactions: bjzy
just flight testing ProxMox, coming from KVM and this is something that blows my mind. how is this a thing? a network store of iso images is normal and having to jump through seemingly pointless configuration hoops like this just to see a simple mount's contents in the GUI is kinda nuts. is there no simpler way to accomplish this? this should be a no-brainer.
Same :confused:. This is crazy. Instead of having an enjoyable first experience with Proxmox (coming from vSphere), I'm fighting to get my personal ISOs recognized. I still don't have a VM up as I'm now downloading a plain ISO from somewhere on the internet and it's taking forever.
 
Since this is still being discussed in 2024, my fix for CIFS, but usable for other storage protocols, is to skip pvesm for mounting the remote share of ISOs, instead using fstab, mount.cifs, or protocol-specific provider.

My share of //nas/software/images is mounted to /media/images/template/iso (pre-create /media/images/template, and mount to /media/images/template/iso).
Add your ISO Image local Directory via pvesm or the UI as /media/images, which solves the "template/iso/" requirement.

I figured this out many years ago on Proxmox 5 and spent 20 minutes again on this issue with Proxmox 8 today, as it is still unintuitive.
 
  • Like
Reactions: DaoSeeker
this worked for me , my notes , test if it works for you.
The nfs server is hosted on UBUNTU 22.04

On the proxmox server.
pvesm nfsscan 10.0.0.53 # Check if proxy server is able to access remote nfs server.

mkdir -p /mnt/iso
chmod 777 /mnt/iso
chown nobody:nogroup /mnt/iso

nano /etc/pve/storage.cfg
nfs: iso-templates
path /mnt/iso # proxmox local path
server 10.0.0.53 # server IP of the server that you will be mapping to NFS share
export /mnt/xvdb1/ALLISO/ISOIMPORT # the nfs share you will be mapping to.
options vers=3,soft
content iso,rootdir
# using nano save the config and exit, a folder will be auto generated /mnt/template/iso
# go back into the config file /etc/pve/storage.cfg and remark the settings with # that you had added above.
# Reboot
# log back into proxmox delete folder rm /mnt/iso/template/iso -rf
# Create a smybloic link ln -s /mnt/iso/ /mnt/iso/template/
# Reboot
# after the reboot go back into the config file nano /etc/pve/storage.cfg , remove remark entries.



1737244976517.png
* note the nfs share has to be in rw mode to work.
example
1737245104620.png

my setup is a little complex, im running proxmox in a nested on xenxcp. so the path location for your nfs server be different.
but you get the idea i hope.
 
Last edited:
the simple solution is:
in your source folder "ISOs" create a folder "template" with a link "iso" pointing to "ISOs"(with path)
but first, you have to delete the proxmox smb storage because it will mess with you creating instantly an iso folder, father creating the link, create the storage in proxmox and it will just work, like it should from the beginning

because, why should it just work? That is how twisted some linux devs are, the logic says 1+1=2.. linux dev, no you have to write the equation that leads to it. And that is why linux is the less popular os, and I wish for each of these devs when they go to buy a fridge or a car, the seller tells them, you have to go and build yourself one if you want it, otherwise you are not worth of using one
screw the logic, screw simplification, screw ai, lets go to stones and pikes and start from 0 whenever we wanna make something, no matter how repetitive it is, I am sure they don't think so when using their PC, or an IDE, they just use it, it drives me crazy, just like politic or law, I wanna screw u, just for fun, just to show u I have the power
 
Thanks for the tip. The last time I tried Proxmox, I overlooked this, and I had not enough time to troubleshoot (not research; I had read the docs before starting) so I had to just bail.

I understood from the site and the docs that the transition from another platform would be seamless, specifically vSphere, and that it would be infinitely more flexible too, but this is kind of antithesis to that notion. It's the DCIM on a camera all over again.

After reading this I checked again the docs; it's mentioned once in subsection at the same level of all of the other places where it would apply, it sort of alludes to the file structure being used rather than stating unequivocally that it is the file structure that must be used.

Screenshot 2025-06-12 at 22.00.47.png

But then, back to the flexible thing, I installed Cockpit — which already did VMs, containers, and now does clusters too, BTW — and I did what I had to do to fake those file structures that make so little if no sense.

If I were a good writer, I'd take them up on the offer to contribute to the documentation.