Installationsskript

Status
Für weitere Antworten geschlossen.

chrisrich

Benutzer
Mitglied seit
13. Sep 2012
Beiträge
25
Punkte für Reaktionen
0
Punkte
0
Moin moin!

Im Rahmen meiner Ausbilldung stehe ich vor einer DS712+, die ich in ein Active Directory einbinden soll, DFS-Freigaben und gemeinsame Ordner erstellen und die ACL-Einstellungen anpassen soll.

Das ganze ist über die Weboberfläche wunderbar machbar, aber um in dem Projekt eine gute Benotung zu bekommen möchte ich möglichst viel in ein Shell-Skript einbinden, dass einem dann ermöglicht die gleichen Einstellungen auf mehreren Geräten vorzunehmen (da bei uns durchaus überlegt wird diese Lösung mehrfach zu nutzen).

Ich bin zwar kein Profi und noch am lernen, aber einige grundlegende Funktionen der ash bzw. bash habe ich bereits gelernt, kann mit VI, teilweise mit SED und ähnlichem ein bischen umgehen. Zur Installation und Konfiguration einer Groupware bin ich mit einem Skript auch schon mal etwas tiefer in diese Begebenheiten eingestiegen.

Nun zu meinen Fragen:

Kann mir jemand sagen, ob es grundsätzlich überhaupt möglich ist das DSM 4.1 mit einem Shell-Skript einzustellen?
Hat sich jemand schon mal damit auseinandergesetzt und hat Tipps für mich oder kann mir Quellen nennen, die sich damit beschäftigen?

Soweit ich das gesehen habe liegen unter /etc und unter /usr/syno einige synologyeigene Dateien, die ich aber bisher noch nicht habe zuordnen können.

Unter Linux selber sind mir die Möglichkeiten der Benutzer- und Gruppenverwaltung bekannt, jedoch bin ich mir noch nicht sicher, ob die Einbindung eines Active Directorys diese übernommenen Nutzergruppen und User dann in die entsprechenden Verzeichnisse übernimmt oder ob es einen anderen Speicherort gibt - zumal Änderungen in der DS ja auch nicht in das AD übernommen werden, wenn ich das richtig sehe.

Soweit mein Versuch mein Problem zu beschreiben. Bleibt mir die Hoffnung auf balidge Antworten. Wenn ich etwas nicht verständlich genug beschrieben habe dann bitte nachfragen.

Grüße und eine angenehme Woche!

Chris
 

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
2
Punkte
84
Im Allgemeinen nein, das geht nicht. Direkt in den Konfig-Dateien rumzuschreiben würde ich auch nicht empfehlen, die können sich durchaus zwischen verschiedenen Firmwareversionen ändern.

Allerdings gibt es einige Befehle, die von Synology "freigegeben" wurden - http://www.synology.com/support/developer.php. Vielleicht deckt das ja Deinen Bedarf.

Ansonsten schau Dir mal in der Konsole alle Kommandos an, die mit "syno" beginnnen. Aber auch hier wieder, sofern die nicht offiziell freigegeben sind, kann sich das ändern.
 

Ap0phis

Benutzer
Mitglied seit
16. Dez 2010
Beiträge
6.731
Punkte für Reaktionen
3
Punkte
158
Das Wiki wäre auch noch ´ne gute Informationsquelle!
Da gibt es u.a. auch einige Scripts, die man sich zumindest mal anschauen könnte.
 

chrisrich

Benutzer
Mitglied seit
13. Sep 2012
Beiträge
25
Punkte für Reaktionen
0
Punkte
0
Im Allgemeinen nein, das geht nicht. Direkt in den Konfig-Dateien rumzuschreiben würde ich auch nicht empfehlen, die können sich durchaus zwischen verschiedenen Firmwareversionen ändern.

Allerdings gibt es einige Befehle, die von Synology "freigegeben" wurden - http://www.synology.com/support/developer.php. Vielleicht deckt das ja Deinen Bedarf.

