Fehlerfreie alternative gesucht.

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Fehlerfreie alternative gesucht.

Beitrag von DEBIANUNDANDREAS » 05.05.2015 11:58:46

Hallo.
Ich habe ein Script von von UU >>> http://nopaste.debianforum.de/38500
Wenn ich dieses Script auf meinem Ubuntuserver 14.04.2 starte bekomme ich für die zeile 34 einen Fehler.
Wenn ich den Fehler in Zeile 34 entferne bekomme ich weiterhin fehler,
Hat jemand eine fehlerfreie Revision?
Oder eine fehlerfreie Alternative? << Dann bitte hier posten

Benutzeravatar
towo
Beiträge: 4408
Registriert: 27.02.2007 19:49:44
Lizenz eigener Beiträge: GNU Free Documentation License

Re: Fehlerfreie alternative gesucht.

Beitrag von towo » 05.05.2015 12:08:37

Du könntest einfach anfangen, Dir selber zu helfen, anstatt hier Alles vorgekaut zu bekommen.

NAB
Beiträge: 5501
Registriert: 06.03.2011 16:02:23
Lizenz eigener Beiträge: MIT Lizenz

Re: Fehlerfreie alternative gesucht.

Beitrag von NAB » 05.05.2015 12:32:47

Das geht nicht! In Zeile 21 steht "do not edit", da kann man nichts reparieren! Du brauchst ein heiles Script!

(und möglichst auch eins mit einer vernünftigen Dokumentation und Gebrauchsanweisung)
Never change a broken system. It could be worse afterwards.

"No computer system can be absolutely secure." Intel Document Number: 336983-001

Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Re: Fehlerfreie alternative gesucht.

Beitrag von DEBIANUNDANDREAS » 05.05.2015 13:14:13

NAB du hast recht, aber trotzdem ich brauche ein heiles Script.

uname
Beiträge: 12075
Registriert: 03.06.2008 09:33:02

Re: Fehlerfreie alternative gesucht.

Beitrag von uname » 05.05.2015 13:19:04

Das Programm habe ich vor Jahren geschrieben und schön, dass es noch Anwendung findet. Bei Fehlern solltest du immer die Originalausgaben posten. Also die Eingabe des Befehls und die Ausgabe des Fehlern. Nicht irgendwie, dass irgendwo es zu irgendeinen Fehler kam. Das hilft niemanden. Den Fehler selbst kann ich nicht nachvollziehen.

Du kannst aber den Block

Code: Alles auswählen

if [ "${TARGET:${#TARGET}-1:1}" != "/" ]; then
  TARGET=$TARGET/
fi
vollständig rauswerfen, sofern Du daran denkt ganz oben bei der Defintion von TARGET den Pfad mit "/" zu beenden. Denn das wird in diesen Zeilen geprüft und evtl. korrigiert. Wobei diesen Teil des Scripts hatte wohl jemand anderes geschrieben. Ist aber auch egal.
Das geht nicht! In Zeile 21 steht "do not edit"
Sollte mehr als Warnung verstanden werden. Wer Ahnung hat kann alles ändern. Aber eigentlich sollte durch die Defintionen in den Zeilen oberhalb dieser Meldung das Programm ausreichend anpassbar sein.

Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Re: Fehlerfreie alternative gesucht. (speziell an uname)

Beitrag von DEBIANUNDANDREAS » 05.05.2015 14:32:22

uname
du hast dich als Entwickler des Quelltext veröffentlicht, deshalb wende ich mich hier an dich und nicht per P/N.
Meine Erfahrung mit dem Quelltext,
abgespeichert habe ich den Quelltext aus nopaste als 38500.sh.
Dann habe ich den Quelltext mittels gksudo nautilus und dann umkopiert und ausführbar gemacht.
Im Ubuntuserver gewechselt habe ich das Script mittels sh 3850.sh gestartet.
Dabei bekamm ich folgende Fehlermeldungen
38500.sh: 5 :38500.sh syntax error: "(" unexpected
Ich habe dann Quelltext in Zeile % die "(" und ")" in nano geöffnet und entfernt.
Dann bekamm ich als Fehlermeldung 38500.sjh: 56:38500.sh Bad substitution.
Kannst du mir bei deinem Quelltext weiterhelfen, oder alternativ eine Revision zukommen lassen!?

