\chapter{Supported Operating Systems}
\label{blb:SupportedOSes}
\index[general]{Systems!Supported Operating }
\index[general]{Supported Operating Systems }
This section applies to the community version only.  If you
are a \baculasystems{} customer, binaries are available for 
all supported systems.  Please see \bref{http://www.baculasystems.com}{www.baculasystems.com}
for the current list.

\smallskip

\begin{bdescription}
\item[\bhighlight{Yes}] Fully supported
\item[\bstar{}] The are reported to work in many cases and the Community
   has committed code for them.  However they are
  not directly supported by the \bacula{} project, as we don't have the
  hardware.
\end{bdescription}

\LTXtable{\linewidth}{t-main-supported-oses}

\paragraph{Important notes}
\begin{bitemize}
\item By GNU/Linux, we mean 32/64bit Gentoo, Red Hat, Fedora, Mandriva,
    Debian, OpenSuSE, Ubuntu, Kubuntu, \ldots

\item For FreeBSD older than version 5.0,
  please see some \textbf{important} considerations in the
  \bxlink{Tape Modes on FreeBSD}{blb:FreeBSDTapes}{problems}{section} of \bproblemman{}.

\item For MacOSX see \bfootref{http://fink.sourceforge.net/}{for obtaining the packages}
\end{bitemize}

See the \bxlink{Porting}{blb:PortingChapter}{developers}{chapter} of the \bdevelman{} for
 information on porting to other systems.

If you have a older Red Hat Linux system running the 2.4.x kernel and you have
the directory \bdirectoryname{/lib/tls} installed on your system (normally by default),
bacula will \textbf{not} run. This is the new pthreads library and it is
defective. You must remove this directory prior to running \bacula{}, or you can
simply change the name to \bdirectoryname{/lib/tls-broken}) then you must reboot your
machine (one of the few times Linux must be rebooted). If you are not able to
remove/rename \bdirectoryname{/lib/tls}, an alternative is to set the environment variable
``LD\_ASSUME\_KERNEL=2.4.19'' prior to executing \bacula{}. For this option, you do
not need to reboot, and all programs other than \bacula{} will continue to use
\bdirectoryname{/lib/tls}.
The above mentioned \bdirectoryname{/lib/tls} problem does not occur with Linux 2.6 kernels.