Das sieht ja schon mal ganz gut aus. Das werde ich mir morgen mal genauer anschauen - und die Überschrift "managing workgroup or ADS domain setting" verspricht schon mal ein bischen was. Danke dafür!

Ansonsten schau Dir mal in der Konsole alle Kommandos an, die mit "syno" beginnnen. Aber auch hier wieder, sofern die nicht offiziell freigegeben sind, kann sich das ändern.

Wenn die sich ändern macht das erst mal nichts, weil es wenn um eine aktuelle Umsetzung gehen würde, nicht um jahrelange Wiederhohlungen. Trotzdem danke für den Hinweis!
 

chrisrich

Benutzer
Mitglied seit
13. Sep 2012
Beiträge
25
Punkte für Reaktionen
0
Punkte
0
Das Wiki wäre auch noch ´ne gute Informationsquelle!
Da gibt es u.a. auch einige Scripts, die man sich zumindest mal anschauen könnte.

Ja? Ich war der Meinung mich durchs Wiki durchgewühlt zu haben, da ich die Zeit anderer lieber erst dann beanspruche, wenn ich meine Möglichkeiten ausgeschöpft habe. Aber dann werde ich da noch mal weitersuchen. Oder hast Du einen speziellen Tipp für mich oder Suchwort, mit dem Du etwas gefunden hast?

Danke für Deine Antwort!
 

Ap0phis

Benutzer
Mitglied seit
16. Dez 2010
Beiträge
6.731
Punkte für Reaktionen
3
Punkte
158
Nö, nix Spezielles,
aber wenn du mal die Links auf der rechten Seite durchgehst, findest du ganz sicher einige gute Ansatzspunkte!
 

chrisrich

Benutzer
Mitglied seit
13. Sep 2012
Beiträge
25
Punkte für Reaktionen
0
Punkte
0
Vielen Dank schon mal für die ersten Hilfen! Damit habe ich schon mal einiges geschafft.
Jetzt stehe ich vor einem anderen Problem, dass wahrscheinlich mit meiner Unerfahrenheit mit Linux zu tun hat:

Innerhalb des Skriptes möchte ich eine Datei erzeugen, die selber Skript ist.
Die Datei zu erzeugen ist kein Problem, diese ausführbar zu machen auch nicht.

Innerhalb des Skriptes bin ch wie folgt vorgegangen:

Nach dem Erzeugen der Datei habe ich den Befehl
echo -n "
eingegeben und anschließend den Text der neuen Datei bzw. des neuen Skriptes geschrieben. Am Ende steht natürlich wieder ein
"
und in die Datei will ich das dann mit
>
umleiten, so dass das am Ende schematisch so aussieht:

echo -n "
TextTextText
" > neuedatei.sh
chmod 744 /Pfad/neuedatei

Innerhalb dieser Datei (die das im Forum zur Verfügung gestellte "neue" Optware-Skript ist, das angelegt werden soll, wenn das alte iauskommentiert wird) befinden sich aber weitere "..", so dass zumindest innerhalb von VI dort der zusammenhängende Text des neuen Skriptes anders eingefärbt wird. Das macht mich unsicher, ob das am Ende trotzdem zusammenhängend in die Datei geschrieben wird oder ob ich das ganze noch mit einer bestimmten Form von Klammern zusammen halten muss.

Vielen Dank schon mal für die Antworten, die man in diesem Forum offentlichlich schnell und gut bekommt! Ich bin darüber sehr erfreut!
 

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
2
Punkte
84
Die Gänsefüßchen musst Du dann escapen: \"
 

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
2
Punkte
84
Die im echo. Also bei >echo "bla und \"blub\""< kommt dann >bla und "blub"< raus.
 

chrisrich

Benutzer
Mitglied seit
13. Sep 2012
Beiträge
25
Punkte für Reaktionen
0
Punkte
0
Jetzt hänge ich an noch einem weiteren sed-Befehl:

sed -n '^snapshot_root\s.*$/^snapshot_root\t/volumeUSB1/synodaten_backup/' /opt/etc/rsnapshot.conf

gibt mir die Fehlermeldung <unsupported command ^> und wenn ich das Dach bein einzusetzenden Pfad wegnehme kommt die Meldung <bad option in substitution expression>

