[TUTORIAL] How to install Proxmox Backup Client under Ubuntu%

Frederico Siena

Active Member
Jan 14, 2019
12
8
43
45
Londrina-PR / Brazil
So far, there is no installer for Ubuntu% and Red Hat% systems, but by manually installing the necessary dependencies and correcting the links in the linked libraries, it is possible to use the Proxmox Backup Client (PBC) in Ubuntu. Backup and restore tests were performed using PXAR under production environment of Kmee from Brazil. Next, I show how to perform all the procedures to obtain a functional installation of PBC in an Ubuntu Focal Fossa (20.04 LTS).

Installing the required packages​

sudo apt update
sudo apt install libfuse3-3 qrencode

Adjusting symbolic links​

sudo ln -s /usr/lib/x86_64-linux-gnu/libapt-pkg.so.6.0.0 /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0
sudo ln -s /usr/lib/x86_64-linux-gnu/libapt-pkg.so.6.0 /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0

Downloading and installing the package​

cd ~ /
wget -c -t 0 -T 0 http://download.proxmox.com/debian/...amd64/proxmox-backup-client_1.0.6-1_amd64.deb
sudo dpkg -i --ignore-depends = libapt-pkg5.0 ~ / proxmox-backup-client_1.0.6-1_amd64.deb
sudo apt -f install
sudo apt --fix-broken install
rm ~ / proxmox-backup-client_1.0.6-1_amd64.deb

Testing ...​

PXAR Syntax​

proxmox-backup-client backup NAME.pxar: / DIR --repository USER@pbs@PBS_FQDN: REMOTE_DATASTORE --backup-id 'BKP_NAME'
-- or --
proxmox-backup-client backup NAME.pxar: / DIR --repository USER@pbs@PBS_IP: REMOTE_DATASTORE --backup-id 'BKP_NAME'

Example​

proxmox-backup-client backup root.pxar: / root --repository bkps@pbs@PBS-01: STG-01.local --backup-id 'RootDIR Client XYZ'
 

Attachments

  • Screenshot_20201217_021058.png
    Screenshot_20201217_021058.png
    113.2 KB · Views: 324
Last edited:
So far, there is no installer for Ubuntu% and Red Hat% systems, but by manually installing the necessary dependencies and correcting the links in the linked libraries, it is possible to use the Proxmox Backup Client (PBC) in Ubuntu. Backup and restore tests were performed using PXAR under production environment of Kmee from Brazil. Next, I show how to perform all the procedures to obtain a functional installation of PBC in an Ubuntu Focal Fossa (20.04 LTS).

Installing the required packages​

sudo apt update
sudo apt install libfuse3-3 qrencode

Adjusting symbolic links​

sudo ln -s /usr/lib/x86_64-linux-gnu/libapt-pkg.so.6.0.0 /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0
sudo ln -s /usr/lib/x86_64-linux-gnu/libapt-pkg.so.6.0 /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0

Downloading and installing the package​

cd ~ /
wget -c -t 0 -T 0 http://download.proxmox.com/debian/...amd64/proxmox-backup-client_1.0.6-1_amd64.deb
sudo dpkg -i --ignore-depends = libapt-pkg5.0 ~ / proxmox-backup-client_1.0.6-1_amd64.deb
sudo apt -f install
sudo apt --fix-broken install
rm ~ / proxmox-backup-client_1.0.6-1_amd64.deb

Testing ...​

PXAR Syntax​

proxmox-backup-client backup NAME.pxar: / DIR --repository USER@pbs@PBS_FQDN: REMOTE_DATASTORE --backup-id 'BKP_NAME'
-- or --
proxmox-backup-client backup NAME.pxar: / DIR --repository USER@pbs@PBS_IP: REMOTE_DATASTORE --backup-id 'BKP_NAME'

Example​

