Skip to content

Commit

Permalink
docs: (Sphinx) update doc by running auto conversion script
Browse files Browse the repository at this point in the history
Also moved _static/ to include/,
as _static will be copied from Sphinx directly to html.
However, our content in _static is already handled by Sphinx,
so it is not needed in html/_static.
Therefore we renamed _static/ to include/.
  • Loading branch information
joergsteffens committed Mar 5, 2019
1 parent 9e89bcc commit bba3352
Show file tree
Hide file tree
Showing 119 changed files with 26,110 additions and 34 deletions.
8 changes: 4 additions & 4 deletions docs/manuals/en/new_main_reference/latex-scan.py
Expand Up @@ -138,7 +138,7 @@ def __init__(self):
'idir': {
'pattern': r'\\idir\ *(.*?)\n',
'flags': re.VERBOSE,
'replace': r'/_static/images/\1.*\n'
'replace': r'/include/images/\1.*\n'
},
'EnvBareosConfigResource': {
'pattern': r'::\n\n(\s*)\\begin{bareosConfigResource}{(.*?)}{(.*?)}{(.*?)}\s*\n(.*?)\n\s*\\end{bareosConfigResource}',
Expand Down Expand Up @@ -229,7 +229,7 @@ def __init__(self):
'pattern': r'\.\.\s\|image\|\simage::\s\\idir\s(.*?)$(.*?)(?=\n[^\s]|^$)',
'flags': self.regexOpts,
'replace': r'',
'return': r'.. image:: /_static/images/\1.*\2\n\n',
'return': r'.. image:: /include/images/\1.*\2\n\n',
'extraHandling': True
},
}
Expand Down Expand Up @@ -690,7 +690,7 @@ def bcheckmark(item):

@staticmethod
def bconfigInput(item):
item.replace(b'\n\n{indent}.. literalinclude:: /_static/{0}\n\n'.format(*item.getParameters(), indent = ' ' * item.getIndent()))
item.replace(b'\n\n{indent}.. literalinclude:: /include/{0}\n\n'.format(*item.getParameters(), indent = ' ' * item.getIndent()))

@staticmethod
def bcommand(item):
Expand Down Expand Up @@ -1222,7 +1222,7 @@ def volumeparameter(item):
@staticmethod
def verbatiminput(item):
# file must be in the source/ directory (at least there have to be a link)
item.replace(b'\n\n.. literalinclude:: /_static/{0}\n\n'.format(*item.getParameters()))
item.replace(b'\n\n.. literalinclude:: /include/{0}\n\n'.format(*item.getParameters()))


#
Expand Down
22 changes: 22 additions & 0 deletions docs/manuals/en/new_main_reference/source/Appendix.rst
@@ -0,0 +1,22 @@
Appendix
========




.. toctree::

/Appendix/SystemRequirements.rst
/Appendix/OperatingSystems.rst
/Appendix/BareosPrograms.rst
/Appendix/TheBootstrapFile.rst
/Appendix/VerifyFileIntegrityWithBareos.rst
/Appendix/BackwardCompatibility.rst
/Appendix/CatalogTables.rst
/Appendix/Howtos.rst
/Appendix/DisasterRecoveryUsingBareos.rst
/Appendix/Troubleshooting.rst
/Appendix/Debugging.rst
/Appendix/ReleaseNotes.rst
/Appendix/BareosCopyrightTrademarkAndLicenses.rst

@@ -0,0 +1,187 @@
Backward Compatibility
======================

:index:`[TAG=Compatibility->Backward] <pair: Compatibility; Backward>`

.. _backward-compatibility:



Tape Formats
------------

:index:`[TAG=Tape->Format] <pair: Tape; Format>`

.. _backward-compatibility-tape-format:



One of the major goals of Backup software is to ensure that you can restore tapes (the word tape should also include disk volumes) that you wrote years ago. This means that each new version of the software should be able to read old format tapes. The first problem you will have is to ensure that the hardware is still working some years down the road, and the second problem will be to ensure that the media will still be good, then your OS must be able to interface to the device, and finally
Bareos must be able to recognize old formats. All the problems except the last are ones that we cannot solve, but by careful planning you can.

Since the very beginning of Bacula (January 2000) until today (2015), there have been three major Bacula/Bareos tape formats. The second format was introduced in Bacula version 1.27 in November of 2002. Bareos has been required to adapt the tape format to avoid potential trademark issues, but is able to read also the old Bacula tape formats.