Hat jemand eine Idee, was daran falsch sein könnte? Anscheinend habe ich manches von RegEx trotz mehreren Hilfeseiten noch nicht richtig verstanden.
Für Antworten bin ich sehr dankbar.
 

chrisrich

Benutzer
Mitglied seit
13. Sep 2012
Beiträge
25
Punkte für Reaktionen
0
Punkte
0
Nach einigen Versuchen und weiterer externe Hilfe ist jetzt folgendes rausgekommen, falls jemand mitliest und die Lösung wissen möchte:

sed -i (-n nur zum testen) 's|^snapshot_root\s.*$|snapshot_root\t/volumeUSB1/synodaten-backup/|g' /opt/etc/rcsnapshot.conf

Funktioniert bei mir einwandfrei. Ein evtl. p am Ende sollte weggelassen werden, da die Zeile sonst doppelt geschrieben wird.
 

chrisrich

Benutzer
Mitglied seit
13. Sep 2012
Beiträge
25
Punkte für Reaktionen
0
Punkte
0
Ich bin schon ein gutes Stück weitergekommen - vielen Dank für die Tipps ud Hilfen!

Der erste Teil steht, so dass ich den schon mal habe Probelaufen lassen.
Leider scheint das Skript ab Zeile 57 (Installation von make) nicht mehr zu arbeiten.

Ich finde bisher aber den Fehler nicht.
Hat jemand eine Idee?
Sobald das fertig ist, stelle ich das auch gerne irgendwo zur Verfügung, sobald ich weiß wie und wo.

In diesem ersten Teil geht es erst mal darum eine Datensicherung mit Generationsbackup zu erstellen, was mit rsnapshotz realisiert werden soll. Alles weitere kommt später dazu.

Hier ein Ausschnitt aus dem, was ich bisher geschrieben habe:

Rich (BBCode):
#!/bin/sh

# /root/synoback.sh

# Generationsbackup fuer die Synology DS-712+
# mit Intel-Atom CPU
# /root/scripts/synogenbackup.sh

# Genutzt werden die beiden Tools rsnapshot und crond.

# ### ########################################################### ###
# ### Fuer die Installation werden Vorbereitungen getroffen:      ###
# ### ########################################################### ###

# Es wird das Verzeichnis angelegt, in dem die Datei
# gespeichert wird und in dieses Verzeichnis gewechselt

mkdir -p /volume1/public
cd /volume1/public

# ### SPRUNG IN DAS VERZEICHNIS /volume1/public/ <--<--<--<--<--<--<--<--

# In der Shell eingeloggt als root wird herausgefunden
# ob die DS mit einer Intel-Atom CPU ausgestattet ist.
# Dieses Skript ist ausschliesslich fuer die Installation
# dieser CPU ausgelegt und geeignet. Bei allen anderen 
# CPU-Modellen bricht es ab.
# Wird eine Intel-Atom-CPU-Modell ausgelesen laedt das
# Skript die passende Installationsdatei fuer das
# Itsy-Package-Management herunter, welches fuer die
# Installation von rsnapshot, rsync und crond gebraucht
# wird.

cat /proc/cpuinfo | grep 'model name'=$cpumodel

if	[ $CPUINFO='*Intel*' ]
	then
		# echo "richtige CPU"
		wget http://ipkg.nslu2-linux.org/feeds/o...s/unstable/syno-i686-bootstrap_1.2-7_i686.xsh
	else
		echo "dieses Skript ist fÃr die CPU
dieser Diskstation nicht geeignet"
	exit 1
fi

# Das heruntergeladene Paket wird installiert

sh syno-i686-bootstrap_1.2-7_i686.xsh

# In der .profile von root werden zwei Zeilen auskommentiert

sed -ri '/^\s*#/!{/(PATH=|export)/s/(.*)/#\1/}' /root/.profile

# Die heruntergeladene Installationsdatei wird geloescht

rm syno-i686-bootstrap_1.2-7_i686.xsh

