How to backup QBittorrent plugin

i have an qbittorrent iocage plugin and I want to backup the files to be able to migrate at some point to a truenas scale docker. I want preserve the configs and stats and seeding torrent. Where are these files located?
backing up the full jail would not work in this case as i am planning to switch to docker.

From the jail’s perspective:
/var/db/qbittorrent

From the TrueNAS host perspective:
/mnt/<poolname>/iocage/jails/<jailname>/root/var/db/qbittorrent

You can use tar to make a quick backup of everything, and even preserve the ownership and permissions:

tar c -avf /mnt/<poolname>/some/folder/qbittorrent-jail-config-backup.tar.zst -C /mnt/<poolname>/iocage/jails/<jailname>/root/var/db/ qbittorrent

You may have to use “sudo”, depending on the permissions set.

:warning: Warning: Make sure your torrent downloads were not being saved to the default “/var/db/qbittorrent/Downloads” directory, or else your config backup will be massive.

Hello @winnielinnie,

i’m seeing the folder mention. However, it does appear that it only contain 2 empty subfolders. Even with root permission on truenas core with winSCP or putty, i see those folderS empty

qbittorrent root config folder putty

Maybe because the “Plugin” uses a different location.

I use qBittorrent in a FreeBSD jail, without a premade “Plugin”.

Yeah that might be why it’s in a different location. What version are you running (I run 4.6.3) maybe they changed the location with an update…

The qBittorrent version doesn’t matter. It’s “Plugin” vs “jail”.

The Plugin creator-maintainer is using a different path for qBittorrent’s config, which is different than vanilla FreeBSD / jail.

I’m on qBittorrent 5.0.2, for what it’s worth.


EDIT: Try looking under /usr/local/etc/

EDIT 2: To just find it:

find /mnt/tank/iocage/jails/qbittorrent/root/ -name "qbittorrent" -type d

I’ve tried your command and it found the empty folder I showed you in the first post

root@FREENAS:~ # find /mnt/tank/iocage/jails/qbittorrent/root/ -name "qbittorrent" -type d
/mnt/tank/iocage/jails/qbittorrent/root/var/db/qbittorrent
root@FREENAS:~ # ls -R /mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/
avahi                   gtk-3.0                 pkg
bash_completion.d       libinput                pkg.conf
cups                    man.d                   pkg.conf.sample
dbus-1                  pam.d                   polkit-1
devd                    papersize.a4            rc.d
fonts                   papersize.letter        ssl
gnome.subr              periodic                xdg

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/avahi:
avahi-daemon.conf               hosts
avahi-daemon.conf.sample        hosts.sample
avahi-dnsconfd.action           services

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/avahi/services:
sftp-ssh.service        ssh.service

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/bash_completion.d:
_pkg.bash               dbus-bash-completion.sh

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/cups:
cups-files.conf         cupsd.conf.sample       snmp.conf.sample
cups-files.conf.sample  ppd                     ssl
cupsd.conf              snmp.conf

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/cups/ppd:

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/cups/ssl:

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/dbus-1:
session.conf            system.conf             system.d
session.conf.sample     system.conf.sample

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/dbus-1/system.d:
avahi-dbus.conf cups.conf

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/devd:
cups.conf               cups.conf.sample

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/fonts:
conf.avail              fonts.conf              fonts.dtd
conf.d                  fonts.conf.sample

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/fonts/conf.avail:
05-reset-dirs-sample.conf
09-autohint-if-no-hinting.conf
10-autohint.conf
10-hinting-full.conf
10-hinting-medium.conf
10-hinting-none.conf
10-hinting-slight.conf
10-no-antialias.conf
10-scale-bitmap-fonts.conf
10-sub-pixel-bgr.conf
10-sub-pixel-none.conf
10-sub-pixel-rgb.conf
10-sub-pixel-vbgr.conf
10-sub-pixel-vrgb.conf
10-unhinted.conf
10-yes-antialias.conf
11-lcdfilter-default.conf
11-lcdfilter-legacy.conf
11-lcdfilter-light.conf
11-lcdfilter-none.conf
20-unhint-small-dejavu-sans-mono.conf
20-unhint-small-dejavu-sans.conf
20-unhint-small-dejavu-serif.conf
20-unhint-small-vera.conf
25-unhint-nonlatin.conf
30-metric-aliases.conf
35-lang-normalize.conf
40-nonlatin.conf
42-luxi-mono.conf
45-generic.conf
45-latin.conf
48-spacing.conf
49-sansserif.conf
50-user.conf
51-local.conf
57-dejavu-sans-mono.conf
57-dejavu-sans.conf
57-dejavu-serif.conf
60-generic.conf
60-latin.conf
65-fonts-persian.conf
65-khmer.conf
65-nonlatin.conf
69-unifont.conf
70-no-bitmaps.conf
70-yes-bitmaps.conf
80-delicious.conf
90-synthetic.conf

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/fonts/conf.d:
10-hinting-slight.conf
10-scale-bitmap-fonts.conf
10-sub-pixel-none.conf
10-yes-antialias.conf
11-lcdfilter-default.conf
20-unhint-small-dejavu-sans-mono.conf
20-unhint-small-dejavu-sans.conf
20-unhint-small-dejavu-serif.conf
20-unhint-small-vera.conf
30-metric-aliases.conf
40-nonlatin.conf
42-luxi-mono.conf
45-generic.conf
45-latin.conf
48-spacing.conf
49-sansserif.conf
50-user.conf
51-local.conf
57-dejavu-sans-mono.conf
57-dejavu-sans.conf
57-dejavu-serif.conf
60-generic.conf
60-latin.conf
65-fonts-persian.conf
65-nonlatin.conf
69-unifont.conf
70-yes-bitmaps.conf
80-delicious.conf
90-synthetic.conf
README

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/gtk-3.0:
im-multipress.conf

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/libinput:

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/man.d:
perl5.conf

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/pam.d:
cups            polkit-1

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/periodic:
daily           security        weekly

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/periodic/daily:
411.pkg-backup          490.status-pkg-changes

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/periodic/security:
405.pkg-base-audit      410.pkg-audit           460.pkg-checksum

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/periodic/weekly:
400.status-pkg

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/pkg:
fingerprints    repos

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/pkg/fingerprints:
iocage-plugins

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/pkg/fingerprints/iocage-plugins:
revoked trusted

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/pkg/fingerprints/iocage-plugins/revoked:

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/pkg/fingerprints/iocage-plugins/trusted:
iocage-plugins

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/pkg/repos:
FreeBSD.conf            iocage-plugins.conf

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/polkit-1:
localauthority  rules.d

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/polkit-1/localauthority:
10-vendor.d     30-site.d       90-mandatory.d
20-org.d        50-local.d

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/polkit-1/localauthority/10-vendor.d:

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/polkit-1/localauthority/20-org.d:

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/polkit-1/localauthority/30-site.d:

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/polkit-1/localauthority/50-local.d:

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/polkit-1/localauthority/90-mandatory.d:

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/polkit-1/rules.d:
50-default.rules

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/rc.d:
avahi-daemon    cupsd           qbittorrent
avahi-dnsconfd  dbus

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/ssl:
cert.pem.pkgsave

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/xdg:
autostart               Xwayland-session.d

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/xdg/autostart:
at-spi-dbus-bus.desktop

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/xdg/Xwayland-session.d:
00-at-spi
root@FREENAS:~ #

I saw something interesting. Could it be there?

/mnt/tank/iocage/jails/qbittorrent/root/usr/local/etc/pkg/repos: "reeBSD.conf iocage-plugins.conf

WHAT your config file(s) looks like? Could you provide me a screenshot of what it should look like please @winnielinnie . Thanks

Then it’s probably using a user-specific directory?

You can check in your /etc/rc.conf file for any service overrides.

Inside the jail itself:

cat /etc/rc.conf

This might show you where the config file is inside your jail.

Another method is to run on the host:

ps aux | grep qbittorrent

You will see the parameters that qbittorrent-nox is running with.


It’s just a folder with a bunch of config and json files, as well as .torrent files.

@winnielinnie I’ve look into that a bit more today and i might have found something…

I ran both of your command, but i’m not sure what i was supposed to expect from the return.

root@qbittorrent:/ # cat /etc/rc.conf
ifconfig_epair0b="SYNCDHCP"

root@qbittorrent:/ # ps aux | grep qbittorrent
root 37606 0.0 0.0 12892 2420 1 S+J 23:36 0:00.00 grep qbittorrent

i also found “qbittorrent” file with no extension /mnt/tank/backupvol1/iocage/jails/qbittorrent/root/usr/local/etc/rc.d/
the content seems to indicate the default location which is kind of confusing because it’s not there…

#!/bin/sh

# PROVIDE: qbittorrent
# REQUIRE: DAEMON
# KEYWORD: shutdown
#
# Add the following lines to /etc/rc.conf to enable this service:
#
# qbittorrent_enable:	     Set to NO by default. Set it to YES to enable it.
# qbittorrent_conf_dir:	     Directory where qbittorrent configuration
#			     data is stored.
#			     Default: /var/db/qbittorrent/conf
# qbittorrent_download_dir:  Directory to store downloaded data.
#			     Default: /var/db/qbittorrent/Downloads
# qbittorrent_user:	     The user account transmission daemon runs as.
#			     Default is 'qbittorrent'
# qbittorrent_group:	     The group associated with username qbittorrent
#			     daemon runs as. Default is 'qbittorrent'
# qbittorrent_flags:	     Arguments that will be passed to qbittorrent.
#			     For example, --webui-port={port}.
#

. /etc/rc.subr

name=qbittorrent
rcvar=qbittorrent_enable

load_rc_config $name

: ${qbittorrent_enable="NO"}
: ${qbittorrent_conf_dir="/var/db/qbittorrent/conf"}
: ${qbittorrent_download_dir="/var/db/qbittorrent/Downloads"}
: ${qbittorrent_user=qbittorrent}
: ${qbittorrent_group=qbittorrent}
: ${qbittorrent_flags=""}

command="/usr/local/bin/qbittorrent-nox"
command_args="--daemon"

qbittorrent_flags=" \
	${qbittorrent_conf_dir:+--profile=${qbittorrent_conf_dir}} \
	${qbittorrent_download_dir:+--save-path=${qbittorrent_download_dir}} \
	${qbittorrent_flags}"

run_rc_command $1

while searching for .torrent and JSON files i found those 2 directory that looked promessing. Did i found it or it still something else?
/mnt/tank/iocage/jails/qbittorrent/root/
.conf
.local