Yenthe666 / auto_backup

Automated database backups from Odoo, both locally and on an FTP server
MIT License
251 stars 281 forks source link

Permission denied"error #229

Closed CatherineAmir closed 10 months ago

CatherineAmir commented 2 years ago

permission denied error while using run manually cron function error is Odoo Server Error Traceback (most recent call last): File "/odoo/odoo-server/odoo/addons/base/models/ir_http.py", line 237, in _dispatch result = request.dispatch() File "/odoo/odoo-server/odoo/http.py", line 683, in dispatch result = self._call_function(self.params) File "/odoo/odoo-server/odoo/http.py", line 359, in _call_function return checked_call(self.db, *args, *kwargs) File "/odoo/odoo-server/odoo/service/model.py", line 94, in wrapper return f(dbname, args, kwargs) File "/odoo/odoo-server/odoo/http.py", line 347, in checked_call result = self.endpoint(*a, kw) File "/odoo/odoo-server/odoo/http.py", line 912, in call return self.method(*args, *kw) File "/odoo/odoo-server/odoo/http.py", line 531, in response_wrap response = f(args, kw) File "/odoo/odoo-server/addons/web/controllers/main.py", line 1393, in call_button action = self._call_kw(model, method, args, kwargs) File "/odoo/odoo-server/addons/web/controllers/main.py", line 1381, in _call_kw return call_kw(request.env[model], method, args, kwargs) File "/odoo/odoo-server/odoo/api.py", line 396, in call_kw result = _call_kw_multi(method, model, args, kwargs) File "/odoo/odoo-server/odoo/api.py", line 383, in _call_kw_multi result = method(recs, *args, **kwargs) File "/odoo/odoo-server/odoo/addons/base/models/ir_cron.py", line 83, in method_direct_trigger cron.with_user(cron.user_id).with_context(lastcall=cron.lastcall).ir_actions_server_id.run() File "/odoo/odoo-server/odoo/addons/base/models/ir_actions.py", line 632, in run res = runner(run_self, eval_context=eval_context) File "/odoo/odoo-server/addons/website/models/ir_actions.py", line 61, in _run_action_code_multi res = super(ServerAction, self)._run_action_code_multi(eval_context) File "/odoo/odoo-server/odoo/addons/base/models/ir_actions.py", line 501, in _run_action_code_multi safe_eval(self.code.strip(), eval_context, mode="exec", nocopy=True) # nocopy allows to return 'action' File "/odoo/odoo-server/odoo/tools/safe_eval.py", line 346, in safe_eval raise ValueError('%s: "%s" while evaluating\n%r' % (ustr(type(e)), ustr(e), expr)) Exception

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "/odoo/odoo-server/odoo/http.py", line 639, in _handle_exception return super(JsonRequest, self)._handle_exception(exception) File "/odoo/odoo-server/odoo/http.py", line 315, in _handle_exception raise exception.with_traceback(None) from new_cause ValueError: <class 'PermissionError'>: "13 Permission denied" while evaluating 'model.schedule_backup()'

note using SFTP on digital-ocean hosting and testing connection runs successfully

mamunzihad commented 1 year ago

I found when I am checking test connection.. Why this warning shows

Traceback (most recent call last): File "/odoo/odoo-server/odoo/addons/base/models/ir_http.py", line 237, in _dispatch result = request.dispatch() File "/odoo/odoo-server/odoo/http.py", line 698, in dispatch result = self._call_function(self.params) File "/odoo/odoo-server/odoo/http.py", line 368, in _call_function return checked_call(self.db, *args, *kwargs) File "/odoo/odoo-server/odoo/service/model.py", line 94, in wrapper return f(dbname, args, kwargs) File "/odoo/odoo-server/odoo/http.py", line 357, in checked_call result = self.endpoint(*a, kw) File "/odoo/odoo-server/odoo/http.py", line 921, in call return self.method(*args, *kw) File "/odoo/odoo-server/odoo/http.py", line 546, in response_wrap response = f(args, kw) File "/odoo/odoo-server/addons/web/controllers/main.py", line 1328, in call_button action = self._call_kw(model, method, args, kwargs) File "/odoo/odoo-server/addons/web/controllers/main.py", line 1316, in _call_kw return call_kw(request.env[model], method, args, kwargs) File "/odoo/odoo-server/odoo/api.py", line 464, in call_kw result = _call_kw_multi(method, model, args, kwargs) File "/odoo/odoo-server/odoo/api.py", line 451, in _call_kw_multi result = method(recs, *args, **kwargs) File "/odoo/custom/server/auto_backup/models/db_backup.py", line 114, in test_sftp_connection raise Warning(message_title + '\n\n' + message_content) Exception

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "/odoo/odoo-server/odoo/http.py", line 654, in _handle_exception return super(JsonRequest, self)._handle_exception(exception) File "/odoo/odoo-server/odoo/http.py", line 301, in _handle_exception raise exception.with_traceback(None) from new_cause odoo.exceptions.Warning: Connection Test Succeeded! Everything seems properly set up for FTP back-ups!