# Die Liste der verfuegbaren Pakete wird aktualisiert

ipkg update

# Um heruntergeladene Pakete mit Makelfile installieren zu koennen
# wird aus den Paketquellen make installiert.
# vorher wird ueberprueft, ob das Paket make schon installiert ist

if	ipkg list_installed | grep make
	then exit 1

else 	ipkg install make
fi
 
Zuletzt bearbeitet:

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
2
Punkte
84
Die Neuanmeldung ist, damit die Pfade und so aus der angepassten .profile auch übernommen werden. Wenn Du das nicht machen willst, dann die passenden set/export-Befehle aufnehmen.

Außerdem wird opt dort schon richtig eingehängt oder passiert das nur beim Neustart?
 

chrisrich

Benutzer
Mitglied seit
13. Sep 2012
Beiträge
25
Punkte für Reaktionen
0
Punkte
0
Wie kann ich denn die passenden set/export-Befehle aufnehmen?
Kann ich die .profile neu einlesen lassen oder was meinst Du genau?

Und hat das auch auswirkungen darauf, dass die nachfolgenden Pakete nicht mehr installiert werden?
Leider habe ich den Zusammenhang zwischen dem Optware-Skript und dem Installieren über ipkg noch nicht richtig verstanden. Daher meine vielleicht nicht so sinnvoll erscheindende Frage.

Zusatz: Im Synology-Wiki habe ich unter dem Synology-Toolset den Befehl "login" gesehen.
Könnte ich damit durch das Skript neu anmelden und dadurch die verändert .profil neu einlesen und den Rest des Skriptes in der neu geöffnetet Session laufen lassen?
 
Zuletzt bearbeitet:

chrisrich

Benutzer
Mitglied seit
13. Sep 2012
Beiträge
25
Punkte für Reaktionen
0
Punkte
0
Hier noch mal das vollständige Skript, damit der Zusammenhang deutlich wird:

Code:
#!/bin/sh

# /root/scripts/synoback.sh

# Generationsbackup fuer die Synology DS-712+
# mit Intel-Atom CPU
# /root/scripts/synogenbackup.sh

# Genutzt werden die beiden Tools rsnapshot und crond.

# ### ########################################################### ###
# ### Fuer die Installation werden Vorbereitungen getroffen:      ###
# ### ########################################################### ###

# Es wird das Verzeichnis angelegt, in dem die Datei
# gespeichert wird und in dieses Verzeichnis gewechselt

mkdir -p /volume1/public
cd /volume1/public

# ### SPRUNG IN DAS VERZEICHNIS /volume1/public/ <--<--<--<--<--<--<--<--

# In der Shell eingeloggt als root wird herausgefunden
# ob die DS mit einer Intel-Atom CPU ausgestattet ist.
# Dieses Skript ist ausschliesslich fuer die Installation
# dieser CPU ausgelegt und geeignet. Bei allen anderen 
# CPU-Modellen bricht es ab.
# Wird eine Intel-Atom-CPU-Modell ausgelesen laedt das
# Skript die passende Installationsdatei fuer das
# Itsy-Package-Management herunter, welches fuer die
# Installation von rsnapshot, rsync und crond gebraucht
# wird.

cat /proc/cpuinfo | grep 'model name'=$cpumodel

if	[ $CPUINFO='*Intel*' ]
	then
		# echo "richtige CPU"
		wget http://ipkg.nslu2-linux.org/feeds/optware/syno-i686/cross/unstable/syno-i686-bootstrap_1.2-7_i686.xsh
	else
		echo "dieses Skript ist fÃr die CPU
dieser Diskstation nicht geeignet"
	exit 1
fi

# Das heruntergeladene Paket wird installiert

sh syno-i686-bootstrap_1.2-7_i686.xsh

# In der .profile von root werden zwei Zeilen auskommentiert

sed -ri '/^\s*#/!{/(PATH=|export)/s/(.*)/#\1/}' /root/.profile

# Die heruntergeladene Installationsdatei wird geloescht

rm syno-i686-bootstrap_1.2-7_i686.xsh

