1%%
2%%
3
4\chapter{Platform Support}
5\label{_PlatformChapter}
6\index{Support!Platform}
7\index{Platform Support}
8\addcontentsline{toc}{section}{Platform Support}
9
10\section{General}
11\index{General }
12\addcontentsline{toc}{subsection}{General}
13
14This chapter describes the requirements for having a
15supported platform (Operating System).  In general, Bacula is
16quite portable. It supports 32 and 64 bit architectures as well
17as bigendian and littleendian machines. For full
18support, the platform (Operating System) must implement POSIX Unix
19system calls.  However, for File daemon support only, a small
20compatibility library can be written to support almost any
21architecture.
22
23Currently Linux, FreeBSD, and Solaris are fully supported
24platforms, which means that the code has been tested on those
25machines and passes a full set of regression tests.
26
27In addition, the Windows File daemon is supported on most versions
28of Windows, and finally, there are a number of other platforms
29where the File daemon (client) is known to run: NetBSD, OpenBSD,
30Mac OSX, SGI, ...
31
32\section{Requirements to become a Supported Platform}
33\index{Requirements!Platform}
34\index{Platform Requirements}
35\addcontentsline{toc}{subsection}{Platform Requirements}
36
37As mentioned above, in order to become a fully supported platform, it
38must support POSIX Unix system calls.  In addition, the following
39requirements must be met:
40
41\begin{itemize}
42\item The principal developer (currently Kern) must have
43   non-root ssh access to a test machine running the platform.
44\item The ideal requirements and minimum requirements
45   for this machine are given below.
46\item There must be a defined platform champion who is normally
47   a system administrator for the machine that is available. This
48   person need not be a developer/programmer but must be familiar
49   with system administration of the platform.
50\item There must be at least one person designated who will
51   run regression tests prior to each release.  Releases occur
52   approximately once every 6 months, but can be more frequent.
53   It takes at most a day's effort to setup the regression scripts
54   in the beginning, and after that, they can either be run daily
55   or on demand before a release. Running the regression scripts
56   involves only one or two command line commands and is fully
57   automated.
58\item Ideally there are one or more persons who will package
59   each Bacula release.
60\item Ideally there are one or more developers who can respond to
61   and fix platform specific bugs.
62\end{itemize}
63
64Ideal requirements for a test machine:
65\begin{itemize}
66\item The principal developer will have non-root ssh access to
67  the test machine at all times.
68\item The pricipal developer will have a root password.
69\item The test machine will provide approximately 200 MB of
70  disk space for continual use.
71\item The test machine will have approximately 500 MB of free
72  disk space for temporary use.
73\item The test machine will run the most common version of the OS.
74\item The test machine will have an autochanger of DDS-4 technology
75  or later having two or more tapes.
76\item The test machine will have MySQL and/or PostgreSQL database
77  access for account "bacula" available.
78\item The test machine will have sftp access.
79\item The test machine will provide an smtp server.
80\end{itemize}
81
82Minimum requirements for a test machine:
83\begin{itemize}
84\item The principal developer will have non-root ssh access to
85  the test machine when requested approximately once a month.
86\item The pricipal developer not have root access.
87\item The test machine will provide approximately 80 MB of
88  disk space for continual use.
89\item The test machine will have approximately 300 MB of free
90  disk space for temporary use.
91\item The test machine will run the the OS.
92\item The test machine will have a tape drive of DDS-4 technology
93  or later that can be scheduled for access.
94\item The test machine will not have MySQL and/or PostgreSQL database
95  access.
96\item The test machine will have no sftp access.
97\item The test machine will provide no email access.
98\end{itemize}
99
100Bare bones test machine requirements:
101\begin{itemize}
102\item The test machine is available only to a designated
103  test person (your own machine).
104\item The designated test person runs the regession
105  tests on demand.
106\item The test machine has a tape drive available.
107\end{itemize}
108