newdeb
Beiträge: 134
Registriert: 03.02.2011 11:11:21
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Frankfurt

Re: Fehlerfreie alternative gesucht. (speziell an uname)

Beitrag von newdeb » 05.05.2015 14:51:31

DEBIANUNDANDREAS hat geschrieben:habe ich das Script mittels sh 3850.sh gestartet.
Starte es mit

Code: Alles auswählen

bash 3850.sh

Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Re: Fehlerfreie alternative gesucht.

Beitrag von DEBIANUNDANDREAS » 05.05.2015 15:05:28

Hallo, ich hatte das Script mit sudo bash 38500.sh gestartet,
jetzt kommt folgendes
38500.sh: Zeile 5:/etc Ist ein Verzeichnis
Das ist wohl als Fehlermeldung zu verstehen?

Benutzeravatar
Meillo
Moderator
Beiträge: 8818
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: Fehlerfreie alternative gesucht.

Beitrag von Meillo » 05.05.2015 15:06:43

DEBIANUNDANDREAS hat geschrieben:Hallo, ich hatte das Script mit sudo bash 38500.sh gestartet,
jetzt kommt folgendes
38500.sh: Zeile 5:/etc Ist ein Verzeichnis
Das ist wohl als Fehlermeldung zu verstehen?
Nein, das ist eine wahre Aussage. :-P *scnr*
Use ed once in a while!

NAB
Beiträge: 5501
Registriert: 06.03.2011 16:02:23
Lizenz eigener Beiträge: MIT Lizenz

Re: Fehlerfreie alternative gesucht.

Beitrag von NAB » 05.05.2015 15:16:47

DEBIANUNDANDREAS, ob die "(" und ")", die du entfernt hast, vielleicht doch dahin gehören?
Never change a broken system. It could be worse afterwards.

"No computer system can be absolutely secure." Intel Document Number: 336983-001

Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Re: Fehlerfreie alternative gesucht.

Beitrag von DEBIANUNDANDREAS » 05.05.2015 15:31:18

NAB
"(" und ")" habe ich wieder eingefügt und dann das Script auf dem Ubuntuserver gestartet, jetzt kam keine Fehlermeldung aber auch keine andersartige Meldung ($echo) zustande.
Ist das so richtig?

uname
Beiträge: 12075
Registriert: 03.06.2008 09:33:02

Re: Fehlerfreie alternative gesucht.

Beitrag von uname » 05.05.2015 15:40:27

Also wenn ich das lese wird mir schon bald schlecht. Ich möchte dir ein paar Empfehlungen mit auf den Weg geben.

a.) nutze das Terminal
b.) werde root und bleibe vor allem root (nein das ist nicht unsicher):

Code: Alles auswählen

sudo -s
c.) Texteditor nutzen(als root natürlich)

Code: Alles auswählen

nano /root/backup.sh
e.) Text reinkopieren. Cut and Paste, Datei speichern
f.) wieder im Terminal Programm ausführbar machen, immer noch als root

Code: Alles auswählen

chmod 755 /root/backup.sh
Übe das und melde dich wieder wenn es funktioniert. Statt nano darfst du auch Vim nutzen.

Alles andere ist reinster Schrott. Ich denke damit hast du dir die Textdatei zerschossen.
Wer braucht denn Nautilus und gksudo? Dann bleib besser gleich bei Windows.

PS.:
Da in der ersten Zeile der Shebang "#!/bin/bash" steht kannst du das "bash" bei der Ausführung des Befehls weglassen.

Korrekt wäre:

Code: Alles auswählen

sudo /root/backup.sh
besser

Code: Alles auswählen

sudo -s
/root/backup.sh
./backup.sh (im aktuellen Verzeichnis)

NAB
Beiträge: 5501
Registriert: 06.03.2011 16:02:23
Lizenz eigener Beiträge: MIT Lizenz

Re: Fehlerfreie alternative gesucht.

Beitrag von NAB » 05.05.2015 15:53:21

uname, wo du dir das schon eingebrockt hast ... ich denke, dein Script ist aber auch etwas unterdokumentiert. Ich kann auch nur raten, was es macht, und ich kann ebenfalls nur raten, dass DEBIANUNDANDREAS einen Weg sucht, Dateien von Rechner A zu Rechner B zu kopieren ... und ich weiß nicht, ob er da auf dem richtigen Weg ist mit seinem "Fundstück" ,,,
Never change a broken system. It could be worse afterwards.