# Die Liste der verfuegbaren Pakete wird aktualisiert

ipkg update

# Um heruntergeladene Pakete mit Makelfile installieren zu koennen
# wird aus den Paketquellen make installiert.
# vorher wird ueberprueft, ob das Paket make schon installiert ist

if	ipkg list_installed | grep make
	then exit 1

else 	ipkg install make
fi

# Um von allen Veraenderungen ein Logfile zu erhalten wird log4sh
# heruntergeladen, entpackt und installiert

# ### SKRIPT-ABLAUF BEFINDET SICH NOCH IN /volume1/public/  <--<--<--<--<--<--<--<--<--<--<--<--

wget http://downloads.sourceforge.net/project/log4sh/log4sh%201.4.X%20%28stable%29/1.4.2/log4sh-1.4.2.tgz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Flog4sh%2Ffiles%2Flog4sh%25201.4.X%2520%2528stable%2529%2F1.4.2%2F&ts=1348150663&use_mirror=heanet

tar -xvfz log4sh-1.4.2.tgz

make -C /log4sh-1.4.2/Makefile

# Sichern der Optware-Installation inkl. Einstellungen

OPTWARE="/volume1/@optware /etc/rc.optware /etc/rc.local /usr/local/etc/rc.d/optware.sh"
BACKUPDIR="/volume1/backup_data"
#
BACKUPFILE=optware-backup-`date +%a`.tar.bz2
tar -cjf ${BACKUPDIR}/${BACKUPFILE} ${OPTWARE}


# Das originale Startup-Skript /etc/rc.local wird angepasst, um
# bekannte Probleme beim Herunterfahren zu vermeiden. Dazu werden
# zwei Zeilen auskommentiert, in denen Optware Startup Skripte
# aufgerufen werden. Ausserdem wird der mount bind von /opt durch
# einen symbolischen Link von /volume1/@optware auf /opt ersetzt

sed -ri '/^\s*#/!{/(\[)/s/(.*)/#\1/}' /etc/rc.local

# umount /opt
# rmdir /opt
# ln -s /volume1/@optware /opt

# Optware bekommt ein neues, separates Startup Skript

mkdir -p /usr/local/etc/rc.d/

touch /usr/local/etc/rc.d/optware.sh

echo -n "
#!/bin/bash

# Optware-Setup
# Alternatives Optware Startup und Shutdown Script #/usr/local/etc/rc.d/optware.sh
#
case $1 in
start)
       for i in /opt/etc/init.d/S??* ;do
#
               # Ignore dangling symlinks (if any).
               [ ! -f /"$i/" ] && continue
#
               case /"$i/" in
                  *.sh)
                       # Source shell script for speed.
                       (
                               trap - INT QUIT TSTP
                               set start
                               . $i
                       )
                       ;;
                  *)
                       # No sh extension, so fork subprocess.
                       $i start
                       ;;
               esac
       done
       ;;
#
stop)
#
       for i in /opt/etc/init.d/S??* ;do
#
               # Ignore dangling symlinks (if any).
               [ ! -f /"$i/" ] && continue
#
               case /"$i/" in
                  *.sh)
                       # Source shell script for speed.
                       (
                               trap - INT QUIT TSTP
                               set stop
                              . $i
                       )
                       ;;
                  *)
                       # No sh extension, so fork subprocess.
                       $i stop                       ;;
               esac
         done
         ;;
#
*)
         echo /"Usage: $0 [start|stop]/"
         ;;
esac
#
# End
" > /usr/local/etc/rc.d/optware.sh

# Das neu erstellte Skript wird ausfuehrbar gemacht

chmod +x /usr/local/etc/rc.d/optware.s

# ### ########################################################### ###
# ### Die benoetigten Tools rsnapshot, rsync und crond werden     ###
# ### installiert und konfiguriert                                ###
# ### ########################################################### ###

# Installation von rsync, crond und rsnapshot

ipkg install rsync crond rsnapshot


# ### Konfiguration #################################################

# Speicherort des Backups wird gesetzt

