My frustration with the follow up link was the constant reference to the path beginning with the ~ symbol. I built the debian server from scratch locally with nothing in it except SSH server and a single user (jmi). I let the install script do EVERYTHING else and the system came up working. I could find it on the network and log in as administrator. I even setup all of the things it needed before I start the data imports. When I thought to do a backup before the imports, I could not find the installed files.
It is just that I cannot find the path to anything else that I need on the server as it is not in the jmi home folder, not in the root home folder and it is not in the root / location either. So where did it go?
There are several references to setting up the automated backup through some setup function. The problem is that even the link you pointed me toward did not say how to find this setup function. It only tells you how to redirect your automated backups to a Dropbox account.
My problem is that I cannot find anywhere how to actually setup the automated backup service.
@joEz said [quote=“JoEz, post:6, topic:22928”]
You can setup backups on System Settings in Setup
[/quote]
It appears the only thing related to backups in the System Settings is the ability to download then once they have already been run, or the ability to set the number of them the system will hold (default is 3).
There is nothing there about setting up times or frequency. There is nothing there to start a backup. There is nothing there to turn on the automatic backups.
The only thing you can do from there is download a copy of an existing backup file. Here is a screenshot of the only reference to backup in the settings:
bench backup or bench backup --site [SITE-NAME] or bench backup-all-sites
B. Via Crontab to automate the process since the existing method does use Crontab and you can simply modify to your requirements.
To Download the backup you can do it via the Frontend as you have posted above or you can download via FTP @ ~/frappe-bench/sites/site1.local/private/backups/
frappe-bench is a folder so could you just do an ls -d from /home/jmi to check for directories rather than everything? Or more specifically, just do a cd frappe-bench (from /home/jmi) and post the error message here
Thanks krnkris. Ubuntu is a Debian derivative. So you would likely have the same problem if you did it in your system. I don’t use Ubuntu because it is so bloated with graphical user interfaces stuff that it slows everything down. So, Debian with only a bash prompt is my preferred server. CentOS will be my cloud server later and it would have happened in that OS as well.
To that end, I think I figured out what happened. The install.py script evidently wants you to use it with a “–user frappe” switch. I did not do this and simply ran it with the --production switch. When the install script did not see that I was also going to create a user named frappe, it decided to create the folder in the /home directory for what would have been a frappe user. However, it did not actually create the user. /home was the past place I thought to look in my search for the /frappe-bench/ location and I found the beginning of that in /home/frappe/ even though there is no frappe user in the Debian server. Regardless, at least now I have a starting point.
This is probably something the developers should look into. It is not generally a good practice to put a named directory in the /home directory unless there is going to be a user to go along with it.
@saidsl Thank you. That has been the most complete and to the point answer to the question. The forums have many details about a Backup function that used to exist in the System Settings. This evidently went away several versions ago and everyone still refers to posts as if they were still valid. Now that I can locate the proper path to the commands and the saved backup files, I will go ahead and build my own set of crontabs to automate the backup process.
@wale Yes, I know it was a dierctory, I just did not know where it was until a few minutes ago. Please see the above reply to krnkris. The install.py script does not put things where you might expect and this makes everyone’s assumptions about where to find the directory tree , well, uhm, incorrect.
There are a lot of users doing ERPNext with the VM edition on local networks. I don’t understand the draw of that sort of platform. I guess maybe it is a little faster to deploy.
Ultimately I have to deploy on a cloud server and I think there will be many modifications along the way. I know I already have a dev team working on how to add a module to do the printing of barcode labels, so operating under a VM image is a bit to constrained for me.
In order to get everything as close as possible to the live cloud version I installed everything on a local Linux box just as it would be on the cloud server. I could probably do a VM implementation on a cloud server as well, but then I would have to pay for a full compliment of RAM on the server box to keep everything running. At least by doing a classical install, the OS can better manage the memory and it cost a little less each month for me to keep it running.
It appears the only thing related to backups in the System Settings is the ability to download then once they have already been run, or the ability to set the number of them the system will hold (default is 3).
There is nothing there about setting up times or frequency. There is nothing there to start a backup. There is nothing there to turn on the automatic backups.
The only thing you can do from there is download a copy of an existing backup file. Here is a screenshot of the only reference to backup in the settings:
A VM gets one up & running fast & easy, no need to install and config on a bare os.
As well one can clone, backup and manage multiple instances…
edit: I forgot to add - one can snapshot a VM image and revert back to it - ideal for development, trials to test instance or config changes and so on…
Thanks John. I had not even considered the useful part of cloning VM images, but that may be just the ticket for setting up multiple instances of the system to support low data volume businesses like a family owned pet shop, and such. Where a company like Apple computers may need several dedicated cloud servers to support their data needs, a small family business can get by with a lower resource implementation and would still benefit from the full feature set that can be had from a VM instance.
Not to sure I can get away from the full OS system for my current project simply because the system resources will be taxed by the load the client will put on the system. The VM test case moved very slow when attempting to process their simulated transactions. The full OS version had no lag time.
I am still glad you gave me your thoughts, because it gives me another path to help the smaller businesses that otherwise could not afford the man-hours required to setup and configure.
I see you were interested in my take on the System Settings around how to configure backups. Did you have something you wanted to add? Any help you can provide is always very welcomed.
Wouldn’t a Multi Tenant option provide a much more manageable option rather than multi VMs. when you consider that if you took the VM option you would:
do multiple installs/instances,
do multiple updates on numerous VMs,
do multiple backups
have VMs running on less than optimal hosts
manage so many different installations.
Multi Tenant installation enables you to have one setup on one or more cloud servers depending on how many customers you wish to serve. You can basically, create an optimised setup that would deliver simplicity to you customers without the need for them to do any setup and configurations.
I could probably figure out how to handle “almost” everything in a multi tenant installation. The two Items I had the most trouble with were very important to my customers.
In my test of multi tenant, I could not have the same user id (email address) in two different tenants. This would cause a real problem for the tenant businesses. In one case, multiple clients (3 of them) own commercial kitchens and lease kitchen time to their users. Their users are aspiring chefs trying to make their name in the local foodie culture. These young chefs are independents and keep only one private email address as their identity, but they are users in multiple local kitchens. When I tested this, I could not figure out how to get ERPNext to allow the same email address to be a user in two different tenant businesses.
In my business I have always delivered a daily backup file to each business for them to keep on their local PC. This is because some businesses are seasonal. They want to keep their backup data local so if they need to shut down for an extended period of time and return next year, they can supply their old backup, pay a fee to have it restored and updated, and be back in business again. The problem I ran into with ERPNext multi tenant was that all tenants were bundled into a single backup. I could not figure out how to separate out each business. The contract we use to sign up businesses states that if they shut down for a period of more than 30 days, we delete all data on our servers and they have to maintain their own backup data.
There were several other issues I ran into with multi tenant related to product codes across different businesses, purchase order number schemes, and the maintenance module. I just didn’t have the time or information required to sort them out. Since the documentation for ERPNext is so sparse, most of my time is dedicated to figuring out how to get everything working clean in single server installations. That task is hard enough with constant testing different paths through the system when my clients report trouble.
So, if I had to try to support very small businesses (like the commercial kitchens), I have been keeping them as separate installs. I know that is not optimal, but at least it minimizes my troubleshooting time.
You are right, I read multi tenant and multi company and thought they were the same thing. I set up multi company as my test bed. The one thing I thought I learned early in my ERPNext experience was that different words cannot be considered the same in the this system and I clearly missed that point on my early testing.
Having worked with several different ERP systems in the past, nomenclature gets cross wired in my head sometimes. Whether I am working on SAP, InFlow, ERPNext, or some other system they all use different process names for the same functions. A quick read of the two terms just made me laugh at myself. So I think what they mean now is as follows:
Multi Company is when a single entity runs several companies from the same ERP system. Like a family owing a tailor shop, a dry cleaner service, and a laundromat but keeping the data together in one system.
Multi Tenant (the service I actually wanted) is using a single ERPNext installation and allowing multiple different businesses to use the same resources while keeping their data and business functions isolated from each other. Each “tenant” then only sees their work and do not know they are sharing a server with other low volume tenants.
Is that correct? If so, then I really confused myself at the beginning when I started testing.