Skip to content

Commit

Permalink
Merge branch 'release/2.0.0'
Browse files Browse the repository at this point in the history
DRLM version 2.0
  • Loading branch information
krbu committed Jul 31, 2016
2 parents 31e57eb + dce33cd commit ef2e64c
Show file tree
Hide file tree
Showing 909 changed files with 5,166 additions and 1,832 deletions.
18 changes: 8 additions & 10 deletions Makefile
@@ -1,4 +1,4 @@
# In some dists (e.g. Ubuntu) bash is not the default shell. Statements like
# In some dists (e.g. Ubuntu) bash is not the default shell. Statements like
# cp -a etc/drlm/{mappings,templates} ...
# assumes bash. So its better to set SHELL
SHELL=/bin/bash
Expand All @@ -8,7 +8,7 @@ OFFICIAL =

### Get version from DRLM itself
drlmbin = usr/sbin/drlm
drlm_store_svc = etc/init.d/drlm-stord
drlm_store_svc = usr/sbin/drlm-stord
name = drlm
version := $(shell awk 'BEGIN { FS="=" } /^VERSION=/ { print $$2}' $(drlmbin))

Expand Down Expand Up @@ -85,15 +85,15 @@ validate:
find . -name '*.sh' | xargs bash -n

man: doc/drlm.8

doc:
@echo -e "\033[1m== Prepare documentation ==\033[0;0m"

ifneq ($(git_date),)
rewrite:
@echo -e "\033[1m== Rewriting $(specfile), $(dscfile) and $(drlmbin) ==\033[0;0m"
sed -i.orig \
-e 's#^Source:.*#Source: https://future_drlm_website/drlm/${version}/$(name)-${distversion}.tar.gz#' \
-e 's#^Source:.*#Source: http://drlm.org/download/${version}/$(name)-${distversion}.tar.gz#' \
-e 's#^Version:.*#Version: $(version)#' \
-e 's#^%define rpmrelease.*#%define rpmrelease $(rpmrelease)#' \
-e 's#^%setup.*#%setup -q -n $(name)-$(distversion)#' \
Expand Down Expand Up @@ -123,10 +123,9 @@ install-config:
@echo -e "\033[1m== Installing configuration ==\033[0;0m"
install -d -m0700 $(DESTDIR)$(sysconfdir)/drlm/
install -d -m0600 $(DESTDIR)$(sysconfdir)/drlm/cert
install -Dp -m0600 etc/drlm/cert/README.rst $(DESTDIR)$(sysconfdir)/drlm/cert/README.rst
install -d -m0600 $(DESTDIR)$(sysconfdir)/drlm/clients
install -Dp -m0600 etc/drlm/cert/drlm.crt $(DESTDIR)$(sysconfdir)/drlm/cert/drlm.crt
install -Dp -m0600 etc/drlm/cert/drlm.key $(DESTDIR)$(sysconfdir)/drlm/cert/drlm.key
install -Dp -m0600 etc/drlm/clients/client_template.cfg $(DESTDIR)$(sysconfdir)/drlm/clients/client_template.cfg
install -d -m0600 $(DESTDIR)$(sysconfdir)/drlm/alerts
-[[ ! -e $(DESTDIR)$(sysconfdir)/drlm/local.conf ]] && \
install -Dp -m0600 etc/drlm/local.conf $(DESTDIR)$(sysconfdir)/drlm/local.conf
-[[ ! -e $(DESTDIR)$(sysconfdir)/drlm/os.conf && -e etc/drlm/os.conf ]] && \
Expand All @@ -142,8 +141,7 @@ install-bin:
-e 's,^SHARE_DIR=.*,SHARE_DIR="$(datadir)/drlm",' \
-e 's,^VAR_DIR=.*,VAR_DIR="$(localstatedir)/lib/drlm",' \
$(DESTDIR)$(sbindir)/drlm
@echo -e "\033[1m== Installing store service ==\033[0;0m"
install -Dp -m0755 $(drlm_store_svc) $(DESTDIR)$(sysconfdir)/init.d/drlm-stord
install -Dp -m0755 $(drlm_store_svc) $(DESTDIR)$(sbindir)/drlm-stord

install-data:
@echo -e "\033[1m== Installing scripts ==\033[0;0m"
Expand All @@ -167,7 +165,7 @@ install-doc:
-e 's,/usr/share/doc/packages,$(datadir)/doc,' \
$(DESTDIR)$(mandir)/man8/drlm.8

install: validate man install-config rewrite install-bin restore install-data install-var
install: validate man install-config rewrite install-bin restore install-data install-var

uninstall:
@echo -e "\033[1m== Uninstalling DRLM ==\033[0;0m"
Expand Down
95 changes: 47 additions & 48 deletions README.rst
Expand Up @@ -5,12 +5,12 @@ Disaster Recovery Linux Manager (DRLM) is a Central Management Open Source
Software for Linux Disaster Recovery and System Migrations, based on
Relax-and-Recover (ReaR).

