Urbackup-Server in FreeNAS-Jail installieren

Merkzettel, um urbackup auf FreeNAS zu in Gang zu bekommen:

Jails Voraussetzung schaffen:

Dataset auf gewünschtem Pool erstellen mit Namen jails und Standardberechtigungen.

Jail-Konfiguration: /mnt/[pool]/jails als Startverzeichnis

DHCP aktivieren bei im Netz vorhandenen DHCP-Server oder Start-/End IP-Adressen nach eigenen Bedürfnissen anpassen.

Jail erstellen

With freenas‘ web interface, create a standard FreeBSD Jail x64 with the name Urbackup and the [ip address of your choice]

autostart remained checked
VIMAGE – unchecked
NAT – unchecked
vanilla – checked
Beim erstellung des Allerersten Jails wird die Umgebung heruntergeladen, ausgepackt und gestartet. Dies kann etwas dauern.

zusätzlichen Festplattenplatz für Jail bereitstellen

Einem Jail können weitere Datasets eingehängt werden. Gerade hier ist es vernünftig den Logikbereich und den Nutzdatenbereich zu trennen.

Also, wenn nicht bereits geschehen ein Dataset erstellen. [pool]/urbackup-backups. Dann im Bereich Jail/Storage dieses Dataset hinzufügen.

Hier sieht das folgendermaßen aus:

source : /mnt/[pool]/urbackup-backups
destination : /mnt/backups
create directory is : checked
mounted is : checked

change permissions

Wichtig ist nachher noch aus dem Jail heraus die Datei/Verzeichnisrechte anzupassen mittels chown -R urbackup:urbackup /mnt/backups.

Jail betreten

Das Jail kann mittel zwei Wegen erreicht werden über den direkten Shellzugriff  aus dem FreeNAS Jail-Bereich oder über den ssh-Zugriff des FreeNAS-Servers selbst.
[Optional] Verbindung zu FreeNAS über ssh
Hat man im Webinterface von FreeNAS den ssh-zugriff gestattet, kann man sich zur IP von FreeNAS verbinden und als Root anmelden. So können die weiteren Befehle mittels gewohnter Cut&Paste-Bequemlichkeit verarbeitet werden.
Dann muss das richtige Jail ermittelt werden. Der Befehl jls gibt alle vorhandenen Jails aus
Das sieht dann meißt so aus:
[root@freenas] ~# jls
JID IP Address Hostname Path
1 192.168.1.6 urbackup /mnt/space/jails/urbackup
[evtl. geht die Liste weiter]

Diese Jail ID (JID) ist notwendig, um das richtige Jail zu betreten. Der Befehl lautet: jexec [JID] tcsh

jexec 1 tcsh

 

Den Erfolg der Aktion kann man am Befehlszeilenprompt ablesen:

root@Urbackup:/ #

 

Erforderliche Programmpakete installieren

pkg update
pkg upgrade
pkg install nano wget curl cryptopp
urbackup herunterladen und installieren
  1. mkdir /urbackup
    cd /urbackup
    curl -O https://hndl.urbackup.org/Server/2.0.33/urbackup-server-2.0.33.tar.gz

    [ALT] wget http://hndl.urbackup.org/Server/1.4.14/urbackup-server-1.4.14.tar.gz –no-check-certificatenote

  2. tar xf urbackup-server-2.0.33.tar.gz
    cd urbackup-server-2.0.33
    ./configure
    make install -j4

    Urbackup automatisch bei Neustart des Jails starten

echo "#!/bin/sh" > /etc/rc.local
echo "/usr/local/bin/urbackupsrv run -d -g 104857600 -u root" >> /etc/rc.local
chmod +x /etc/rc.local

Anpassen der Berechtigungen des eingehängten Verzeichnisses

chown -R urbackup:urbackup /mnt/backups

Neustart des Jails

Urbackup Einstellungen im Webinterface

Öffnen der Urbackup-Webseite mit einem geeigneten Webbrowser

http://[Urbackup-Jail IP]:55414

Hier wird man schon angemahnt, daß der Pfad (c:\urbackup) nicht gefunden werden kann. Daher muß unter „settings / general / server tab“ der Inhalt des Feldes [Backup storage path] Feld, zu „/mnt/backups“ abgeändert werden.

Aktualisierung von Urbackup:

Nach aktuellen Angaben von Martin Raiber ist für eine Aktualisierung erforderlich:

pkg update
pkg upgrade dann nicht mehr: pkg install cryptopp
curl -O https://hndl.urbackup.org/Server/[neu]/urbackup-server-[neu].tar.gz
tar xf urbackup-server-[neu].tar.gz
cd urbackup-server-[neu]
./configure
make install -j4
Neustarten des Jails

 

Quellen:

https://www.urbackup.org/freenasserverinstall.html

https://forums.freenas.org/index.php?threads/install-urbackup-in-a-jail.22117/

 

 

Altes Vorgehen für den Automatischen Start – falls das noch mal für was gut sein soll:

step 7 – autostart URbackup at boot

build the initializing script, edit this file

Code (text):
  1. nano -wc /etc/rc.d/urbackup_srv

There is a discussion bellow about were the startup file should be placed according to the freebsd standards /usr/local/etc/rc.d/urbackup_srv or /etc/rc.d/urbackup_srv …It seems it should be the first one but it works for me in the 2nd one, if anyone has reading suggestions

Insert this text and save

Code (text):
  1. #!/bin/sh
  2. . /etc/rc.subr
  3. name=urbackup_srv
  4. rcvar=urbackup_srv_enable
  5. command=“/usr/local/sbin/${name}“
  6. command_args=“–plugin /usr/local/lib/liburbackupserver_urlplugin.so –plugin /usr/local/lib/liburbackupserver_cryptoplugin.so –plugin /usr/local/lib/liburbackupserver_downloadplugin.so –plugin /usr/local/lib/liburbackupserver_fsimageplugin.so –plugin /usr/local/lib/liburbackupserver_httpserver.so –plugin /usr/local/lib/liburbackupserver.so –http_root /usr/local/var/urbackup/www –workingdir /usr/local/var –user urbackup –http_port 55414 –logfile /var/log/urbackup_srv.log –daemon“
  7. start_precmd=“cd /usr/local/var“
  8. load_rc_config $name
  9. run_rc_command „$1“

 

Check if there’s no line brake in the 6th line ( „command arg“ ), pay attention when you copy/paste it

Give the execute permissions to the script

Code (text):
  1. chmod +x /etc/rc.d/urbackup_srv

add a line in the startup file

Code (text):
  1. echo ‚urbackup_srv_enable=“YES“‚ >> /etc/rc.conf