proxmox-backup-client backup root.pxar: / root --repository bkps@pbs@PBS-01: STG-01.local --backup-id 'RootDIR Client XYZ'
Hi all,
thank you very much for this description how the get proxmox-backup-client working. I got things working up to the point i do a "sudo apt-get dist-upgrade" later. Ubuntu always wants to uninstall "proxmox-backup-client" - i have no idea what I am doing wrong. (UBUNTU 20.04 LTS). Any comments welcome. During the time it is installed it works well. Backups arrive at the Backup Server and can be restored on a particular machine. Is there a way to prevent UBUNTU from uninstalling this package? Thanks for reading.
P.S. sudo apt-mark manual - delivers the result - already marked a manual installed
 
Last edited:
Hi all,
thank you very much for this description how the get proxmox-backup-client working. I got things working up to the point i do a "sudo apt-get dist-upgrade" later. Ubuntu always wants to uninstall "proxmox-backup-client" - i have no idea what I am doing wrong. (UBUNTU 20.04 LTS). Any comments welcome. During the time it is installed it works well. Backups arrive at the Backup Server and can be restored on a particular machine. Is there a way to prevent UBUNTU from uninstalling this package? Thanks for reading.
P.S. sudo apt-mark manual - delivers the result - already marked a manual installed

I have exactly the same issue - even when i follow the guide by Frederico Siena, with these commands it want to remove the backup-client:
sudo apt -f install
sudo apt --fix-broken install
 
Tenho exatamente o mesmo problema - mesmo seguindo o guia de Frederico Siena, com estes comandos quero remover o backup-cliente:
Try to mark the package.
This will prevent the package from being automatically installed, upgraded or removed.

Bash:
sudo apt-mark hold proxmox-backup-client
--or--
Bash:
sudo echo "proxmox-backup-client hold" | dpkg --set-selections
 
  • Like
Reactions: Carlos Gomes
After i installed with this method i am not able to run apt dist-upgrade:

Bash:
root@host:/etc# apt dist-upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
proxmox-backup-client : Depends: libapt-pkg5.0 (>= 0.8.0) but it is not installable
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

I suggest to extract the deb and copy the files manually to /usr/local:
Bash:
wget "http://download.proxmox.com/debian/pbs/dists/buster/pbs-no-subscription/binary-amd64/proxmox-backup-client_1.0.6-1_amd64.deb"
ar x proxmox-backup-client_1.0.6-1_amd64.deb
tar -xJf data.tar.xz
sudo cp -a usr/bin /usr/local
sudo cp -a usr/share /usr/local
 
Last edited:
I suggest to extract the deb and copy the files manually to /usr/local:
Bash:
wget "http://download.proxmox.com/debian/pbs/dists/buster/pbs-no-subscription/binary-amd64/proxmox-backup-client_1.0.6-1_amd64.deb"
ar x proxmox-backup-client_1.0.6-1_amd64.deb
tar -xJf data.tar.xz
sudo cp -a usr/bin /usr/local
sudo cp -a usr/share /usr/local

Does this work? Sounds very interesting!
What dependencies did you need to install first, before copying the .deb-files worked?

EDIT: This just works! For everyone reading this thread, these are all the steps you need to take to install the proxmox-backup-client:

Code:
sudo apt update

# installing dependencies
sudo apt install libfuse3-3 qrencode

# linking a newer version to an older version' name
sudo ln -s /usr/lib/x86_64-linux-gnu/libapt-pkg.so.6.0.0 /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0
sudo ln -s /usr/lib/x86_64-linux-gnu/libapt-pkg.so.6.0 /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0

# getting proxmox-backup-client
wget "http://download.proxmox.com/debian/pbs/dists/buster/pbs-no-subscription/binary-amd64/proxmox-backup-client_1.0.6-1_amd64.deb"

# installung bin-utils and extracting .dep-file
sudo apt install bin-utils
ar x proxmox-backup-client_1.0.6-1_amd64.deb
tar -xJf data.tar.xz

# making the executables usable in your system
sudo cp -a usr/bin /usr/local
sudo cp -a usr/share /usr/local
 
Last edited:
For 18.04 bionic you need to enable a PPA repo. At the moment this is my script working for 20.04 and 18.04:

Bash:
#!/bin/bash

# proxmox-backup-client version
PKG_VER="1.0.6-1"

# libfuse3-3 repo for bionic
if [[ "$(lsb_release -rs)" == "18.04" ]]; then
 add-apt-repository ppa:bkryza/onedata-1909-bionic
fi

# prepare
apt update
apt install -y libfuse3-3 qrencode
ln -s /usr/lib/x86_64-linux-gnu/libapt-pkg.so.6.0.0 /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0
ln -s /usr/lib/x86_64-linux-gnu/libapt-pkg.so.6.0 /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0

cd /var/tmp

# download
wget -c -t 0 -T 0 http://download.proxmox.com/debian/pbs/dists/buster/pbs-no-subscription/binary-amd64/proxmox-backup-client_${PKG_VER}_amd64.deb

# extract .deb
ar x proxmox-backup-client_${PKG_VER}_amd64.deb
tar -xJf data.tar.xz

# copy files to /usr/local
cp -a usr/bin /usr/local
cp -a usr/share /usr/local

# clean out
rm -f control.tar.xz data.tar.xz debian-binary proxmox-backup-client*.deb
rm -rf usr
 
@Frederico Siena If you want to, you can mark your thread as "Tutorial" by editing your opening post and changing the prefix (left of the thread title).
 
  • Like
Reactions: Frederico Siena
with current git the dependencies got stripped down, it's now just the following:

Code:
Depends: qrencode, libacl1 (>= 2.2.23), libc6 (>= 2.25), libfuse3-3 (>= 3.2.3), libgcc1 (>= 1:4.2), libssl1.1 (>= 1.1.0), libstdc++6 (>= 5.2), libzstd1 (>= 1.3.2)

so with the next released version proxmox-backup-client should be installable out of the box on more more Debian/Ubuntu-based distros :)
 
Hi,

we worked around some linking/dependency issues and with version 1.0.8 the dependencies required got reduced, so that it now installs on Bullseye, Ubuntu 20.xy versions and possible other Debian derivatives just fine.

Bash:
wget http://download.proxmox.com/debian/pve/dists/buster/pvetest/binary-amd64/proxmox-backup-client_1.0.8-1_amd64.deb

# checksum verification
sha256sum proxmox-backup-client_1.0.8-1_amd64.deb 
f812593f8f1895fc5cbd5c8b6ec1120a4f863739c7c23aa0f2c15b0f7c59033a  proxmox-backup-client_1.0.8-1_amd64.deb

apt update
apt install ./proxmox-backup-client_1.0.8-1_amd64.deb
 
Hi,

we worked around some linking/dependency issues and with version 1.0.8 the dependencies required got reduced, so that it now installs on Bullseye, Ubuntu 20.xy versions and possible other Debian derivatives just fine.

Bash:
wget http://download.proxmox.com/debian/pve/dists/buster/pvetest/binary-amd64/proxmox-backup-client_1.0.8-1_amd64.deb

# checksum verification
sha256sum proxmox-backup-client_1.0.8-1_amd64.deb
f812593f8f1895fc5cbd5c8b6ec1120a4f863739c7c23aa0f2c15b0f7c59033a  proxmox-backup-client_1.0.8-1_amd64.deb

apt update
apt install ./proxmox-backup-client_1.0.8-1_amd64.deb
Using @Csaba Tóth's Hint about the PPA, i was able to install the 1.0.8 client on Ubuntu Bionic as well. :D
Absolutely wonderful so far!
 
Hi,

we worked around some linking/dependency issues and with version 1.0.8 the dependencies required got reduced, so that it now installs on Bullseye, Ubuntu 20.xy versions and possible other Debian derivatives just fine.

Bash:
wget http://download.proxmox.com/debian/pve/dists/buster/pvetest/binary-amd64/proxmox-backup-client_1.0.8-1_amd64.deb