"No computer system can be absolutely secure." Intel Document Number: 336983-001

Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Re: Fehlerfreie alternative gesucht.

Beitrag von DEBIANUNDANDREAS » 05.05.2015 15:59:36

NAB da hast du recht, es ist allerdings so das es im Internet nur wenige Fundstücke gibt, und wenn es welche gibt ist der Autor nicht erreichbar, oder spricht kein deutsch!?

uname
Beiträge: 12075
Registriert: 03.06.2008 09:33:02

Re: Fehlerfreie alternative gesucht.

Beitrag von uname » 05.05.2015 16:14:52

Naja. Im anderen Thread wird ja auch nach einer Lösung gesucht. Vielleicht sollte DEBIANUNDANDREAS es erst mal überhaupt schaffen von Rechner A zu Rechner B sowie umgekehrt einen "ping" zu versenden. Dann machen die beiden Threads überhaupt erst einen Sinn. Und wenn der "ping" funktioniert kann man über notwendige Anwendungen (Debianopenssh-server sowie Debianrsync) überhaupt mal nachdenken. Wobei das sollte schon in dem Ubuntuusers-Wiki-Eintrag stehen.

NAB
Beiträge: 5501
Registriert: 06.03.2011 16:02:23
Lizenz eigener Beiträge: MIT Lizenz

Re: Fehlerfreie alternative gesucht.

Beitrag von NAB » 05.05.2015 16:18:24

DEBIANUNDANDREAS, du suchst "falsch". Du hast dir in den Kopf gesetzt, dass es ein Zauberscript gibt, dass genau das macht, was du willst. Das gibt es nicht, insbesondere nicht als "Script", denn so allgemeingültige Lösungen schreibt man nicht als "Script".

Du musst erst mal Rechner B "öffnen", indem du ihn für ssh zugänglich machst. Schon ssh bietet einfache Kopierfunktionen, die dir vielleicht reichen. Sonst reicht vermutlich eine Zeile mit "rsync", und kein Script. Aber auch rsync möchte ssh benutzen, sonst kommt es nicht an Rechner B ran. Du musst dich also erst mit ssh beschäftigen.

Und für ssh findest du reichlich deutsche Erklärungen im Ubuntu-Wiki.
Never change a broken system. It could be worse afterwards.

"No computer system can be absolutely secure." Intel Document Number: 336983-001

Benutzeravatar
sys_op
Beiträge: 672
Registriert: 17.09.2007 19:10:47
Lizenz eigener Beiträge: GNU General Public License

Re: Fehlerfreie alternative gesucht.

Beitrag von sys_op » 05.05.2015 16:24:52

http://lmgtfy.com/?q=linux+backup+script
Z.B. gleich der erste Treffer?

http://wiki.ubuntuusers.de/Skripte/Backup_mit_RSYNC
Das Script sieht auf den ersten Blich eigentlich identisch aus.

Da würde ich auf dem Backup-Rechner (Rechner B) einen nfs-kernelserver betreiben und mir das Backup-Verzeichnis auf Rechner A mounten, dann reicht ein rsync -a Quelle Ziel.
gruss sys;-)

Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Re: Fehlerfreie alternative gesucht.

Beitrag von DEBIANUNDANDREAS » 06.05.2015 11:47:44

sys_op
Backup-Verzeichnis auf Rechner A mounten,
Das habe ich nicht richtig verstanden, muss ich mit den Konfigurationsdateien von nfs kernelserver den Rechner A mounten?

Radfahrer

Re: Fehlerfreie alternative gesucht.

Beitrag von Radfahrer » 06.05.2015 12:04:57

Warum eigentlich nicht einfach per ssh? Nicht kompliziert genug?

thoerb
Beiträge: 1677
Registriert: 01.08.2012 15:34:53
Lizenz eigener Beiträge: MIT Lizenz

Re: Fehlerfreie alternative gesucht.

Beitrag von thoerb » 06.05.2015 12:13:19

Radfahrer hat geschrieben:Warum eigentlich nicht einfach per ssh? Nicht kompliziert genug?
Das ist alles nicht besonders kompliziert, man muss sich halt einfach nur mal damit beschäftigen.

