fernuni:1914:ori
Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| fernuni:1914:ori [2015/04/11 06:40] – angelegt Martin | fernuni:1914:ori [2015/06/09 14:36] (current) – [Anbindung eines entfernten Repositories] Martin | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Ori ====== | ====== Ori ====== | ||
| ===== Installation ===== | ===== Installation ===== | ||
| + | Das beschriebene Vorgehen in diesem Artikel wurde auf folgenden Distributionen erfolgreich getestet | ||
| + | * Debian GNU/Linux 7.8 | ||
| + | * Linux Mint 17.1 Rebecca | ||
| Paketquellen holen mit git | Paketquellen holen mit git | ||
| < | < | ||
| Line 12: | Line 15: | ||
| Verbundenheit wird überprüft … Fertig. | Verbundenheit wird überprüft … Fertig. | ||
| </ | </ | ||
| - | Abhängigkeiten | + | Abhängigkeiten |
| - | * C++11 (Required) | + | * C++11 (Required) |
| - | * openssl (tested with 1.0.1+) (Required) | + | * openssl (tested with 1.0.1+) (Required) |
| - | * boost headers (tested with 1.48+) (Required) | + | * boost headers (tested with 1.48+) (Required) |
| - | * libevent 2.0 (Required) | + | * libevent 2.0 (Required) |
| - | * FUSE (API Version 26+) | + | * FUSE (API Version 26+) |
| - | * liblzma (for LZMA compression) | + | * liblzma (for LZMA compression) |
| - | * mDNSResponder (for Multipull Support) | + | * mDNSResponder (for Multipull Support) |
| - | * libxml2 (S3 Backup) | + | * libxml2 (S3 Backup) |
| - | * libedit (oridbg only) | + | * libedit (oridbg only) |
| < | < | ||
| - | $ aptitude install g++ libboost-dev libevent-dev fuse avahi-daemon libxml2-dev libedit-dev pkg-config scons | + | $ aptitude install g++ libboost-dev libevent-dev fuse avahi-daemon libxml2-dev libedit-dev</ |
| + | Außerdem noch folgende Pakete nachinstallieren | ||
| + | < | ||
| + | $ aptitude install | ||
| </ | </ | ||
| + | Dann kompilieren | ||
| + | < | ||
| + | $ scons | ||
| + | ... | ||
| + | scons: done building targets. | ||
| + | # scons install | ||
| + | ... | ||
| + | scons: Building targets ... | ||
| + | Install file: " | ||
| + | Install file: " | ||
| + | Install file: " | ||
| + | Install file: " | ||
| + | Install file: " | ||
| + | Install file: " | ||
| + | Install file: " | ||
| + | Install file: " | ||
| + | </ | ||
| + | Leider werden bin ausführbaren Dateien in einem falschen Pfad abgelegt ('' | ||
| + | < | ||
| + | # cd / | ||
| + | </ | ||
| + | **Achtung: | ||
| + | < | ||
| + | # chgrp fuse /dev/fuse | ||
| + | # chmod g+rw /dev/fuse | ||
| + | </ | ||
| + | Danach muss der Benutzer noch der Gruppe '' | ||
| + | < | ||
| + | # usermod -aG fuse < | ||
| + | </ | ||
| + | ===== Anwendung ===== | ||
| + | ==== Anbindung eines entfernten Repositories ==== | ||
| - | + | Auf dem Ursprungs-Peer muss zunächst ein neues, leeres Ori-Repository erzeugt werden. Dazu erstellt man ein | |
| + | Verzeichnis mit demselben Namen, welches das Repository erhalten soll. Im Anschluss wird das Repository erzeugt | ||
| + | < | ||
| + | $ mkdir ~/ | ||
| + | $ cd ~/Fernuni | ||
| + | $ ori newfs Seminar1914 | ||
| + | </ | ||
| + | Zur Überprüfung kann man sich alle Repositories anzeigen lassen | ||
| + | < | ||
| + | $ ori list | ||
| + | Name File System ID | ||
| + | Seminar1914 | ||
| + | </ | ||
| + | Nach dem Mounten kann man Dateien in das Repository hineinkopieren | ||
| + | < | ||
| + | $ cd ~/Fernuni | ||
| + | $ orifs Seminar1914 | ||
| + | $ mount | ||
| + | ... | ||
| + | orifs on / | ||
| + | </ | ||
| + | Möchte man nun auf einem zweiten Knoten eine neue Replik anlegen, wird der entsprechende Prozess mit | ||
| + | < | ||
| + | $ ori replicate martin@ori.mb-oss.de: | ||
| + | </ | ||
| + | In diesem Fall liegt das zu replizierende Repository auf einem Remote-Server mit dem URL ori.mb-oss.de. Die Daten werden via SSH-Protokoll übertragen. Das Repository wird automatisch angelegt. War die Replizierung erfolgreich, | ||
| + | < | ||
| + | $ mkdir ~/ | ||
| + | $ orifs Seminar1914 | ||
| + | </ | ||
| + | === Änderungen übertragen === | ||
| + | == Remote -> local == | ||
| + | Werden auf dem Remote Repository neue Dateien hinzugefügt, | ||
| + | < | ||
| + | $ ori snapshot | ||
| + | Committed 8766035d3a1fdb7337e2867ffd49f278dd1fb29bab5a34c87e8b0fa8b0cffa49 | ||
| + | </ | ||
| + | Anschließend können diese mit einer //pull// Anforderung auf den lokalen Rechner übertragen werden | ||
| + | < | ||
| + | $ ori pull | ||
| + | Pulled up to 8766035d3a1fdb7337e2867ffd49f278dd1fb29bab5a34c87e8b0fa8b0cffa49 | ||
| + | $ ori checkout 8766035d3a1fdb7337e2867ffd49f278dd1fb29bab5a34c87e8b0fa8b0cffa49 | ||
| + | Checkout success! | ||
| + | </ | ||
| + | Die angezeigt Nummer ist der HEAD. Man kann sich den aktuellen HEAD mit dem Kommando | ||
| + | < | ||
| + | --- Repository --- | ||
| + | Root: / | ||
| + | UUID: afd8cf79-84d8-4a98-bf8e-984564c51967 | ||
| + | Version: ORI1.1 | ||
| + | HEAD: 8766035d3a1fdb7337e2867ffd49f278dd1fb29bab5a34c87e8b0fa8b0cffa49 | ||
| + | </ | ||
| + | jederzeit anzeigen lassen. | ||
fernuni/1914/ori.1428734424.txt.gz · Last modified: 2015/04/11 06:40 by Martin