DRLM provides Central Management and Deployment from small to large
DRLM provides Central Management and Deployment from small to large
Linux Disaster Recovery Implementations bringing a great Centralized Management
Tool to Linux SysAdmins.
Tool to Linux SysAdmins.

With DRLM SysAdmins can add/delete/modify networks and ReaR clients to manage,
run backups and enable/disable Disaster Recovery system images to recovery
With DRLM SysAdmins can add/delete/modify networks and ReaR clients to manage,
run backups and enable/disable Disaster Recovery system images to recovery
through network.

Professional services and support are available.
Expand All @@ -22,39 +22,38 @@ read the Disaster Recovery Linux Manager User Guide.
REQUIREMENTS
------------

DRLM is written entirely in Bash and requieres some system services in order to
DRLM is written entirely in Bash and requires some system services in order to
work properly:

* isc-dhcpd
* nfs-server
* tftpd

Also is required for PXE Boot:

* syslinux
* apache2
* qemu-img
* sqlite3

All other required programs (like sort, dd, grep, etc.) are so common, that
we don't list them as requirements. In case your specific workflow requires
additional tools, Disaster Recovery Linux Manager will tell you.

DRLM is a tool to manage REAR systems, so all clients need REAR package and
its dependencies to work properly.
its dependencies to work properly.


INSTALLATION
------------

On RPM based systems you should use the drlm RPM package. Either obtain it
from the DRLM homepage or build it yourself from the source
tree with:
On RPM based systems you should use the drlm RPM package. Either obtain it
from the DRLM homepage or build it yourself from the source
tree with:
::

$ make rpm
$ make rpm

This will create an RPM for your distribution. The RPM is not platform-
dependant and should work also on other RPM based distributions.
This will create an RPM for your distribution. The RPM is not platform-
dependant and should work also on other RPM based distributions.

On DEB based systems you can execute the command:
On DEB based systems you can execute the command:
::

$ make deb
Expand All @@ -64,11 +63,11 @@ CONFIGURATION
-------------

To configure Disaster Recovery Linux Manager you have to edit the configuration
files in '/etc/drlm/'. All '*.conf' files there are part of the configuration,
files in '/etc/drlm/'. All '*.conf' files there are part of the configuration,
but only 'local.conf' are intended for the user configuration.
TFTP is the only service to be manually configured. The other sevices are
automatically configured through DRLM commands.
TFTP is the only service to be manually configured. The other sevices are
automatically configured through DRLM commands.

To configure the TFTP is nedeed deefine the DRLM Store Dir as root and enable
the TFTP service on system startup.
Expand All @@ -77,41 +76,41 @@ the TFTP service on system startup.
USAGE
-----

To use Disaster Recovery Linux Manager you always call the main script
To use Disaster Recovery Linux Manager you always call the main script
'/usr/sbin/drlm':

::

# drlm help
Usage: drlm [-d] [-D] [-s] [-S] [-v] [-V] COMMAND [ARGS...]
# drlm --help
Usage: drlm [-dDsSvV] COMMAND [-- ARGS...]

Disaster Recovery Linux Manager comes with ABSOLUTELY NO WARRANTY; for details see
the GNU General Public License at: http://www.gnu.org/licenses/gpl.html
Disaster Recovery Linux Manager comes with ABSOLUTELY NO WARRANTY; for details
see The GNU General Public License at: http://www.gnu.org/licenses/gpl.html

Available options:
-d debug mode; log debug messages
-D debugscript mode; log every function call
-s simulation mode; show what scripts drlm would include
-S step-by-step mode; acknowledge each script individually
-v verbose mode; show more output
-V version information

-d debug mode; log debug messages
-D debugscript mode; log every function call
-s simulation mode; show what scripts drlm would include
-S step-by-step mode; acknowledge each script individually
-v verbose mode; show more output
-V version information

List of commands:

addbackup register backup to DB. (Not yet implemented)
addclient register new client to DB.
addnetwork register new network to DB.
bkpmgr manage DRLM backup states.
delbackup delete backup and unregister from DB.
delclient delete client from DB.
delnetwork delete network from DB.
listbackup list client backups.
listclient list existent clients.
listnetwork list existent networks.
modclient modify client properties.
modnetwork modify network properties.
runbackup run backup and register to DB.

Use 'drlm COMMAND help' for more advanced commands.
addclient register new client to DB.
addnetwork register new network to DB.
bkpmgr manage DRLM backup states.
delbackup delete backup and unregister from DB.
delclient delete client from DB.
delnetwork delete network from DB.
instclient install client from DRLM (NEW!)
listbackup list client backups.
listclient list registered clients.
listnetwork list registered networks.
modclient modify client properties.
modnetwork modify network properties.
runbackup run backup and register to DB.


Use 'drlm COMMAND --help' for more advanced commands.

0 comments on commit ef2e64c

Please sign in to comment.