sed -i 's|^snapshot_root\s.*$|snapshot_root\t/volumeUSB1/synodaten-backup/|g' /opt/etc/rsnapshot.conf

# fuer ein Backup auf externen Medien wird no_create_root auf 1 gesetzt,
# damit das Verzeichnis nicht automatisch erstellt wird. Bei lokalen
# Backups kann die 1 auf 0 gesetzt werden, dann wird das snapshot_root
# Verzeichnis automatisch erstellt

sed -i 's|^no_create_root\s.*$|no_create_root\t1|g' /opt/etc/rsnapshot.conf

# Setzen der Backup-Intervalle fuer das stuendliche, taegliche, woechentliche
# und monatliche Backup. Die Intervallzahl muss mit der /etc/crontab abgestimmt werden

sed -i 's|^interval\shourly\s.*$|interval\thourly\t7|g' /opt/etc/rsnapshot.conf
sed -i 's|^interval\sdaily\s.*$|interval\tdaily\t7|g' /opt/etc/rsnapshot.conf
sed -i 's|^interval\sweekly\s.*$|interval\tweekly\t4|g' /opt/etc/rsnapshot.conf
sed -i 's|^interval\smonthly\s.*$|interval\tmonthly\t3|g' /opt/etc/rsnapshot.conf

#  Setzen des Loglevels
# 1     Quiet           Print fatal errors only
# 2     Default         Print errors and warnings only
# 3     Verbose         Show equivalent shell commands being executed
# 4     Extra Verbose   Show extra verbose information
# 5     Debug mode      More than you care to know

sed -i 's|^loglevel\s.*$|loglevel\t2|g' /opt/etc/rsnapshot.conf

# Setzen des Pfades fuer die Logdatei

sed -i 's|^logfile\s.*$|logfile\t/opt/var/log/rsnapshot|g' /opt/etc/rsnapshot.conf


# ### ########################################################### ###
# ### Fuer das erste - manuelle - Backup wird screen installiert, ###
# ### damit die Konsole waehrenddessen geschlossen werden darf.   ###
# ### ########################################################### ###

# Installation von screen

ipkg install screen

# damit das erste Backup mit dem Skript ausgefuehrt wird 
# muss die folgende Zeile auskommentiert werden.

# /opt/bin/screen rsnapshot hourly


# ############################################################### ###
# ### Pfade werden gesetzt von 	                                  ###
# ### <backup /zu sichernder Ort/ Sicherungsort/>                 ###
# ############################################################### ###

# ### ########################################################### ###
# ### Standardverzeichnisse der DS                                ###

# ### Befehle muessen ein- bzw. auskommentiert werden jenachdem   ###
# ### ob die Verzeichnisse  gesichert werden sollen oder nicht    ###

# ## Verzeichnis /home/ soll
# --> gesichert werden
sed -ri 's|^\(\s*\)#\(.*/home/.*\)|\1 \2|'  /opt/etc/rsnapshot.conf
# --> nicht gesichert werden
sed 's|^\(\s*\)\(.*/home/.*\)|#\1 \2|'  /opt/etc/rsnapshot.conf


# ## Verzeichnis /etc/ soll
# --> gesichert werden
sed -ri 's|^\(\s*\)#\(.*/etc/.*\)|\1 \2|'  /opt/etc/rsnapshot.conf
# --> nicht gesichert werden
sed 's|^\(\s*\)\(.*/etc/.*\)|#\1 \2|'  /opt/etc/rsnapshot.conf


# ## Verzeichnis /opt/etc/ soll
# --> gesichert werden
sed -ri 's|^\(\s*\)#\(.*/opt/etc/.*\)|\1 \2|'  /opt/etc/rsnapshot.conf
# --> nicht gesichert werden
sed 's|^\(\s*\)\(.*/opt/etc/.*\)|#\1 \2|'  /opt/etc/rsnapshot.conf

# ## Verzeichnis /usr/local/ soll
# --> gesichert werden
sed -ri 's|^\(\s*\)#\(.*/usr/local/.*\)|\1 \2|'  /opt/etc/rsnapshot.conf
# --> nicht gesichert werden
sed 's|^\(\s*\)\(.*/opt/local/.*\)|#\1 \2|'  /opt/etc/rsnapshot.conf

