After I saw several people have problems with installing and managing ledgersmb, I planned to build a standalone LedgerSMB appliance.
I plan to sell these appliances worldwide to companies, which contains:
- a Mini PC,
- storage (HDD or SSD)
- LTS Operating system and additional softwares as you can read below and you can see on the youtube
- shipping can start from 6th of August , worldwide, by TNT
- pricing: under calculation
- payment: paypal
- company details: billing and shipping information, contact with email and cellular phone required
- Options: HDD (500GB) or SSD (60-240GB) - feedback would be nice (hdd - low noise, ssd - completly silent and fast)
- RFQ: info-RRrXpFqUq6wHWmgEVkV9KA@public.gmane.org or pongracz.istvan-RRrXpFqUq6wHWmgEVkV9KA@public.gmane.org
Please note: my company is a special hardware distributor and supporter since 2009. Company details can be found here: www.startit.hu
Here are the goals (requirements) and existing feature list of the system:
- Have an LTS linux distribution
- Have a Mini PC (small form, low power, passive cooling, long warranty period)
- Always get the latest changes of ledgersmb for 1.3 and 1.4 without waiting for anybody
- Regular backup from the all DBs to the localhost and to the cloud (!)
- Working out of the box
- Possibility of customizing the system by experienced users
- Can be used as standalone workstation
- For SOHO without experienced linux sysadmin
- The linux distribution is Linuxmint 17 LTS (equivalent to Ubuntu 14.04LTS)
- Always up to date LSMB 1.3 and 1.4 directly pulled from github, but upgrading the live
- is a manual process to keep your modifications safe
- Nginx + fcgiwrap for low system resources
- Postgresql 9.3
- Email sending via smarthost, Postfix (for example using Gmail)
- Already installed 1.3 test company with some test data and transactions for starting
- PDF printing is working
- Add your printer using the GUI
- Dropbox preinstalled - ready to add or create account
- Daily backup of all databases under Dropbox folder (daily, weekly, monthly, latest)
- ssh and vino-server (vnc) available
- and a lot more
- Intel Atom Z530, 1.6GHz CPU, 1GB RAM, Passive cooling
- 6-10W power consumption
- approx. 10x10x2.5 cm, VESA bracket optional
- DVI-D output over a HDMI connector
- Internal 2.5" bay for hdd or ssd
- 2 x Gigabit LAN + Wifi
- 4 x USB2
- miniSD socket, RS232 port
- 5 years hardware warranty for the computer
Youtube video of the appliance (recorded directly from the hdmi output of the appliance):
- http://youtu.be/LzBeRKBfLfE (more than 23 minutes long)
- Standard settings of the desktop
- Entering to the preinstalled and filled test company
- Important files: SystemDoc.txt, links to setup files should be modified on the desktop
- Postfix, nginx, network settings hints
- Where is the location of the the daily DB backup
- How to sync ledgersmb 1.3 and/or 1.4 from github directly and "install" to the live system (into http root)
- Hardware list (lshw-gtk)
Here I share the quick howto document about the system, which can help others to build their own solution/system, for free :)
---------------------- System Doc for Linux power users -----------------
ledgersmb : ledgersmb
postgres : ledgersmb
GUI / Xfce4
The system uses autologin to start the GUI, so, it is not necessary to login manually.
Using the Xfce, the user can setup the network, dropbox, access to the DB via pgadmin3,
can configure printer, network share etc.
Please refer to the Linuxmint Xfce control panel.
LedgerSMB repo paths
1.3 git local clone:
1.4 git local clone:
- /etc/nginx/conf.d/lsmb.conf : added:
- Details in /home/ledgersmb/Desktop/modifications-to-1.3.log
file upload limit to 40MB
cookie name changed
contrib dir changed to the actual version of postgresql
nginx + fcgiwrap
all authentication changed to md5 from peer, even on localhost
Accessing to ledgersmb
Superuser and password:
postgres : ledgersmb
Accessing to the test system:
User : test
Password : test
Company : test
Postfix installed as satellite system, using gmail as smtp relay with authentication.
Setup your account as smtp relay server:
nano -w /etc/postfix/sasl_passwd
chmod 400 /etc/postfix/sasl_passwd
DB backup happens every day (cron.daily) for all databases in Postgresql.
The backup directory is: /home/ledgersmb/Dropbox/autopostgresqlbackup
You can see the following subdirectories: daily, latest, monthly, weekly
I think the directory structure is talkative.
Please refer to the followind settings of the autopostgresqlbackup:
To be able to make automatic backup, the root has a password file here:
It contains the database server location and superuser credentials.
Please be careful about the permissions and owner of that file, it
must root:root and 600
Backups exist under the Dropbox directory, which means, if you have or create a
dropbox account, your backup will be uploaded to the cloud automatically.
To create a new dropbox account, just follow the dropbox installation
Thunar filemanager already has the dropbox plugin, installed from xubuntu-dev/extras ppa.
- GUI/Desktop method: just config the network via the Networkmanager. In this case
the Networkmanager will handle the interfaces. Comfortable.
- Settings file: as root you can add and setup your interface in /etc/network/interfaces
In this case Networkmanager will not handle that interface and you can disable the
GUI (X desktop) completly.
Update git repositories
- cd to the git directory and issue in command line: git pull
Upgrade the running ledgersmb instance
- create a backup of the live instance as root (/opt/ledgersmb)
- copy from the source to the target, except the .git directory (/home/ledgersmb/LedgerSMB/git-1.3 -> /opt/ledgersmb)
- change user and rights: chmod -R 0775 /opt/ledgersmb and chown www-data:www-data /opt/ledgersmb
- apply the modifications to the ledgersmb source, if any (for example slight css modification - lightred in test mode)
- login to the setup.pl and upgrade the DB of your instances
Change postgres user's password
You have to login to the postgresql as postgres user, using the default password (ledgersmb).
If you entered to the psql console, you can change the password as you like.
Here you can see the steps:
ledgersmb <at> ledgersmb-FITPC2i ~/LedgerSMB $ psql -U postgres -W
Password for user postgres:
Type "help" for help.
postgres=# alter user postgres with password 'ledgersmb';
What you have to do at first start:
- Change/Adjust your network settings: IP address (default is dhcp)
- Change the password of the ledgersmb user (default is ledgersmb)
- Change the password of postgres user (default is ledgersmb):
-> in Postgresql as described in the howto section
-> in the following file: /root/.pgpass to have working backup
- Create or add your existing Dropbox account and merge the existing
/home/ledgersmb/Dropbox folder to get remote backup of your daily
backup to Dropbox.
- Optionally you can adjust or disable the desktop, add network share,
setup routing etc.
Please note, the primary goal is running LedgerSMB on this unit, so,
think twice before cut :)
Known issues, limitations
- ODS export does not work, even the requested perl module installed
- the recent config (500GB, 5000rpm HDD + ext4) provides not the best performance
--- use ZFS native for the DB, for safety reason
--- use SSD instead of HDD
--- tune postgresql
--- mix them together :)
- you have to define your network address (IP address) manually
--- just change your settings using the Desktop and Networkmanager
--- or edit the config file if you do not want to start the Desktop
- at this moment it based on linuxmint 17 Xfce Desktop
--- it has advantages and disadvantages. One can turn off the desktop and unnecessary services if it wants to do.
Or one can listen to internet radio, use the system as router etc.
Handy tools in Desktop
PGAdmin3 - to access to PG in a comfortable way
Desktop sharing without password - access with remmina (vnc)
Radiotray - internet radio, you can add your station
You can use any desktop application (graphical git client for example)
Synaptic package manager