]> arthur.barton.de Git - netatalk.git/blob - doc/INSTALL
9fedbbd202bfac12731b65e3007e96890c499a7b
[netatalk.git] / doc / INSTALL
1 Basic Installation
2 ==================
3
4 Netatalk is known to run on at least five operating systems:
5
6         OS      Versions        Hardware        Notes
7         --      --------        --------        -----
8         Solaris 2.5-8           Sparc
9         Linux   1.3.x,2.x       PC
10         FreeBSD 2.2-current     PC              after 12 Sept 96
11         NetBSD  1.3             PC
12         OpenBSD 2.2             PC
13         SunOS   4.1+            Sparc           kernel must have VDDRV
14                                                 option installed
15         Ultrix  4.[1-4]         3100,5000
16         Tru64   4.0             Alpha           afpd only
17
18 See ./doc/README.platforms for more information.
19
20 Quickly:
21 $> ./autogen.sh
22 $> ./configure [options]
23 $> make
24 $> make install
25
26
27 ----------------------------------------------------------------
28 0. Get the source
29
30 A. Download a binary. Several Linux distributions support netatalk
31 with a package. There are also Deb's and RPM packages available on the
32 the Netatalk Sourceforge
33 site. (http://sourceforge.net/projects/netatalk/)
34
35 B. Download the tarball. There are tar.gz and tar.bz2 files available
36 for download and compiling.
37 (http://sourceforge.net/projects/netatalk/)
38
39 C. Anonymous CVS. Downloading of the CVS source can be done quickly
40 and easily.
41
42 1. make sure you have cvs installed. 
43 $> which cvs 
44 should produce a path to cvs.
45
46 2. if you don't have one make a source directory. Mine is
47 ~lance/src/working/ cd to this directory.
48
49 3. Authenticate yourself with your local cvs and the remote cvs: (all
50 one line)
51
52 cvs \
53 -d:pserver:anonymous@cvs.netatalk.sourceforge.net:/cvsroot/netatalk \
54 login
55
56 Just hit enter for the password for the anonymous user.
57
58 4. Now that both machines know who you are, get the source: (all one
59 line)
60
61 cvs -z3 \
62 -d:pserver:anonymous@cvs.netatalk.sourceforge.net:/cvsroot/netatalk \
63 co netatalk
64
65 This tells cvs what compression, (-z3) what protocol, repository and
66 where the source is (-d:protocol:host:path) what to do (co is an alias
67 for checkout) and what (netatalk) module.
68
69 This will create a netatalk directory and download a complete and
70 fresh copy of the netatalk source
71
72
73 ----------------------------------------------------------------
74
75 1. ./autogen.sh (Not necessary for a release tarball.)
76 This shell script runs libtoolize, aclocal, autoheader, automake and
77 autoconf. This sets up all the conditions for the next step. You may
78 or may not have to do this. If you downloaded a release tarball, or if
79 your download contains a ./configure file then this has already been
80 run for you.
81
82 ----------------------------------------------------------------
83
84 2. ./configure 
85 This step reads the options to the ./configure program and checks your
86 system against the requirements of those options. It generally fails
87 if your system doesn't meet the requirements. You should read check
88 the DEVELOPER file because some of these options require external
89 sources to function correctly. (PAM, SSL, Berkeley DB3, TCP Wrappers,
90 etc).
91
92 Netatalk options to the ./configure script: Use ./configure --help for
93 a complete list.
94
95 --disable-admin-group: disable admin group (default on),
96
97 --disable-ddp: disable DDP support (AppleTalk),
98
99 --enable-debug: enable debugging messages in syslog,
100
101 --enable-dropkludge: enable the experimental dropbox fix
102         (INSECURE!),
103
104 --enable-cnid-db: use persistent cnid database per volume 
105         (EXPERIMENTAL),
106
107 --with-db3=PATH: specify path to Berkeley DB3 installation,
108
109 --with-did=[scheme]: set DID scheme (last,mtab),
110
111 --with-msg-dir=path: path to message files [default=/etc/msg],
112
113 --enable-srvloc: Turn on Server Location Protocol support (EXPERIMENTAL),
114
115 --with-pam: enable pluggable authentication modules support,
116         PAM provides a flexible mechanism for authenticating
117         users. PAM was invented by SUN Microsystems.
118
119         Linux-PAM is a suite of shared libraries that enable the local
120         system administrator to choose how applications authenticate users.
121         You can get the Linux PAM documentation and sources from
122         http://www.kernel.org/pub/linux/libs/pam/
123
124 --with-shadow: enable shadow password support,
125
126 --disable-shell-check: disable checking for a valid shell,
127
128 --with-flock-locks: enable flock locks support,
129
130 --with-tcp-wrappers: enable TCP wrappers support.
131         Wietse Venema's network logger, also known as TCPD or
132         LOG_TCP. These programs log the client host name of incoming
133         telnet, ftp, rsh, rlogin, finger etc. requests. Security
134         options are: access control per host, domain and/or service;
135         detection of host name spoofing or host address spoofing;
136         booby traps to implement an early-warning system.  TCP
137         Wrappers can be gotten at
138         ftp://ftp.porcupine.org/pub/security/
139
140 --with-ssl-dirs=[PATH]: specify path to OpenSSL installation. 
141         NOTE: This is dependent on the same directory layout as the
142         source distribution of Openssl. That is: ./include/ and
143         ./lib/ to be on the same level. Many .rpm formats do not
144         have their files laid out in this format.
145         The OpenSSL Project is a collaborative effort to develop a
146         robust, commercial-grade, full-featured, and Open Source
147         toolkit implementing the Secure Sockets Layer (SSL v2/v3)
148         and Transport Layer Security (TLS v1) protocols as well as a
149         full-strength general purpose cryptography library.
150         This is required to enable DHX login support.
151         Get everything at http://www.openssl.org/ 
152
153 --with-lastdid: Recreate version 37b behaviour where
154         directory id's are incrementally calculated versus the new
155         hash method. Unfortunately for machines that have a lot of
156         devices, and/or a lot of inodes the hash can fail with
157         multiple directories resolving to the same DID.
158
159 --with-uams-path=path: path to UAMs [default=PKGCONF/uams]
160
161 --enable-fhs: use Filesystem Hierarchy Standard (FHS) compatibility
162
163 --with-ssl-dir=PATH: specify path to openssl installation (must contain
164         lib and include dirs) 
165
166 --enable-pgp-uam: enable build of PGP UAM module
167
168 --enable-krb4-uam: enable build of Kerberos v4 UAM module
169
170 --enable-overwrite: Overwrite configuration files in PKGCONFDIR
171
172 ----------------------------------------------------------------
173
174 3. ./make
175
176 Compile all of the programs
177
178 ----------------------------------------------------------------
179
180 4. ./make install
181 Install the programs in the places specified by the ./configure process.