Benutzeravatar
sys_op
Beiträge: 672
Registriert: 17.09.2007 19:10:47
Lizenz eigener Beiträge: GNU General Public License

Re: Fehlerfreie alternative gesucht.

Beitrag von sys_op » 06.05.2015 12:13:23

Im Wesentlichen ist das recht einfach, ich gehe davon aus, dass dein Server nicht in einem öffentlichen Netz hängt:

SERVER (als root)
1. Der Rechner, der als Backup-Server dienen soll, bekommt zuerst den nfs-kernel-server spendiert (installiert).
2. Du erstellst auf dem Server ein Verzeichnis (mkdir /backup), das du auch mit chmod 777 auf schreib und ausführbar stellst.
2. in der Datei /etc/exports trägt man nun den Client (der, der das Backup machen darf) mit der IP ein, das sieht ca so aus:

Code: Alles auswählen

/backup	IP_DES_CLIENTS(rw,sync,no_subtree_check)
Nun den NFS-Server neu straten

Code: Alles auswählen

/etc/init.d/nfs-kernel-server restart
CLIENT (als root)
1. Ein Verzeichnis erstellen, in das der Server gemounted wird, sagen wir auch hier heisst das /backup (also mkdir/backup) und chmod 777
2. Ich trage den mountbefehl z.B. gerne in die Datei /etc/rc.local ein, dazu ganz untern in der letzten Zeile folgenden Befehl erintragen (das erspart dir das editieren der fstab und du kannst nichts zerschiessen)

Code: Alles auswählen

mount -t nfs IP_DES_SERVERS:/backup /backup
3. Kontrolle mit dem Befehl mount, dort müsste dir nun dein Server angezeigt werden und dass sein Verzeichnis backup auf dein Verzeichnis /backup gemounted wurde.

Ab nun kannst du auf dem Client das Verzeichnis /backup verwenden, als wäre es lokal auf deinem Rechner. Hier stehen dir alle Möglichkeiten offen.

PS
ssh ist natürlich auch möglich und so schwer ist das Alles ja nun wirklich nicht, Schritt für Schritt Anleitungen findet man nun wirklich zu Hauf.
Ich persönlich mag nfs, weil ich so Plattenplatz anderer Rechner verwenden kann, als wären sie lokal bei mir vorhanden.
gruss sys;-)

Radfahrer

Re: Fehlerfreie alternative gesucht.

Beitrag von Radfahrer » 06.05.2015 12:24:36

thoerb hat geschrieben: Das ist alles nicht besonders kompliziert, man muss sich halt einfach nur mal damit beschäftigen.
Ich hätte vielleicht den Ironie-Smiley setzen sollen. :wink:

Meine Vorgehensweise:
- openssh auf beiden Rechnern installieren
- per rsync (meinetwegen auch grafisch mit grsync) das Backup machen
- fertig

Voraussetzung dafür:
Sich einmal 15 Minuten Zeit nehmen, um sich schlau zu machen, z.B. hier:

http://wiki.ubuntuusers.de/rsync

Benutzeravatar
sys_op
Beiträge: 672
Registriert: 17.09.2007 19:10:47
Lizenz eigener Beiträge: GNU General Public License

Re: Fehlerfreie alternative gesucht.

Beitrag von sys_op » 06.05.2015 12:27:36

Ich denke Lösungen gibt und gab es hier nun genug. Jetzt wird es Zeit mal selber etwas Zeit zu investieren.
Bevor noch jemand auf die Idee kommt einen Samba-Server als Alternative vorzuschlagen, klinke ich mich hier aus.. :roll:
gruss sys;-)

uname
Beiträge: 12075
Registriert: 03.06.2008 09:33:02

Re: Fehlerfreie alternative gesucht.

Beitrag von uname » 06.05.2015 12:51:30

Wäre nicht ein Samba-Server eine Alternative ;-) ;-)

Radfahrer

Re: Fehlerfreie alternative gesucht.

Beitrag von Radfahrer » 06.05.2015 12:57:58

Klar, ich würde dann aber über wine die Windowsversion installieren. :lol:

Außerdem geht da doch bestimmt was über "die Cloud". Oder über iTunes. :mrgreen:

Antworten