Ubuntu server on a home network with Apache; PostgreSQL; LedgerSMB -- newbie 
Step by Step

The objective is to use an old unused computer as the business computer which 
will hold the accounting database. LedgerSMB along with PostgreSQL will allow 
more than one user the access to the accounting software from anywhere on the 
network.

Although computer literate, I don't make a living at it... so by the time I 
learned anything it's obsolete. Command prompts were something I used a long 
time ago under MS-DOS. Linux is new to me, so the following steps are what made 
it work on my system. There may be better and easier ways to achieve the same, 
so if you can help improve this process, please do so. If someone somewhere can 
use this to setup their own configuration, then the 5 or 6 days of banging my 
head against the monitor and the few swear words will have more value.
Good Luck

Farmer Dave, a Linux newbie
:-)

-------------------------------------------------------------------------
Ubuntu Server
------------------------------------------------------------------------- 
Download and burn on CD Ubuntu's server edition; in this case version 6.10
Make sure the computer is properly hooked up to the router.
Start your computer and configure your Bios to boot on the CD-ROM
If it will not boot using CD-ROM... use Smart Boot Manager. See 
https://help.ubuntu.com/community/SmartBootManagerHowto 
in my case it would still not boot, so I replaced the CD-ROM with the same one 
I used to burn the CD.

Ubuntu's menu will appear; Select Install to the hard disk
I get an error " [42949372.960000] ACPI:Unable to locate RSDP " and ignore it.
Since I only have 64MB of memory, the install will enter a low memory mode.
Answer to prompts.

At the 'Partition disks' menu, I choose to erase entire disk
At the 'Ubuntu software selection' I choose DNS server. 

If new to Linux, check out "An introduction to the Linux command line" at 
http://www.tuxfiles.org/linuxhelp/cli.html 
To get an idea of what the directories are for, check out "Linux's directory 
structure" at http://www.tuxfiles.org/linuxhelp/linuxdir.html 

-------------------------------------------------------------------------
Apache
------------------------------------------------------------------------- 
Install Apache

        $ sudo apt-get update
        $ sudo apt-get install apache2
I get the response " could not determine the server's fully qualified domain 
name, using 127.0.1.1 for ServerName "

If I enter http://192.168.0.102/ in my favorite browser on any other computer 
on the network, I will reach the apache2-default directory. Try replacing 102 
with 102, 103, 104, etc if no connection is established.

-------------------------------------------------------------------------
Various utilities
-------------------------------------------------------------------------
Install C-compiler and other libraries

        $ apt-get install build-essential
        $ sudo ln -s /usr/bin/gcc-4.1 /bin/gcc
        $ sudo apt-get install libreadline5-dev
        $ sudo apt-get install zlib1g-dev

-------------------------------------------------------------------------
PostgreSQL
-------------------------------------------------------------------------
Install PostgreSQL. Here I'm using version 8.1.5; change accordingly for newer 
version and/or another mirror.

        $ sudo mkdir /usr/temp
        $ cd /usr/temp
        $ sudo wget 
ftp://ftp.postgresql.org/pub/source/v8.1.5/postgresql-8.1.5.tar.gz  
        $ sudo gunzip postgresql-8.1.5.tar.gz
        $ cd /usr/src
        $ sudo tar xf /usr/temp/postgresql-8.1.5.tar

        $ cd postgresql-8.1.5
        $ sudo ./configure

        $ sudo make
        $ sudo make install-strip
        $ sudo make clean
        $ sudo /sbin/ldconfig /usr/local/pgsql/lib
        $ PATH=/usr/local/pgsql/bin:$PATH
        $ export PATH
        $ MANPATH=/usr/local/pgsql/man:$MANPATH
        $ export MANPATH

create os user & initialize db cluster
        $ adduser postgres
enter a password of your liking << postgrespassword >>

        $ sudo su
        $ mkdir /usr/local/pgsql/data
        $ chown postgres /usr/local/pgsql/data
        $ su postgres
        $ /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
        $ exit
        $ exit

set-up an auto-start at login script
        $ sudo cp /usr/src/postgresql-8.1.5/contrib/start-scripts/linux 
/etc/init.d/postgresql.sh
        $ sudo chmod 755 postresql.sh
        $ sudo update-rc.d postgresql.sh defaults
        $ exit

reboot computer

        $ sudo -u postgres /usr/local/pgsql/bin/createdb testdb

if postgresql install was succesful, you should have a response "CREATE 
DATABASE"

        $ sudo -u postgres /usr/local/pgsql/bin/dropdb testdb

to delete the database

-------------------------------------------------------------------------
CPAN
-------------------------------------------------------------------------
Install CPAN

        $ sudo perl -MCPAN -e shell

if it's the first ime CPAN is used, an initial configuration questionnaire is 
launched. Otherwise enter the following if you wish to redo the questionnaire. 

        cpan> o conf init

The default answer is probably appropriate most times.
Since I want to save space, I won't be keeping the source files.
Parameters for the 'make' command? --> "CC=gcc"
Parameters for the 'make install' command? --> "CC=gcc"

type q to exit the shell
when I ran the shell again... sudo perl -MCPAN -e shell  ... I was asked again 
to do the inititial confiuration again! which I redid.

        cpan> install HTML::LinkExtor
        cpan> q

-------------------------------------------------------------------------
LedgerSMB
-------------------------------------------------------------------------
Install Ledger SMB. Here I'm using version 1.1.1d; change accordingly for newer 
version and/or another mirror.

        $ cd /usr/temp
        $ sudo wget 
http://superb-east.dl.sourceforge.net/sourceforge/ledger-smb/ledger-smb-1.1.1d.tar.gz
 
        $ sudo gunzip ledger-smb-1.1.1d.tar.gz
        $ cd /usr/src
        $ sudo tar xf /usr/temp/ledger-smb-1.1.1d.tar
        $ cd ledger-smb

        $ sudo perl -w setup.pl

it will try to install DBI and DBD::Pg package if not already done

Create a regular Postgres user. Carefull with the case of the parameters when 
typing the commands... "-d" is not the same as "-D".

        $ sudo -u postgres /usr/local/pgsql/bin/createuser -S -d -R -P 
ledger-smb

Enter password for new "ledger-smb" role just created:  << PostgresRolePassword 
>>

Configure Apache to serve LedgerSMB

        $ cd /etc/apache2
        $ sudo cp /usr/src/ledger-smb/ledger-smb-httpd.conf ledger-smb.conf
        $ sudo nano ledger-smb.conf

modify the paths at 3 places...

        Alias /ledger-smb "/usr/src/ledger-smb/"
        <Directory "/usr/src/ledger-smb">
          AllowOveride All
          AddHandler cgi-script .pl
          Options ExecCGI Includes FollowSymLinks
          Order Allow,Deny
          Allow from all
        </Directory>
        
        <Directory "/usr/src/ledger-smb/users">
          Order Deny,Allow
          Deny from All
        </Directory>

save & exit

        $ sudo nano apache2.conf

add the following lines somewhere in the text...

        # Ledger-SMB
        Include /etc/apache2/ledger-smb.conf

save & exit

reboot computer

        $ cd /usr/src/ledger-smb
        $ sudo chown -hR www-data:www-data users templates css spool     

-------------------------------------------------------------------------
 Set-up a database and tables 
-------------------------------------------------------------------------
Load your web browser and connect to
http://192.168.0.102/ledger-smb/admin.pl

This is your first time logging into LedgerSMB. Please set your administrative 
password
 
 Select the "Database Administration" link,
 enter the user you created in the previous step.

Host    
Port    
User    ledger-smb
Password    PostgresRolePassword
Connect to
Superuser
Password
 
Click on create Dataset



Create users and passwords to work in the created dataset.

Connect your web browser to http://192.168.0.102/ledger-smb/login.pl to start 
the application

if you get "You have chosen to open login.pl.... open with or save to disk" 
dialog... clear the browser cache




Your system now has user structure that looks like the following.


system        user                                         password
-------     ----------------------    --------------
Linux           root                                         encrypted
Linux           ubuntu *                                 ubuntuPassword *
Linux           postgres *                              postgrespassword *
Postgresql   postgres * (superuser) 
Postgresql   ledger-smb *                         PostgresRolePassword *
Ledger  SMB  admin *                                  adminPasword * 
LedgerSMB   ledgerUser1 *                        ledgerUser1Password *
LedgerSMB   ledgerUser2 *                        ledgerUser2Password *

* or whatever names you choosed



-- 
Low Prices, Wide Selection of Gas Masks
Everyday low price guarantee. We offer special police discounts and an 
extremely wide selection of gas masks, filters and huge selection of 
preparedness gear.
http://a8-asy.a8ww.net/a8-ads/adftrclick?redirectid=24e08df2353d2e6cb9bae3a0e3c8c61e


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Ledger-smb-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ledger-smb-users

Reply via email to