Remove the Proxmox “No Valid Subscription” message
Category : How-to
Proxmox 3.1 has implemented a new repository setup, as described in my recent blog post.
Each time you log into Proxmox 3.1 a dialogue box pops up with the message:
You do not have a valid subscription for this server. Please visit www.proxmox.com to get a list of available options.
One way to remove the message is to purchase a subscription from the Proxmox team. Remember that paying subscriptions keeps the development of Proxmox progressing. For the recent release, the subscription cost has been heavily reduced and is more affordable than ever.
The fact of the matter is, I started using Proxmox as a free and open source tool and expected it to stay that way. Had I known a subscription element would have been introduced, I would likely have chosen another toolset. As it is, I am too invested in Proxmox (time-wise) and changing to another technology is simply out of the question at this point. This brings me onto the other method; make a slight change to the code to remove the dialogue box from appearing. This is allowed under the License (aGPLv3) used for Proxmox however future updates may break your code and you may have to re-apply it or apply a different change.
You will need SSH access to the Proxmox host with the required access to edit the pvemanagerlib.js file.
First, take a backup of the file:
cp /usr/share/pve-manager/ext4/pvemanagerlib.js /usr/share/pve-manager/ext4/pvemanagerlib.js_BKP
Then open the file using a text editor, vi for example.
vi /usr/share/pve-manager/ext4/pvemanagerlib.js
Currently on line 519 of the file, however it may change with future updates, there is a line similar to below;
if (data.status !== 'Active') {
This line is doing the check to see if your subscription status is not ‘Active’. This needs to be changed to return false to stop the subscription message from being shown.
if (false) {
And that annoying little popup will be a thing of the past!
Note: You may need to clear your web browser cache after applying this code change.
I have added this code to my Proxmox patch – see this blog post for more information.
64 Comments
Martin
13-May-2016 at 2:08 pmHi James,
credits for your post. i’ve made another one for proxmox 4.2 and just wanted to let you know. thanks for yours!
james.coyle
13-May-2016 at 2:11 pmHey Martin – thanks, I need to make a few updates due to the changes in Prox 4.x.
AC
24-Aug-2016 at 3:38 pmUse:
sed -i.bak “s/data.status !== ‘Active’/false/g” /usr/share/pve-manager/ext*/pvemanagerlib.js
To avoid future changes in the ext directory naming.
Robert
17-Jun-2016 at 12:41 pmI’m disapointed of Proxmox VE, because it is not realy free open source.
This message on login is more like shareware or ad-ware.
I’ve just installed 4.x on my server (private use, not commercially) and now I’m looking for an alternative system. Any hints?
Daniel Shakhmundes
25-Aug-2016 at 11:53 pmHow about Oracle’s VirtualBox?
Keven Inman
10-Aug-2020 at 2:51 amI recommend rolling your own kvm with libvirt. Nothing works better and it is not as hard as everyone makes it out to be.
Charliemopps
25-Jun-2016 at 10:09 pmThe directory has changed to:
/usr/share/pve-manager/ext6#
Bogdan Stoica
10-Feb-2017 at 6:12 amYesterday I have updated to Proxmox 4.4-12/e71b7a74 (that’s shown in the GUI). pvemanagerlib.js has been moved from /usr/share/pve-manager/ext6 to /usr/share/pve-manager/js. It seems that your trick is not working anymore in this version altough it looks pretty much the same as in the previous versions. Any help would be really appreciated. Thanks!
Michael
3-Mar-2017 at 3:06 pmUnder 4.4
There are two places where it is found:
The first in:”/usr/share/pve-manager/js/pvemanagerlib.js”
and the second in: “/usr/share/pve-manager/touch/pvemanager-mobile.js”
but there must be also a third place !
Marcel G
21-Mar-2017 at 12:48 pmThe old methods does no longer seem to work, but I found a workaround.
We need to tell the calling function, that we have a valid subscription, you can use this one-liner:
sed -i.bak ‘s/NotFound/Active/g’ /usr/share/perl5/PVE/API2/Subscription.pm && systemctl restart pveproxy.service
You can leave the other files as is. This is for version 4.4-13
Baluga
29-Oct-2017 at 1:24 amCan confirm this works for Proxmox v5.0 and v5.1 as well. Don’t know if it was the web html or the keyboard, but Marcel’s original comment made the singular quotation marks –> ‘ as a special character, so I had to manually retype those parts for the command to work.
AWildBeard
27-Feb-2018 at 12:07 amThank you very much!
6ax
11-Mar-2018 at 12:03 pmConfirmed. Proxmox 5.1 Tnx
armitage22
3-Apr-2018 at 2:24 amThe problem is ‘ character:
Command that works: sed -i.bak ‘s/NotFound/Active/g’ /usr/share/perl5/PVE/API2/Subscription.pm && systemctl restart pveproxy.service
Regards
mannebk
7-Oct-2018 at 2:40 pmthanks, works like a charm
the ” ‘ ” in qustion, on German layout its shift + # :-)
have fun
maybe the author wants to update his howto? more easy to find then. or at least reference the “comment” in the post
D. Cherfaoui
19-Apr-2020 at 5:59 pmWork’s, Thank’s a lot
Eric
26-Mar-2021 at 2:45 pmConfirmed working with 6.3-6
Dimitris
15-Dec-2017 at 6:31 amWell just go to SmartOs and no pop up there
plus a more adult Os than linux (my opinion)
jose
12-Nov-2018 at 9:08 pmThe code has been moved to /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js in Proxmox 5.2
rlk
11-Dec-2019 at 8:00 pmMoved to /usr/share/pve-manager/js/pvemanagerlib.js in 6.1
Matias Moreno
3-May-2019 at 7:49 pmPromox 5.4:
Edit /usr/share/pve-manager/js/pvemanagerlib.js, find this line:
console.log(“Starting PVE Manager”);
And add this one below:
Proxmox.Utils.checked_command = function (orig_cmd) { orig_cmd (); };
Allan
8-Nov-2020 at 7:54 amCheers mate this worked for me when the others didn’t..
Alejandro Proenza
13-Feb-2022 at 1:27 pmsince version 7.1 it’s mentioned:
console.log(“Starting Proxmox VE Manager”);
Matias – it works!
Bobby
23-May-2019 at 4:50 pmEasy way:
location=$(grep -r “!== ‘Active'” /usr/share/. | cut -d ‘:’ -f 1)
sed -i.bak “s/data.status !== ‘Active’/false/g” $location