# ## Verzeichnis /etc/passwd/ soll
# --> gesichert werden
sed -ri 's|^\(\s*\)#\(.*/etc/passwd/.*\)|\1 \2|'  /opt/etc/rsnapshot.conf
# --> nicht gesichert werden
sed 's|^\(\s*\)\(.*/etc/passwd/.*\)|#\1 \2|'  /opt/etc/rsnapshot.conf

# ### ############################################################ ###
# ### zusaetzlich zu sichernde Verzeichnisse der DS                ###

# ### es koennen beliebige und beliebig viele zu sichernde         ###
# ### Verzeichnisse hinzugefuegt werden                            ### 
# ### /VERZEICHNIS/ muss mit den entsprechenden Verzeichnissen     ###
# ### ersetzt werden

echo -e "backup\t/testdaten/\t\tlocalhost/" >> /opt/etc/rsnapshot.conf

# echo -e "backup\t/VERZEICHNIS/\t\tlocalhost/" >> /opt/etc/rsnapshot.conf
# echo -e "backup\t/VERZEICHNIS/\t\tlocalhost/" >> /opt/etc/rsnapshot.conf
# echo -e "backup\t/VERZEICHNIS/\t\tlocalhost/" >> /opt/etc/rsnapshot.conf
 

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
2
Punkte
84
Bei der Installation von IPKG wird /opt neu angelegt und dann eingehängt (mount). Wie gesage müsstest Du schauen, ob das mount auch schon im syno-i686-bootstrap_1.2-7_i686.xsh erfolgt oder erst beim Reboot. Für das aktualisierte Profile siehe http://ss64.com/bash/period.html.
 

chrisrich

Benutzer
Mitglied seit
13. Sep 2012
Beiträge
25
Punkte für Reaktionen
0
Punkte
0
Moin Merthos!

Danke für Deine Antwort.
Nun habe ich versucht in das syno-i686-bootstrap_1.2-7_i686.xsh reinzuschauen, aber wenn das mit vi öffne sehe ich nur Zeichen, die mir nichts sagen. Gibt es da ein anderes Programm oder einen Schalter für?

Alternativ könnte ich das noch auf einem Computer mit Notepad++ öffnen, was ich mal versuchen werde, aber direkt unter Linux wäre mir das eigentlich lieber.

Um die Fehlerquellen besser zu finden habe ich das Skript jetzt in die jeweiligen einzelnen Abschnitte unterteilt (Das Hauptskript startet die jetzt nacheinander).
Nach dem Ausführen von dem ersten Teil, der ipkg installiert kam die Meldung, dass ich das System neustarten soll. Diese Aussage sollte ich demnach berücksichtigen, oder?

Laut http://www.synology-wiki.de/index.p...r_Kommandozeile#Neustart_der_Synology_Station mache ich das, in dem ich den Befehl reboot ausführe. Das lässt sich ja in das Skript einarbeiten.

Wie kann ich anschließend den weiteren Teil des Skriptes ausführen lassen, nachdem die DS gestartet ist? Gibt es z.B. eine Crontab-Option, die nur einmal ausgeführt wird und sich dann löscht? Bisher habe ich das in den Beschreibungen von cron nicht gefunden. Oder bin ich mit dieser Idee auf dem Holzweg?
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.160
Punkte für Reaktionen
407
Punkte
393
Hallo,
Nun habe ich versucht in das syno-i686-bootstrap_1.2-7_i686.xsh reinzuschauen, aber wenn das mit vi öffne sehe ich nur Zeichen, die mir nichts sagen. Gibt es da ein anderes Programm oder einen Schalter für?
zuerst den header abschneiden
Rich (BBCode):
dd if=syno-i686-bootstrap_1.2-7_i686.xsh of=bootstrap.tgz bs=205 skip=1
dann Paket auspacken
Rich (BBCode):
tar -xzvf bootstrap.tgz
dann kannst Du Dir alles anschauen.

Gruß Götz
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat