Manual installation

Please, check first if your system meets all requirements.

If you experience problems (e.g. not enough memory) in compiling isdnserver through the normal procedure, try the following:

1. 'cd' into the isdnserver directory where the sources of isdnserver are located after you have unpacked the tarball.

2. Type in a console the following command:

g++ -o isdnserver *.cpp

3. After the successfull compilation, copy the resulting isdnserver binary to /usr/local/bin/, the "isdnserver.conf" file to /etc/ and the isdnserverdaemon start script to /etc/rc.d/init.d/. Now you can proceed with the linking of the start script.

Step by step

Let's assume the name of the package is:


and that you have downloaded the package to the following directory:

/home/user/ (the user directory is usually your home directory and is named according to your login name)

Make sure that you're in the /home/user/ directory, if not type, in the console:

cd /home/user/ (don't forget to press enter after the commands)

Now you unpack isdnserver-3.1.0.tar.gz withe the command:

tar xzvf isdnserver-3.1.0.tar.gz

A new directory should have been created, please type:


The listing of the directory /home/user/ should appear, all directories will end with a slash '/'. Look for a new created directory named isdnserver-3.1.0/. After you've found it, change into it with:

cd isdnserver-3.1.0/ (the absolute path is now /home/user/isdnserver-3.1.0/)

Do another ls.

ls (it will list the files and directories)

Look for a directory named isdnserver/ and cd into it.

cd isdnserver/ (the absolute path is now /home/user/isdnserver-3.1.0/isdnserver/)


Now you are ready to compile the whole thing "by hand", type the following into your console:

g++ -o isdnserver *.cpp

After some time and output, if everything went right, you can proceed with the copying of the files. The compiler has created a binary named isdnserver, which is located in the directory "you" are in (/home/user/isdnserver-3.1.0/isdnserver/).


For copying the files to the appropiate directories you have to switch to the "super user" or "root" mode.


The console will prompt you for the "root" password after you entered the su command, if you don't know it, contact your administrator.

enter the "super user/root" password

After successfully entering the "super user/root" mode the, copying can begin.

cp ./isdnserver /usr/local/bin/ (this copies the isdnserver binary to the /usr/local/bin/ directory)

cp ./isdnserverdaemon /etc/rc.d/init.d/ (the isdnserver start/stop script is copied to /etc/rc.d/init.d/, this is usually the standard directory, but check if this matches your distribution's standards)

cp ./isdnserver.config /etc/ (copy the configuration file to /etc/)


In order let linux start isdnserver automatically, you have to create symbolic links to the different initialization state directories, your distribution will usually boot with "init 5" if you get a window manager and to "4" if you boot into a text-console.

cd /etc/rc.d/ (We change to the "top level" initalization directory)

Now, please list the files in /etc/rc.d/

ls (You are now in /etc/rc.d/ so there's no need to add a path)

Something like the following output will appear on your console:

init.d/ rc* rc0.d/ rc1.d/ rc2.d/ rc3.d/ rc4.d/ rc5.d/ rc6.d/ rc.local* rc.modules* rc.sysinit*

The directories labelled as rc#.d are the different init directories, if you change to, let's say rc0.d and list the files inside you should see filenames with the '@' symbol attached at their ends. The '@' symbol tells us that those files are links, or pointers if you prefer, to other, real, files.

cd rc0.d


The output will be something similar to:

K00linuxconf@ K10xfs@ K20partmon@ K45named@ K60saslauthd@ K87slpd@ K95harddrake@ K05keytable@ K15httpd@ K20rwhod@ K50xinetd@ K69sound@ K88syslog@ K99switchprofile@ K09dm@ K15numlock@ K30postfix@ K60atd@ K70alsa@ K89internet@ S00single@ K09smb@ K15postgresql@ K35dhcpd@ K60crond@ K74apmd@ K90network@ K10devfsd@ K20kheader@ K44rawdevices@ K60cups@ K80random@ K92iptables@

You will notice that the links begin with a K## or S##, this indicates their starting order, the rest tells you which service it is. For expample, K60Cups@ will start the cups server, a printing server. Our script, isdenserverdaemon, that you previously copied to /etc/rc.d/init.d should start after K90network@. The name for our link should be K91isdnserverdaemon then, if we look at the example I provided. As your configuration will vary from mine, your starting number could be different than 91. Just make sure that you start it after network. Now let's proceed with the linking.

ln -s /etc/rc.d/inet.d/isdnserverdaemon K91isdnserverdaemon


Now you should see a new link named K91isdnserverdaemon. Change to the "upper" directory and then to the next rc#.d, that would be rc1.d. Do the linking, until you reach rc5.d.

cd.. (changes to the "upper" directory, in this case /etc/rc.d/)

cd rc1.d

ln -s /etc/rc.d/inet.d/isdnserverdaemon K##isdnserverdaemon (exchange ## with a number that is greater than the network's script of the init directory you're in)

Go to the next rc#.d directory and link again...

If the prefix of the network start script changes to S##, for example S10network, then change the name of your link as well, in this case S11isdnserverdaemon.

That's it, now you can begin with the configuration of isdnserver...
previous page  |  Top  |  next page

copyright 2003 Jorge Windmeisser Oliver