# checksum verification
sha256sum proxmox-backup-client_1.0.8-1_amd64.deb
f812593f8f1895fc5cbd5c8b6ec1120a4f863739c7c23aa0f2c15b0f7c59033a  proxmox-backup-client_1.0.8-1_amd64.deb

apt update
apt install ./proxmox-backup-client_1.0.8-1_amd64.deb
Works perfectly fine on Ubuntu 20.04. thank you, guys! Team Proxmox for president!! :)
 
  • Like
Reactions: tom
Hi,

we worked around some linking/dependency issues and with version 1.0.8 the dependencies required got reduced, so that it now installs on Bullseye, Ubuntu 20.xy versions and possible other Debian derivatives just fine.

Bash:
wget http://download.proxmox.com/debian/pve/dists/buster/pvetest/binary-amd64/proxmox-backup-client_1.0.8-1_amd64.deb

# checksum verification
sha256sum proxmox-backup-client_1.0.8-1_amd64.deb
f812593f8f1895fc5cbd5c8b6ec1120a4f863739c7c23aa0f2c15b0f7c59033a  proxmox-backup-client_1.0.8-1_amd64.deb

apt update
apt install ./proxmox-backup-client_1.0.8-1_amd64.deb
Could you please provide a link in the download dir, that link 'latest' version for easier download management via script/automation.

Of course having just a binary without other dependencies would probably be the best solution, but this will take a while until implemented I guess.

Thanks!
 
Last edited:
Could you please provide a link in the download dir, that link 'latest' version for easier download management via script/automation.

Of course having just a binary without other dependencies would probably be the best solution, but this will take a while until implemented I guess.

Thanks!
We'd like to avoid that, as it circumvents checking the integrity of the downloaded package. Doing such stuff automated in scripts without verifying the checksums with known good values, is a recipe for a supply chain attack - please avoid that.
And replicating all those checks is basically rebuilding apt, but without the testing and many eyes looking upon it, ensuring all is doe safely and pitfalls are avoided, so that does not seem like a sensible solution either.

What we rather plan is a separate client only repository, which one can just add to most Debian derivatives, then updates will get distributed securely with apt.
 
Is it possible to build from source the backup client for Ubuntu ARM64 (i.e. raspberry pi 4)?
 
Last edited:
  • Like
Reactions: giovvv
We'd like to avoid that, as it circumvents checking the integrity of the downloaded package. Doing such stuff automated in scripts without verifying the checksums with known good values, is a recipe for a supply chain attack - please avoid that.
And replicating all those checks is basically rebuilding apt, but without the testing and many eyes looking upon it, ensuring all is doe safely and pitfalls are avoided, so that does not seem like a sensible solution either.

What we rather plan is a separate client only repository, which one can just add to most Debian derivatives, then updates will get distributed securely with apt.
I totally agree. Installing via .deb Package works for now since the Package sourcen don't work properly at the time in Ubuntu.
I hope that there will be official repos from PVE that support all common distros and not just Debian based ones - in the long run.

It would still be easier if the client could be downloaded as a single binary providing the checksum on the download page or some other trusted source. We know of several client project which do not allow to add additional sources or require extensive checks and processes to have other (foreign) repos approved. Installing an approved and pre-checked binary is no problem most of the time.

Still looking very much forward to a windows and mac OS client, even if far far away from now. This would make PBS an absolute perfect solution to replace other tools and be an all-in-one backup solution.
 
For 18.04 bionic you need to enable a PPA repo. At the moment this is my script working for 20.04 and 18.04...
Thank you! I managed to get proxmox-backup-client working on Ubuntu LTS 18.04.5 by using the ppa:bkryza/onedata-1909-bionic and the buster (no-subscription) repository.
Only little thing is: when I run proxmox-backup-client key paperkey --output-format text, I get Invalid image type: utf8i Error: status code: 1 - no error message. Anybody know what I'm doing wrong or how to fix this?
 
likely your version of qrencode is too old.. we might switch to a rust version that gets compiled in at some point, until then you can also paperkey your key on a different system by copying the key file.
 
  • Like
Reactions: leesteken

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!