ncp_logo.png

Kopierzwerg

out of the box

01.08.2000
Es gibt tausende Tools und Utilities für Linux. "out of the box" pickt sich die Rosinen raus und stellt pro Monat ein Progrämmchen vor, das wir für schlichtweg unentbehrlich oder aber zu Unrecht wenig beachtet halten. Dieses Mal geht es um das Netzkopiertool ncp.

Um Dateien übers Netz von einem Rechner auf einen anderen zu schaufeln, bedient man sich normalerweise ftp oder scp. Was aber, wenn man "eben schnell mal" eine oder mehrere Dateien einem anderen Rechner zum Download anbieten oder jemandem die Ausgabe eines Kommandozeilenbefehls übermitteln will? Dann erweisen sich die oben genannten Dienste und deren Server-Konfiguration als zu umständlich. Felix von Leitner hat wahrscheinlich dieses Problem gehabt und ncp entwickelt.

Ungewöhnliche Verpackung

Von der ncp-Homepage (http://www.fefe.de/ncp/) holen wir uns den Quelltext des Programms, der als -komprimiertes -Archiv vorliegt. Da nicht alle tar-Versionen die automatische Benutzung von bzip2 anbieten, erledigen wir das Auspacken der Reihe nach:

bunzip2 -c ncp-1.0.tar.bz2 | tar xf -

Anschließend geht es ans Kompilieren. Dazu ist bei ncp lediglich der Aufruf von make nötig. Das eigentliche Installieren des ausführbaren Programms ins Verzeichnis /usr/local/bin und das Anlegen von zwei symbolischen Links müssen wir mit root-Rechten vornehmen, da root das Schreibrecht in Systemverzeichnissen wie diesem vorbehalten ist.

cd ncp
make
su    (root-Passwort eingeben)
cp ncp /usr/local/bin
cd /usr/local/bin
ln -s ncp npoll
ln -s ncp npush
exit

Verschiedene Betriebsarten

ncp kann in unterschiedlichen Modi betrieben werden. Wird es unter dem Namen ncp aufgerufen, verschickt oder empfängt es eine oder mehrere Dateien. Als Beispiel versenden wir das gesamte -Verzeichnis von RechnerA nach RechnerB. Dazu wird ncp zuerst auf RechnerB im Servermodus gestartet und danach auf RechnerA im Clientmodus:

[RechnerB]$ ncp
ncp: server mode.  waiting for connection.
[RechnerA]$ ncp RechnerA /etc
tar: Entferne führenden `/' von absoluten Dateinamen im Archiv.
drwxr-xr-x root/root         0 2000-05-30 09:26 etc/
-rw-r--r-- root/root      2096 1999-03-11 18:03 etc/hosts
...

Hier zahlt sich wieder einmal der modulare Aufbau von Unix aus. Anstatt sich selbst um das Aufsammeln aller Dateien im /etc-Verzeichnis zu kümmern, überlässt ncp diese Aufgabe tar. Dieses Tool wird auch auf der Empfängerseite aufgerufen, um dort die Dateien zu schreiben. Aus Sicherheitsgründen weigert sich tar, den absoluten Pfadnamen mit einzupacken, damit auf RechnerB nicht versehentlich das dortige /etc-Verzeichnis überschrieben wird.

Ruft man ncp unter den Namen npush oder npoll auf (deshalb die symbolischen Links, die wir bei der Installation angelegt haben), verschickt oder empfängt es die Standardeingabe.

Womit wir die Standardeingabe von npush füttern, bleibt uns selbst überlassen. Als Beispiel übertragen wir den Inhalt des Verzeichnisses texte als bzip2-komprimiertes Archiv, das auf der Gegenseite nicht ausgepackt, sondern nur gespeichert werden soll:

[RechnerA]$ tar cf - texte | bzip2 | npush
npush: IPv4 multicast failed, trying IPv4 broadcast
[RechnerB]$ npoll RechnerA > texte.tar.bz2
connecting to ::ffff:192.168.0.1

Nehmen wir die Kommandokette auf RechnerA mal auseinander. Zuerst erzeugt tar mit c ("create") ein Archiv, das durch f - auf der Standardausgabe landet. Mit dem Pipezeichen | wird diese an bzip2 umgeleitet, das wiederum seine Ausgabe an npush weiter gibt. Auf der Gegenseite (RechnerB) empfängt npoll die Daten und gibt sie auf der Standardausgabe aus, die mit > texte.tar.bz2 in eine Datei namens texte.tar.bz2 umgelenkt wird.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

  • gzip, bzip2 und tar
    Archivierungsprogramme gibt es wie Sand am Meer; die schnellsten Vertreter ihrer Art nutzen Sie auf der Kommandozeile: Mit kurzen Befehlen packen Sie Ihre Daten zusammen und wieder aus oder archivieren ganze Verzeichnishierarchien.
  • Gut verpackt
    Archivierungsprogramme gibt es wie Sand am Meer; die schnellsten Vertreter ihrer Art nutzen Sie auf der Kommandozeile: Mit kurzen Befehlen packen Sie Ihre Daten zusammen und wieder aus oder archivieren ganze Verzeichnishierarchien.
  • Zu Befehl
    Auch wenn sich viele Dinge bequem über grafische Oberflächen wie KDE oder GNOME regeln lassen – wer sein Linux-System richtig ausreizen möchte, kommt um die Kommandozeile nicht herum. Abgesehen davon gibt es auch sonst viele Situationen, wo es gut ist, sich im Befehlszeilendschungel ein wenig auszukennen.
  • Die Cloud-Alternative Copy unter Linux
    Ähnlich wie Dropbox erlaubt es der kommerzielle Cloud-Speicher Copy, Daten sehr einfach zwischen dem Desktop-PC, dem Notebook und dem Smartphone zu synchronisieren oder mit Freunden zu teilen. Aber kann Copy den etablierten Anbietern dabei das Wasser reichen?
  • Archive splitten und zusammenfügen
    Dank günstiger Medien lassen sich CD-Brenner und ZIP-Laufwerke nicht nur zum leichten Transport von Daten sondern auch zur Archivierung und zum regelmäßigen Backup verwenden. Ist die Menge zu sichernder Daten größer als die Kapazität eines Datenträgers, helfen die Programme split und cat.
Kommentare

Infos zur Publikation

LU 01/2015: E-Books im Griff

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 0 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

ICEauthority
Thomas Mann, 17.12.2014 14:49, 2 Antworten
Fehlermeldung beim Start von Linux Mint: Could not update ICEauthority file / home/user/.ICEauth...
Linux einrichten
Sigrid Bölke, 10.12.2014 10:46, 5 Antworten
Hallo, liebe Community, bin hier ganz neu,also entschuldigt,wenn ich hier falsch bin. Mein Prob...
Externe USB-Festplatte mit Ext4 formatiert, USB-Stick wird nicht mehr eingebunden
Wimpy *, 02.12.2014 16:31, 0 Antworten
Hallo, ich habe die externe USB-FP, die nur für Daten-Backup benutzt wird, mit dem YaST-Partition...
Steuern mit Linux
Siegfried Markner, 01.12.2014 11:56, 2 Antworten
Welches Linux eignet sich am besten für Steuerungen.
Nach Ubdates alles weg ...
Maria Hänel, 15.11.2014 17:23, 5 Antworten
Ich brauche dringen eure Hilfe . Ich habe am wochenende ein paar Ubdates durch mein Notebook von...