Automated backups
A tool for all your back-ups, internal and external!

Keep your Odoo data safe with this module. Take automated back-ups, remove them automatically and even write them to an external server through an encrypted tunnel. You can even specify how long local backups and external backups should be kept, automatically!
Connect with an FTP Server
Keep your data safe, through an SSH tunnel!
Want to go even further and write your backups to an external server? You can with this module! Specify the credentials to the server, specify a path and everything will be backed up automatically. This is done through an SSH (encrypted) tunnel, thanks to pysftp, so your data is safe!

Test connection
Checks your credentials in one click


Want to make sure if the connection details are correct and if Odoo can automatically write them to the remote server? Simply click on the 'Test SFTP Connection' button and you will get message telling you if everything is OK, or what is wrong!
E-mail on backup failure
Stay informed of problems, automatically!
Do you want to know if the database backup failed? Check the checkbox 'Auto. E-mail on backup fail' and fill in your e-mail. Every time a backup fails you will get an e-mail in your mailbox with technical details.

Contact / Support
Need help or want extra features?
Need help with the configuration or want this module to have more functionalities? Please create a bug report on the Github issue tracker
Please log in to comment on this module
Report comment
Any abuse of this reporting system will be penalizedI have installed this module and it works fine when I run it manually but does not automatically, I mean it does not increment the date to next day by it self. Point to note that it got scheduled action when I installed it, so it should run automatically but it doesnt. kindly help in this regard.
Really useful but can't understand the permission settings
I have set up everything and connection is successful. However when i run the scheduler manually, it throws a permission error. I have tried multiple settings on server by giving 777 access and changing owner. But it doesn't seem to work. I think i am messing something something here. Any help would be really appreciated.
Very good tool, however don't know how to disable it
I am really happy with the tool. It does the job.
However, I stumbled upon the following problem:
1. I don't need a database anymore, so I removed the backup settings.
2. Unfortunately, I still get a backup file every day.
3. Yesterday I dropped the database from PSQL.
4. Today I see an empty file with the dropped database name.
Please help.
Re: Very good tool, however don't know how to disable it
Remove the database backup record completely. That should always work :)
Hello, Could you please tell me if this module works within odoo.sh ? Regards.
Great
I'v been using databases since my first project, now creating a new one called casinoshunter and going to use your database auto-backup. Hope this backup works properly, relying on it's reliability.
Hi Yenthe Van Ginneken, Thanks a lot this module, But let me ask if there is a difference in file size when using SFTP https://prntscr.com/stez4u
Re:
Hi! Zips are compressed so yes there is a difference. Your difference in size looks pretty big though. Be sure to test your backup so you're certain it works and behaves as you'd like.
its very good and powerfull tool
its very good and usefull tool and i have one note i like you to add it to your module Readme file to mention the required python libraries that is required to install before the user install this module thanks for nice module Regards, Husam
Re: its very good and powerfull tool
Thanks Husam! The required libraries are actually mentioned in the requirements.txt file (see https://github.com/Yenthe666/auto_backup/blob/13.0/requirements.txt)
Thanks a lot!
Dear Yenthe, I am using your app for backup of odoo 12 it ok and very good. But when i using it for bakup of odoo 13 then it not work, it just backs up and save bakup file at local. While i have connected to SFTP successfully. Please help me fix this problem. Thank you very much
Re: Thanks a lot!
Hi, please create a ticket with detailed info at https://github.com/yenthe666/auto_backup/issues
Looking for a solution
Yenthe, i am using PostgreSql for our database when i install the auto_backup software it asks for Paramiko software which i cannot find for the PostgreSql database on Windows Server 2016. Is this the only software that is compatible with your auto_backup application or do you have something that will work with our software? We are on Odoo 13.
Re: Looking for a solution
Hi! Sorry the dependency is needed. It should be possible to install pysftp on Windows though.
Thanks a lot! I donated €10 for this!
Re: Thanks a lot! I donated €10 for this!
Thanks a lot for the donation! :)
Very usefull, easy to install
Thanks for this module Yenthe!
Re: Very usefull, easy to install
You're welcome, happy you like it!
Two separate backup tasks?
Hi, Thanks for the very useful app. I just have a quick question, is there any way to have to different back ups running at different intervals? I'm trying to get a nightly back up locally and a weekly or monthly backup on a sftp server. Is it possible with your app? Thanks again. Siavash
Re: Two separate backup tasks?
Hi Siavash, Not really. You can create multiple backup records - for example to take one .dump backup and one .zip backup - but at this time they're all executed. If you'd like this you would need to add a bit of custom code to keep track of intervals per back-up record so it doesn't execute all backups blindly. Regards, Yenthe
autobackup error
While trying to test connection in odoo14 community hosted in digital ocean , it's showing the error.
Tried with different FTP servers and the same error again.
pip modules and versions installed in the server.
Package Version
---------------------- -------------
appdirs 1.4.4
attrs 21.4.0
Automat 0.8.0
Babel 2.6.0
bcrypt 4.0.1
beautifulsoup4 4.11.1
blinker 1.4
cached-property 1.5.2
certifi 2019.11.28
cffi 1.15.1
chardet 3.0.4
click 8.1.3
cloud-init 23.1.2
colorama 0.4.3
command-not-found 0.3
configobj 5.0.6
constantly 15.1.0
cryptography 39.0.1
dbus-python 1.2.16
decorator 4.3.0
defusedxml 0.7.1
distro 1.4.0
distro-info 0.23ubuntu1
docutils 0.14
ebaysdk 2.1.5
ec2-hibinit-agent 1.0.0
entrypoints 0.3
freezegun 0.3.15
gevent 20.9.0
greenlet 0.4.17
hibagent 1.0.1
httplib2 0.14.0
humanize 1.0.0
hyperlink 19.0.0
idna 2.6
importlib-metadata 1.5.0
incremental 16.10.1
isodate 0.6.1
itsdangerous 2.1.2
Jinja2 3.1.2
jsonpatch 1.22
jsonpointer 2.0
jsonschema 3.2.0
language-selector 0.1
launchpadlib 1.10.13
lazr.restfulclient 0.14.2
lazr.uri 1.0.3
libsass 0.17.0
lxml 4.6.1
Mako 1.0.7
MarkupSafe 2.1.2
more-itertools 4.2.0
netifaces 0.10.4
num2words 0.5.6
numpy 1.22.2
oauthlib 3.1.0
ofxparse 0.19
paramiko 2.7.2
passlib 1.7.1
pbr 5.8.1
pexpect 4.6.0
pgspecial 1.9.0
phonenumbers 8.12.46
Pillow 8.1.1
pip 23.0
polib 1.1.0
prompt-toolkit 2.0.10
psutil 5.6.6
psycopg2 2.8.5
pyasn1 0.4.8
pyasn1-modules 0.2.1
pycparser 2.21
pycups 2.0.1
pydot 1.4.1
Pygments 2.3.1
PyGObject 3.36.0
PyHamcrest 1.9.0
PyJWT 1.7.1
pymacaroons 0.13.0
PyNaCl 1.5.0
pyOpenSSL 23.0.0
pyparsing 3.0.9
PyPDF2 1.26.0
pyrsistent 0.15.5
pyserial 3.4
python-apt 2.0.1
python-dateutil 2.7.3
python-debian 0.1.36ubuntu1
python-ldap 3.1.0
python-stdnum 1.8
pytz 2019.1
pyusb 1.0.2
PyYAML 5.3.1
qrcode 6.1
reportlab 3.5.55
requests 2.21.0
requests-toolbelt 0.9.1
requests-unixsocket 0.2.0
SecretStorage 2.3.1
service-identity 18.1.0
setproctitle 1.1.10
setuptools 67.2.0
simplejson 3.16.0
six 1.16.0
SOAPpy 0.12.22
sos 4.4
soupsieve 2.3.2.post1
sqlparse 0.2.4
ssh-import-id 5.10
stripe 2.67.0
systemd-python 234
tabulate 0.8.6
terminaltables 3.1.0
Twisted 18.9.0
ubuntu-advantage-tools 8001
ufw 0.36
unattended-upgrades 0.1
urllib3 1.24.3
vobject 0.9.6.1
wadllib 1.3.3
wcwidth 0.1.8
Werkzeug 0.16.1
wheel 0.34.2
wstools 0.4.8
xlrd 1.2.0
XlsxWriter 1.1.2
xlwt 1.3.0
zeep 3.2.0
zipp 1.0.0
zope.event 4.5.0
zope.interface 4.7.1
zpl2 1.2
[notice] A new release of pip is available: 23.0 -> 23.1.2
database backups has larg size . but when i auto backups the size be change
Hi
Environment: Windows 10
Odoo version: 10 community
App to use: Auto Backup
I was prompt to install pysftp
after i installed the pysftp with my CMD (pip install pysftp)
I m still prompted with similar error about
Unable to install module "auto_backup" because an external dependency is not met: No module named pysftp
had googled around for solutions. but none solve the problem. could you advise what other remedy i can apply to make the feature work?
Thanks in advance
Backup file is created with 0KB
Hello and thanks for this module
I have a issue with creating backups locally (no SFTP). Please see my setup below.
The backup files are generated at /backups/fdp -- but all have 0KB. The logfile looks good see here:
2021-10-19 15:15:07,027 12148 INFO fdp odoo.addons.auto_backup.models.db_backup: Starting database backup: /odoo/.local/share/Odoo/backups/fdp @ localhost
2021-10-19 15:15:07,028 12148 INFO fdp odoo.service.db: DUMP DB: fdp format dump
2021-10-19 15:15:07,036 12148 INFO fdp odoo.addons.auto_backup.models.db_backup: Database backup succeeded: /odoo/.local/share/Odoo/backups/fdp @ localhost
pg_dump custom format (without filestore)
Is this applicable in aws?
Really useful but I have issue on connection
Error message : paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
I tested it on windows and debian server, my connection parameters are fine I tested it on FileZella Client !!!
Tnank you
dose it work in windows OS
Hi Yenthe Van Ginneken thank you for your great tool.
dose it supported by odoo 13 installed in windows.
paramiko dependency on windows
I have installed paramiko on windows and i could verify the import form command prompt but when i try to install your module, i still get the error that paramiko is not installed, please help!
strange Error on install - can you help me out there?
Odoo Server Error
Traceback (most recent call last):
File "/mnt/extra-addons/auto_backup/models/db_backup.py", line 18, in <module>
import paramiko
ModuleNotFoundError: No module named 'paramiko'
Im suffered in permission denied error
I'm suffered in permission denied error, i installed and i configured properly. while running the scheduled action by manually. its shows the error which i mentioned below. please help me to overcome this error.
Error:
Odoo Server Error
Traceback (most recent call last):
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/tools/safe_eval.py", line 351, in safe_eval
return unsafe_eval(c, globals_dict, locals_dict)
File "", line 1, in <module>
File "/home/rsa-key-20200714/inspire_custom_modules/auto_backup/models/db_backup.py", line 130, in schedule_backup
fp = open(file_path, 'wb')
PermissionError: [Errno 13] Permission denied: '/home/rsa-key-20200714/inspirenetworks/ra_global/database_backup/2020_11_05_14_15_01_inspiretestdb1.zip'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/http.py", line 624, in _handle_exception
return super(JsonRequest, self)._handle_exception(exception)
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/http.py", line 310, in _handle_exception
raise pycompat.reraise(type(exception), exception, sys.exc_info()[2])
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/tools/pycompat.py", line 14, in reraise
raise value
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/http.py", line 669, in dispatch
result = self._call_function(**self.params)
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/http.py", line 350, in _call_function
return checked_call(self.db, *args, **kwargs)
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/service/model.py", line 94, in wrapper
return f(dbname, *args, **kwargs)
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/http.py", line 339, in checked_call
result = self.endpoint(*a, **kw)
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/http.py", line 915, in __call__
return self.method(*args, **kw)
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/http.py", line 515, in response_wrap
response = f(*args, **kw)
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/addons/web/controllers/main.py", line 1326, in call_button
action = self._call_kw(model, method, args, kwargs)
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/addons/web/controllers/main.py", line 1314, in _call_kw
return call_kw(request.env[model], method, args, kwargs)
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/api.py", line 387, in call_kw
result = _call_kw_multi(method, model, args, kwargs)
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/api.py", line 374, in _call_kw_multi
result = method(recs, *args, **kwargs)
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/addons/base/models/ir_cron.py", line 83, in method_direct_trigger
self.with_user(cron.user_id).ir_actions_server_id.run()
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/addons/base/models/ir_actions.py", line 545, in run
res = func(action, eval_context=eval_context)
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/addons/base/models/ir_actions.py", line 430, in run_action_code_multi
safe_eval(action.sudo().code.strip(), eval_context, mode="exec", nocopy=True) # nocopy allows to return 'action'
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/tools/safe_eval.py", line 374, in safe_eval
pycompat.reraise(ValueError, ValueError('%s: "%s" while evaluating\n%r' % (ustr(type(e)), ustr(e), expr)), exc_info[2])
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/tools/pycompat.py", line 13, in reraise
raise value.with_traceback(tb)
File "/opt/bitnami/apps/odoo/lib/odoo-13.0.post20200715-py3.7.egg/odoo/tools/safe_eval.py", line 351, in safe_eval
return unsafe_eval(c, globals_dict, locals_dict)
File "", line 1, in <module>
File "/home/rsa-key-20200714/inspire_custom_modules/auto_backup/models/db_backup.py", line 130, in schedule_backup
fp = open(file_path, 'wb')
ValueError: <class 'PermissionError'>: "13
Permission denied" while evaluating
'model.schedule_backup()'
Really useful but can't understand the permission settings
I have set up everything and connection is successful. However when i run the scheduler manually, it throws a permission error. I have tried multiple settings on server by giving 777 access and changing owner. But it doesn't seem to work. I think i am messing something something here. Any help would be really appreciated.
I got error. I'm end user.
Lỗi: Odoo Server Error Traceback (most recent call last): File "C:\Odoo\Odoo 13.0\server\odoo\addons\auto_backup\models\db_backup.py", line 18, in import paramiko ModuleNotFoundError: No module named 'paramiko' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "C:\Odoo\Odoo 13.0\server\odoo\http.py", line 624, in _handle_exception return super(JsonRequest, self)._handle_exception(exception) File "C:\Odoo\Odoo 13.0\server\odoo\http.py", line 310, in _handle_exception raise pycompat.reraise(type(exception), exception, sys.exc_info()[2]) File "C:\Odoo\Odoo 13.0\server\odoo\tools\pycompat.py", line 14, in reraise raise value File "C:\Odoo\Odoo 13.0\server\odoo\http.py", line 669, in dispatch result = self._call_function(**self.params) File "C:\Odoo\Odoo 13.0\server\odoo\http.py", line 350, in _call_function return checked_call(self.db, *args, **kwargs) File "C:\Odoo\Odoo 13.0\server\odoo\service\model.py", line 94, in wrapper return f(dbname, *args, **kwargs) File "C:\Odoo\Odoo 13.0\server\odoo\http.py", line 339, in checked_call result = self.endpoint(*a, **kw) File "C:\Odoo\Odoo 13.0\server\odoo\http.py", line 915, in __call__ return self.method(*args, **kw) File "C:\Odoo\Odoo 13.0\server\odoo\http.py", line 515, in response_wrap response = f(*args, **kw) File "C:\Odoo\Odoo 13.0\server\odoo\addons\web\controllers\main.py", line 1326, in call_button action = self._call_kw(model, method, args, kwargs) File "C:\Odoo\Odoo 13.0\server\odoo\addons\web\controllers\main.py", line 1314, in _call_kw return call_kw(request.env[model], method, args, kwargs) File "C:\Odoo\Odoo 13.0\server\odoo\api.py", line 387, in call_kw result = _call_kw_multi(method, model, args, kwargs) File "C:\Odoo\Odoo 13.0\server\odoo\api.py", line 374, in _call_kw_multi result = method(recs, *args, **kwargs) File "", line 2, in button_immediate_install File "C:\Odoo\Odoo 13.0\server\odoo\addons\base\models\ir_module.py", line 72, in check_and_log return method(self, *args, **kwargs) File "C:\Odoo\Odoo 13.0\server\odoo\addons\base\models\ir_module.py", line 463, in button_immediate_install return self._button_immediate_function(type(self).button_install) File "C:\Odoo\Odoo 13.0\server\odoo\addons\base\models\ir_module.py", line 573, in _button_immediate_function modules.registry.Registry.new(self._cr.dbname, update_module=True) File "C:\Odoo\Odoo 13.0\server\odoo\modules\registry.py", line 86, in new odoo.modules.load_modules(registry._db, force_demo, status, update_module) File "C:\Odoo\Odoo 13.0\server\odoo\modules\loading.py", line 423, in load_modules loaded_modules, update_module, models_to_check) File "C:\Odoo\Odoo 13.0\server\odoo\modules\loading.py", line 315, in load_marked_modules perform_checks=perform_checks, models_to_check=models_to_check File "C:\Odoo\Odoo 13.0\server\odoo\modules\loading.py", line 182, in load_module_graph load_openerp_module(package.name) File "C:\Odoo\Odoo 13.0\server\odoo\modules\module.py", line 376, in load_openerp_module __import__('odoo.addons.' + module_name) File "C:\Odoo\Odoo 13.0\server\odoo\addons\auto_backup\__init__.py", line 3, in from . import models File "C:\Odoo\Odoo 13.0\server\odoo\addons\auto_backup\models\__init__.py", line 3, in from . import db_backup File "C:\Odoo\Odoo 13.0\server\odoo\addons\auto_backup\models\db_backup.py", line 21, in 'This module needs paramiko to automatically write backups to the FTP through SFTP. ' ImportError: This module needs paramiko to automatically write backups to the FTP through SFTP. Please install paramiko on your system. (sudo pip3 install paramiko)
If you need to install this module in windows 10
I followed you instructions to install on odoo 13 / windows 10 but it didnt work, i still get error "ImportError: This module needs paramiko to automatically write backups to the FTP through SFTP. Please install paramiko on your system. (sudo pip3 install paramiko)" , i already installed "paramiko" on the system.
have issue
When trying to open configuration window v12: ValueError: Field `sftp_host` does not exist Error context: View `db.backup.tree` [view_id: 1401, xml_id: auto_backup.view_backup_config_tree, model: db.backup, parent_id: n/a]
I tried hard to install the module but i wasn't successful
Hi all, i tried without success to install the module. I work on windows local host, i did exactly as Ruben Dario described. I installed: pysftp, cryptography and paramiko but i still get the error: ModuleNotFoundError: No module named 'paramiko' Could it be that this causes the problem: "defaulting to user installation because normal site-packages are not writable" If yes, does anyone know how to solve this? Thanks Tom
If you need to install this module in windows 10
If you need to install this module in windows 10 for Odoo 13 follow these steps: 1. Add the path Odoo13.0 / python and Odoo13 / python / scripts to the Windows 10 PATH environment tags. 2.Verify writing in cmd python 3. download the file get-pip.py from the page https://bootstrap.pypa.io/get-pip.py and save it to disk C 4. In cmd, execute the following two lines cd C: \ python get-pip.py 5. then run python -m pip install pysftp 6. install the auto-backup module as modules are normally installed. Remember to restart the Odoo-server and PostgreSQL_For_Odoo services once you have installed the module so that it works correctly
Odoo Server Error
Traceback (most recent call last): File "C:\Program Files (x86)\Odoo 13.0\server\odoo\addons\auto_backup\models\db_backup.py", line 23, in import paramiko ModuleNotFoundError: No module named 'paramiko'
Amazing plugin, but getting error on SFTP
Hello, this is a amazing plugin, but I am getting this error after trying to do on SFTP can you help me what's the meaning? Thanks Connection Test Failed! Here is what we got instead: Raw
Do I have to install other modules first?
import paramiko ModuleNotFoundError: No module named 'paramiko' ----But I tried searching for "paramiko", but I didn't find in odooapp that it is suitable for version 13
Trouble in use the module 2
Sorry.. sure I downloaded the v.12 module.. I wrote here in v.13 was a my mistake.. Sorry again
Trouble in use the module
Hi sir.. I tried to install more times this module on my virtual box with Ubuntu 18.04 and Odoo 12.0-20190813. I setup the backups and activate the Scheduled action or tried to run manuallly.. but unluckly any file .zip is create. In odoo log any error and any other message from this action. Any suggest for sort out this problem? Please help!!! Thank you Carlo