In some systems (tested on Centos 7), in basic repositories only old versions of Bacula are included. In one of my client I have Bacula 5.2.13

So I need to update this client to 9.0.x version. Step by step:
- Make a backup of configuration file. Copy it to another location
- Update your system — yum update, yum upgrade
- Find all packages related to old version — rpm -ql, rpm -qa
- Plan your downtime and maintenance window for this client
- Stop all backup jobs for this client
- Stop service on client (for Centos) — systemctl stop bacula-fd.service
- If you want/need to check config — bacula-fd -tc /etc/bacula/bacula-fd.conf
- Listing of all installed rpm
[root@nb-linux-agent ~]# yum list installed | grep bacu*
bacula-client.x86_64 9.0.6-1.el7 installed
bacula-libs.x86_64 9.0.6-1.el7 installed
gnome-backgrounds.noarch 3.28.0-1.el7 @base
libacl.x86_64 2.2.51-15.el7 @base
python-backports.x86_64 1.0-8.el7 @anaconda
python-backports-ssl_match_hostname.noarch
sane-backends.x86_64 1.0.24-12.el7 @base
sane-backends-drivers-scanners.x86_64 1.0.24-12.el7 @base
sane-backends-libs.x86_64 1.0.24-12.el7 @base
[root@nb-linux-agent ~]# rpm -qa | grep bacula
bacula-libs-9.0.6-1.el7.x86_64
bacula-client-9.0.6-1.el7.x86_64
9. Put packages on client and install it — https://www.bacula.org/packages/630201ee796f2/
10. Install yum install bacula-client-9.0.6-1.el7.x86_64.rpm bacula-libs-9.0.6-1.el7.x86_64.rpm
11. Directory — cd /opt/bacula/
12. Restore you configuration (bacula-fd) to /etc/bacula and /opt/bacula/etc. This files must be equal.

Oct 26 20:01:31 nb-linux-agent bacula-fd: Shutting down Bacula service: nb-linux-agent-fd …
Oct 26 20:01:31 nb-linux-agent systemd: bacula-fd.service: main process exited, code=exited, status=15/n/a
Oct 26 20:01:31 nb-linux-agent systemd: Unit bacula-fd.service entered failed state.
Oct 26 20:16:11 nb-linux-agent yum[14710]: Erased: bacula-libs-9.0.6-1.el7.x86_64
Oct 26 20:18:12 nb-linux-agent yum[14713]: Erased: bacula-client-5.2.13-23.1.el7.x86_64
Oct 26 20:18:13 nb-linux-agent yum[14713]: Erased: bacula-common-5.2.13-23.1.el7.x86_64
Oct 26 20:18:13 nb-linux-agent yum[14713]: Erased: bacula-libs-5.2.13-23.1.el7.x86_64
[root@bacula-lin-client /]# cat /etc/redhat-release
Rocky Linux release 8.6 (Green Obsidian)
[root@bacula-lin-client /]# rpm -ql bacula-common
/etc/bacula
/etc/logrotate.d/bacula
/usr/libexec/bacula
/usr/libexec/bacula/bacula_config
/usr/libexec/bacula/btraceback.dbx
/usr/libexec/bacula/btraceback.gdb
/usr/libexec/bacula/btraceback.mdb
/usr/sbin/btraceback
/usr/share/doc/bacula-common
/usr/share/doc/bacula-common/README.Redhat
/usr/share/doc/bacula-common/quickstart_mysql.txt
/usr/share/doc/bacula-common/quickstart_postgresql.txt
/usr/share/doc/bacula-common/quickstart_sqlite3.txt
/usr/share/man/man8/btraceback.8.gz
/var/log/bacula
/var/spool/bacula

Start service bacula-fd on client
Restart service bacula-dir on Director and check your web concole, In my case with Baculum — old version was displayed until the first backup jobs on this client. Then job is finish — all clients and version looks fine

To check client connectivity you need to you bconsole in cli or go to the Client Tab on web console and click Status Client.
ps -aux | grep bacula