mamunzihad commented 1 year ago

When run backup scheduler, I found this error..

Traceback (most recent call last): File "/odoo/odoo-server/odoo/tools/safe_eval.py", line 332, in safe_eval return unsafe_eval(c, globals_dict, locals_dict) File "", line 1, in File "/odoo/custom/server/auto_backup/models/db_backup.py", line 123, in schedule_backup os.makedirs(rec.folder) File "/usr/lib/python3.8/os.py", line 213, in makedirs makedirs(head, exist_ok=exist_ok) File "/usr/lib/python3.8/os.py", line 223, in makedirs mkdir(name, mode) PermissionError: [Errno 13] Permission denied: '/home/dataserver'

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "/odoo/odoo-server/odoo/addons/base/models/ir_http.py", line 237, in _dispatch result = request.dispatch() File "/odoo/odoo-server/odoo/http.py", line 698, in dispatch result = self._call_function(self.params) File "/odoo/odoo-server/odoo/http.py", line 368, in _call_function return checked_call(self.db, *args, *kwargs) File "/odoo/odoo-server/odoo/service/model.py", line 94, in wrapper return f(dbname, args, kwargs) File "/odoo/odoo-server/odoo/http.py", line 357, in checked_call result = self.endpoint(*a, kw) File "/odoo/odoo-server/odoo/http.py", line 921, in call return self.method(*args, *kw) File "/odoo/odoo-server/odoo/http.py", line 546, in response_wrap response = f(args, kw) File "/odoo/odoo-server/addons/web/controllers/main.py", line 1328, in call_button action = self._call_kw(model, method, args, kwargs) File "/odoo/odoo-server/addons/web/controllers/main.py", line 1316, in _call_kw return call_kw(request.env[model], method, args, kwargs) File "/odoo/odoo-server/odoo/api.py", line 464, in call_kw result = _call_kw_multi(method, model, args, kwargs) File "/odoo/odoo-server/odoo/api.py", line 451, in _call_kw_multi result = method(recs, *args, **kwargs) File "/odoo/odoo-server/odoo/addons/base/models/ir_cron.py", line 85, in method_direct_trigger cron.with_user(cron.user_id).with_context(lastcall=cron.lastcall).ir_actions_server_id.run() File "/odoo/odoo-server/odoo/addons/base/models/ir_actions.py", line 643, in run res = runner(run_self, eval_context=eval_context) File "/odoo/odoo-server/odoo/addons/base/models/ir_actions.py", line 512, in _run_action_code_multi safe_eval(self.code.strip(), eval_context, mode="exec", nocopy=True) # nocopy allows to return 'action' File "/odoo/odoo-server/odoo/tools/safe_eval.py", line 348, in safe_eval raise ValueError('%s: "%s" while evaluating\n%r' % (ustr(type(e)), ustr(e), expr)) Exception

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "/odoo/odoo-server/odoo/http.py", line 654, in _handle_exception return super(JsonRequest, self)._handle_exception(exception) File "/odoo/odoo-server/odoo/http.py", line 301, in _handle_exception raise exception.with_traceback(None) from new_cause ValueError: <class 'PermissionError'>: "13 Permission denied" while evaluating 'model.schedule_backup()'

Yenthe666 commented 10 months ago

This means the rights of the user where you want to write the backup with are not correct on the folder Odoo tries to backup too :)