Though the tape format is basically fixed, the kinds of data that we can put on the tapes are extensible, and that is how we added new features such as ACLs, Win32 data, encrypted data, ... Obviously, an older version of Bacula/Bareos would not know how to read these newer data streams, but each newer version of Bareos should know how to read all the older streams.

Compatibility between Bareos and Bacula
---------------------------------------

:index:`[TAG=Compatibility->Bacula] <pair: Compatibility; Bacula>` :index:`[TAG=Bacula] <single: Bacula>`

.. _compat-bacula:



A Director and a Storage Daemon should (must) always run at the same version. This is true for Bareos as well as for Bacula. It is not possible to mix these components. This is because the protocol between Director and Storage Daemon itself is not versioned (also true for Bareos and Bacula). If you want to be able to switch back from Bareos to Bacula after using a Bareos director and storage daemon you have to enable the compatible mode in the Bareos storage daemon to have it write the data in
the same format as the Bacula storage daemon.

The |bareosFd| is compatible with all version of the Bacula director (tested with version 5.2.13 and lower) when you enable the compatible mode in the configuration of the |bareosFd|. The compatible option was set by default in Bareos < 15.2.0, and is disabled by default since :index:`Version >= 15.2.0 <pair: bareos-15.2.0; Compatible = no>`.

To be sure this is enabled you can explicitly set the compatible option:

\resourceDirectiveValue{Fd}{Client}{Compatible}{True}

A |bareosDir| can only talk to Bacula file daemons of version 2.0 or higher. Through a change in the Bacula network protocols, it is currently not possible to use a Bacula file daemon > 6.0 with a |bareosDir|.

These combinations of Bareos and Bacula are know to work together:

# Tabular in LaTex format (original)

::

\begin{tabular}[h]{|l|l|l|l|}
\hline
:strong:`Director` & :strong:`Storage Daemon` & :strong:`File Daemon` & :strong:`Remarks` \\
\hline
\hline
\bareoscolor & \bareoscolor & \bareoscolor & \\
\hline
\bareoscolor & \bareoscolor & 2.0 <= \baculacolor < 6.0 & \\
\hline
\baculacolor & \baculacolor & \baculacolor & \\
\hline
\baculacolor & \baculacolor & \bareoscolor (compatibility mode) & \\
\hline
\end{tabular}

# Tabular converted from LaTeX to RST (or empty, in case of problems):

============ ================== =========================== ===========
**Director** **Storage Daemon** **File Daemon** **Remarks**
============ ================== =========================== ===========
Bareos  Bareos  Bareos 
Bareos  Bareos  2.0 <= Bacula < 6.0
Bacula  Bacula  Bacula 
Bacula  Bacula  Bareos (compatibility mode)
============ ================== =========================== ===========

Other combinations like Bacula Director with |bareosSd| will not work. However this wasn’t even possible with different versions of bacula-dir and bacula-sd.

Upgrade from Bacula 5.2 to Bareos
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

:index:`[TAG=Upgrade from Bacula to Bareos] <single: Upgrade from Bacula to Bareos>` :index:`[TAG=Bareos->Upgrading] <pair: Bareos; Upgrading>`

.. _upgrade-from-bacula-to-bareos:



Upgrade is supported from Bacula version 5.2.x. If you are running any older version of Bacula, please update to 5.2 first (see Bacula documentation).



.. warning::
Updating from Bacula >= 7.0 to Bareos has not been tested.



.. warning::
As Bareos and Bacula packages bring binaries with identical paths and names,
it is on most platforms not possible to install components from both in parallel.
Your package management tool will warn you about this.

Rename user and group before upgrading
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

To have bareos running without any permission hassle, it is recommended to rename the user and group **bacula** to the user and group **bareos** before upgrading. That way, we minimize the effort for the user to recheck all config files and the rights on every script/directory etc. involved in the existing setup.

The required commands should look something like this:

.. code-block:: sh
usermod -l bareos bacula
groupmod -n bareos bacula
MySQL
^^^^^

Proceed with the following steps:

- Stop bacula services

- Backup your catalog database:

.. code-block:: sh
mysqldump bacula > /tmp/bacula_5.2.sql
- Make the user bareos have the same userid and the group bareos the same groupid as the user/group bacula had before. This will solve a lot of rights problems.

- Install Bareos packages

- Run the update script on the old bacula database:

.. code-block:: sh
export db_name=bacula
/usr/lib/bareos/update_bareos_tables
unset db_name
- Backup upgraded DB:

.. code-block:: sh
mysqldump bacula > /tmp/bacula.sql
- Create bareos database:

.. code-block:: sh
/usr/lib/bareos/create_bareos_database
- Insert backuped db into new database:

.. code-block:: sh
cat /tmp/bacula.sql | mysql bareos
- Grant permissions:

.. code-block:: sh
/usr/lib/bareos/grant_mysql_privileges
- Adapt file permissions to bareos, if you have any file storage

- Adapt configs (not complete)

- With bacula the default setting for pid files was :file:`/var/run`, which may not work if the bareos-director runs as user bareos. Best way is to comment out the entry :command:`Pid Directory = "/var/run"` in your director config. Bareos will set a working default value (supposed to be :file:`/var/lib/bareos/`)

PostgreSQL
^^^^^^^^^^

Renaming a postgresql database:

- Become postgresql user

- psql template1

.. code-block:: sh
ALTER DATABASE bacula RENAME TO bareos;
ALTER USER bacula RENAME TO bareos;
ALTER USER bareos UNENCRYPTED PASSWORD 'password';
@@ -0,0 +1,113 @@
.. _LicenseChapter:

Bareos Copyright, Trademark, and Licenses
=========================================

:index:`[TAG=License->Bareos Copyright Trademark Licenses] <pair: License; Bareos Copyright Trademark Licenses>` :index:`[TAG=Bareos Copyright, Trademark, and Licenses] <single: Bareos Copyright, Trademark, and Licenses>`

Licenses Overview
-----------------

There are a number of different licenses that are used in Bareos.

FDL
~~~

:index:`[TAG=License->FDL] <pair: License; FDL>`

The :ref:`GNU Free Documentation License (FDL) <fdl>` is used for this manual, which is a free and open license. This means that you may freely reproduce it and even make changes to it.

AGPL
~~~~

:index:`[TAG=License->AGPL] <pair: License; AGPL>`

The vast bulk of the source code is released under the :ref:`GNU Affero General Public License (AGPL) version 3 <agpl>`.

Most of this code is copyrighted: Copyright ©2000-2012 Free Software Foundation Europe e.V.

All new code is copyrighted: Copyright ©2013-2013 Bareos GmbH & Co. KG

Portions may be copyrighted by other people. These files are released under different licenses which are compatible with the AGPL license.

LGPL
~~~~

:index:`[TAG=License->LGPL] <pair: License; LGPL>`

Some of the Bareos library source code is released under the :ref:`GNU Lesser General Public License (LGPL) <lgpl>`. This permits third parties to use these parts of our code in their proprietary programs to interface to Bareos.

Public Domain
~~~~~~~~~~~~~

:index:`[TAG=License->Public Domain] <pair: License; Public Domain>`

Some of the Bareos code, or code that Bareos references, has been released to the public domain. E.g. md5.c, SQLite.

Trademark
~~~~~~~~~

:index:`[TAG=Trademark] <single: Trademark>`

Bareos\raisebox{.6ex}{\textsuperscript{\textregistered}} is a registered trademark of Bareos GmbH & Co. KG.

Bacula\raisebox{.6ex}{\textsuperscript{\textregistered}} is a registered trademark of Kern Sibbald.

Disclaimer
~~~~~~~~~~

:index:`[TAG=Disclaimer] <single: Disclaimer>`

NO WARRANTY

BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH
ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

Other Copyrights and Trademarks
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Certain words and/or products are Copyrighted or Trademarked such as Windows (by Microsoft). Since they are numerous, and we are not necessarily aware of the details of each, we don’t try to list them here. However, we acknowledge all such Copyrights and Trademarks, and if any copyright or trademark holder wishes a specific acknowledgment, notify us, and we will be happy to add it where appropriate.



.. _fdl:

GNU Free Documentation License
------------------------------



.. literalinclude:: /include/fdl.txt





.. _agpl:

GNU Affero Gerneral Public License
----------------------------------



.. literalinclude:: /include/agpl.txt





.. _lgpl:

GNU Lesser Gerneral Public License
----------------------------------



.. literalinclude:: /include/lgpl.txt




0 comments on commit bba3352

Please sign in to comment.