Hallo,
ich nutze einen Cubietruck mit (einem älteren) Igor-Image als Server für mein FHEM (und ein paar Dinge daneben). Ich mache zwar regelmäßig Backups vom FHEM und sichere diese auch auf meinem NAS. Da ich aber wie gesagt neben FHEM auch andere Dinge laufen, würde es mir ein bisschen mehr Sicherheit geben, wenn ich ein Image meines Servers hätte, das ich im Notfall schnell wiederherstellen könnte. Da ich den Server aus verständlichen Gründen nicht längere Zeit herunterfahren möchte, suche ich eine Möglichkeit, im laufenden ein Image-Backup zu machen. Ich habe ein Image mit dd erstellt, bin mir aber nicht sicher, ob das im laufenden Betrieb sicher ist?
Meine zweite Frage: Ich habe wie gesagt vor längerer Zeit den Cubietruck mit dem Igor-Image eingerichtet. Nun Frage ich mich, ob sinnvoll und einfach möglich wäre, den Cubietruck upzudaten? Was müsste ich hierfür tun? Ein neue Image einzuspielen ist keine Option für mich, da ich keine Lust habe, alles neu installieren zu müssen...
Vielen Dank
Ronny
updates machen schon sinn, je nach dem was sich änder (findest du auf der seite http://www.igorpecovnik.com/2013/12/24/cubietruck-debian-wheezy-sd-card-image/)
es gab zb sinnvolles zum bt oder auch zu dne energieoptionen http://forum.fhem.de/index.php/topic,28754.msg216544.html#msg216544
thema vollbackup unter linux im betreib würde mich auch interessieren :-)
Zitat von: chris1284 am 11 März 2015, 19:18:53
updates machen schon sinn
Bleibt noch die Frage, wie ich es anstelle, ohne das Image neu einzuspielen...
steh in dem thread den ich verlinkt hatte ;)
« Antwort #5 am: 07 November 2014, 20:56:03 »
Zitat von: chris1284 am 11 März 2015, 19:28:32
steh in dem thread den ich verlinkt hatte ;)
Sorry, hatte ich nicht reingesehen. Da stellen sich neue Fragen:
1. Ich habe zur Zeit die Version "3.4.104-sunxi", bei Igor gibt's die Versionen 3.4.106 und 3.19.0 - nehme ich da die 3.19?
2. Du schreibst im anderen Thread
Zitat von: chris1284 am 08 November 2014, 07:28:53
allerdings musste ich noch nach dem entpacken nach /
nand1 mounten und uImage aus /boot dorthin kopieren. erst dann ergab uname -a die reichtige Version 3.4.104-sunxi aus
Das verstehe ich nicht ganz? Ich mounte nand1 nach / und kopiere uImage aus dem nach /boot entpacktem Archiv dahin (nach /)? Mein Verzeichnis /boot ist (momentan noch) leer - passt das?
Vielen Dank für deine Hilfe...
Ronny
Hallo
Eigentlich sollte doch ein
sudo apt-get update
sudo apt-get dist-upgrade
reichen, um das System nach dem, was in der sources.list steht, zu aktualisieren!
Der evtl. neue Kernel wird doch separat in eimem "Tar-File" angeboten.
Die darin enthaltenen *.deb-Files mit
sudo dpkg-i <deb-Files>
installieren. Und gut ist.
Ich habe einen Banana Pi mit Igor-Image, die beiden ersten Befehle führe ich öfters aus und letzteren würde ich so machen!
Wenn ich mir unsicher bin/wäre, ob noch anderes im Image geändert wurde...dann neu installieren!
CK.
Zitat von: le66ck am 11 März 2015, 20:42:21
Hallo
Eigentlich sollte doch ein
sudo apt-get update
sudo apt-get dist-upgrade
reichen, um das System nach dem, was in der sources.list steht, zu aktualisieren!
Der evtl. neue Kernel wird doch separat in eimem "Tar-File" angeboten.
Die darin enthaltenen *.deb-Files mit
sudo dpkg-i <deb-Files>
installieren. Und gut ist.
Ich habe einen Banana Pi mit Igor-Image, die beiden ersten Befehle führe ich öfters aus und letzteren würde ich so machen!
Wenn ich mir unsicher bin/wäre, ob noch anderes im Image geändert wurde...dann neu installieren!
CK.
Klingt nach einem guten Weg - jetzt muss ich nur noch die Möglichkeit für's Backup finden, damit ich was für den Notfall habe...
Zitat von: le66ck am 11 März 2015, 20:42:21
Hallo
Eigentlich sollte doch ein
sudo apt-get update
sudo apt-get dist-upgrade
installieren. Und gut ist.
Nö geht nicht, ist auch kein pi / banana. Du bekommst den neuen kernel so nicht.... ich zitiere mal den igor
ZitatKernel can be updated only manual way and if you run newer version of image (kernel is packed as vmlinuz). Download a tar pack below, unpack and install all .deb files. If the numbers / name of kernel is different than your current one, you only need to alter boot script (boot.cmd / boot-next.cmd). When you match the name and numbers with the new kernel you need to convert that .cmd file to boot.scr with: mkimage -C none -A arm -T script -d boot.cmd boot.scr and reboot.
dist-upgrade und kernel-update haben nicht sonderlich viel miteinander zu tun.
Und dist-upgrade funktioniert sehr wohl auch beim Cubietruck, es geht, wie der Name schon sagt, um ein Upgrade der Linux-Distribution und darin ist standardmäßig ein Kernel-Update nicht enthalten. Der Raspi ist da ein Sonderfall.
Ein Kernel-Update auf dem Cubietruck geht übrigens auch einfacher als mit den vielen .deb files und der Umbenennungs-Orgie.
Hier: http://mirror.igorpecovnik.com/kernel/
gibt es tar-Files, die man einfach durch Entpacken im Dateisystemroot installieren kann - dann reicht ein reboot, um den neuen Kernel zu aktivieren.
Mit den aktuell angebotenen gepackten .deb-Files habe ich mir schonmal einen CT komplett zerschossen...
Zitat von: RoBra81 am 11 März 2015, 21:15:59
jetzt muss ich nur noch die Möglichkeit für's Backup finden, damit ich was für den Notfall habe...
Ein Backup würde ich nie als Image machen, sondern immer dateibezogen. Einfachste Lösung: alle benötigten Dateien mit rsync irgendwohin clonen. Das Betriebssystem selbst würde ich gar nicht mitsichern.
Zitat von: betateilchen am 11 März 2015, 21:28:23
Hier: http://mirror.igorpecovnik.com/kernel/
gibt es tar-Files, die man einfach durch Entpacken im Dateisystemroot installieren kann - dann reicht ein reboot, um den neuen Kernel zu aktivieren.
Sprich von dort einfach aus der cubietruck-next_kernel_3.18.1_mod_head_fw.zip die .tar nehmen, im root entpacken und dann reboot? Oder muss die Installation auf dem Cubietruck irgendwelche Voraussetzungen erfüllen (z.B. bzgl. Boot NAND, SD-Karte, Festplatte)?
Zitat von: betateilchen am 11 März 2015, 21:30:29
Ein Backup würde ich nie als Image machen, sondern immer dateibezogen. Einfachste Lösung: alle benötigten Dateien mit rsync irgendwohin clonen. Das Betriebssystem selbst würde ich gar nicht mitsichern.
Ich will aber eigentlich im Ernstfall nur so schnell wie möglich ein Image wiederherstellen und nicht erst das Betriebssystem installieren, die Dateien kopieren und am Ende noch irgendwelche Zusatzpakete installieren müssen, die ich vorher installiert und ggf. konfiguriert hatte...
Zitat von: RoBra81 am 11 März 2015, 21:38:20
Ich will aber
wie ein kleines Kind... die glauben auch nicht, dass die Herdplatte heiß ist, bis sie draufgefasst und sich die Finger verbrannt haben.
Aber wie Du meinst, mach nur 8)
@ betateilchen
Hast Du mal in die "Tar-Files" reingeschaut?
Das für mich passende File enthält "deb-Files"!
@chris1284
ZitatNö geht nicht, ist auch kein pi / banana. Du bekommst den neuen kernel so nicht.... ich zitiere mal den igor
Ich denke schon, nur dass noch mehr zu machen ist als dpkg -i ...
CK
Zitat von: le66ck am 11 März 2015, 21:42:17
@ betateilchen
Hast Du mal in die "Tar-Files" reingeschaut?
Ja. Und sogar vor nicht allzu langer Zeit ein Kernelupdate auf meinem CT gemacht. Ohne .deb Dateien.
@ betateilchen
Dann leg doch Deine "Karten" auf den Tisch...
Zeig wie es geht, ich bin nicht allwissend!?
CK
Zitat von: betateilchen am 11 März 2015, 21:39:37
wie ein kleines Kind... die glauben auch nicht, dass die Herdplatte heiß ist, bis sie draufgefasst und sich die Finger verbrannt haben.
Ich möchte mir eben nicht die Finger verbrennen und daher ein Backup haben, bei dem ich nicht Stunden brauche bis ich das Licht wieder einschalten kann...
Zitat von: RoBra81 am 11 März 2015, 21:55:40
Ich möchte mir eben nicht die Finger verbrennen und daher ein Backup haben, bei dem ich nicht Stunden brauche bis ich das Licht wieder einschalten kann...
Image im Betrieb sind im Prinzip unsicher. Kann funktionieren, muss aber nicht.
Fahren den CT runter, nehme die Karte raus, klone sie und lege die Kopie in die Schublade. Dann kannst Du gefahrlos updaten, was Du willst ;)
An einem Backup als Image hätte ich auch großes Interesse. Das ist für den Notfall genau das Richtige.
Optimal wäre eine automatische Sicherung des Systems in der Nacht, damit das Backup auch immer aktuell ist.
Ist das realisierbar?
Ein dateibezogenes Backup kann man ja immer noch zusätzlich erstellen.
Zitat von: hexenmeister am 11 März 2015, 22:26:09
Fahren den CT runter, nehme die Karte raus, klone sie und lege die Kopie in die Schublade. Dann kannst Du gefahrlos updaten, was Du willst ;)
Ich habe aber zum einen keine SD-Karte sondern eine SSD (die ich nicht so einfach irgendwo anschließen und clonen kann) und zum anderen funktioniert das Haus in der Zeit nur sehr eingeschränkt :-[
Ich habe mir ein Image mit einen Sata auf USB Adapter gezogen
Zitat von: Spezialtrick am 11 März 2015, 22:30:13
Optimal wäre eine automatische Sicherung des Systems in der Nacht, damit das Backup auch immer aktuell ist.
Ist das realisierbar?
Schon. Ich benutze folgendes Script:
#!/bin/bash
# Setting up directories
SUBDIR=sd_backups
DIR=/mnt/data/data/_bak/$SUBDIR
# should image be compressed (tar)? (1=Yes, 0=No)
COMPRESS_IMAGE=0
echo "Starting SD backup process!"
# First check if pv package is installed, if not, install it first
PACKAGESTATUS=`dpkg -s pv | grep Status`;
if [[ $PACKAGESTATUS == S* ]]
then
echo "Package 'pv' is installed."
else
echo "Package 'pv' is NOT installed."
echo "Installing package 'pv'. Please wait..."
sudo apt-get -y install pv
fi
# Check if backup directory exists
if [ ! -d "$DIR" ];
then
echo "Backup directory $DIR doesn't exist, creating it now!"
sudo mkdir $DIR
fi
# Create a filename with datestamp for our current backup (without .img suffix)
OFILE="$DIR/backup_$(date +%Y%m%d_%H%M%S)"
# Create final filename, with suffix
OFILEFINAL=$OFILE.img
# First sync disks
sync; sync
# Shut down some services before starting backup process
echo "Stopping some services before backup."
sudo service cron stop
sudo service apache2 stop
sudo service mysql stop
# Begin the backup process, should take about 1 hour from 8Gb SD card to HDD
echo "Backing up SD card to USB HDD."
echo "This will take some time depending on your SD card size and read performance. Please wait..."
SDSIZE=`sudo blockdev --getsize64 /dev/mmcblk0`;
sudo pv -tpreb /dev/mmcblk0 -s $SDSIZE | sudo dd of=$OFILE bs=1M conv=sync,noerror iflag=fullblock
# Wait for DD to finish and catch result
RESULT=$?
echo "Result: $RESULT"
# Start services again that where shutdown before backup process
echo "Start the stopped services again."
sudo service mysql start
sudo service apache2 start
sudo service cron start
# If command has completed successfully, delete previous backups and exit
if [ $RESULT = 0 ];
then
# should image be compressed (tar)?
if [ $COMPRESS_IMAGE = 1 ];
# compress image
then
echo "Successful backup, previous backup files (tar.gz) will be deleted."
rm -f $DIR/backup_*.tar.gz
mv $OFILE $OFILEFINAL
echo "Backup is being tarred. Please wait..."
tar zcf $OFILEFINAL.tar.gz $OFILEFINAL
rm -rf $OFILEFINAL
echo "SD backup process completed! FILE: $OFILEFINAL.tar.gz"
exit 0
# Else remove old images
else
echo "Successful backup, previous backup files (img) will be deleted."
rm -f $DIR/backup_*.img
mv $OFILE $OFILEFINAL
exit 0
fi
# Else remove attempted backup file
else
echo "Backup failed! Previous backup files untouched."
echo "Please check there is sufficient space on the HDD."
rm -f $OFILE
echo "SD backup process failed!"
exit 1
fi
Aufgerufen wird jede Nacht per cron.
Aber wie gesagt, ein Backup im Betrieb ist nicht sicher!
Daher sichere ich eigen Module, Configuration und FHEM-Logs noch mal zusätzlich.
Zitat von: RoBra81 am 11 März 2015, 22:38:29
Ich habe aber zum einen keine SD-Karte sondern eine SSD (die ich nicht so einfach irgendwo anschließen und clonen kann) und zum anderen funktioniert das Haus in der Zeit nur sehr eingeschränkt :-[
Da bin ich froh, dass ich darauf geachtet habe, dass alles auch ohne Server per Hand bedienbar ist. Auch wenn ohne jegliche Automatik. Kurzzeitig problemlos verschmerzbar ;)
Ich habe auch eine Platte im System (allerdings keine SSD). Das System bootet jedoch von der Karte (alles wichtige liegt aber auf HDD). Der Grund ist die Möglichkeit, das System schnell wieder zu beleben. Ich habe einfach eine Kopie der Karte liegen. Geht die SDCard hops, dann den Backup auf die neue Karter - fertig. Geht Backup nicht - die zurückgelegte Kopie rein, update, fertig. Und wenn auch das scheitert - das System ist schnell installiert, mehr ist auf der Karte ja nicht. Geht HDD kaputt - neue rein, Dateien aus dem (dateibasierten) Backup einspielen, fertig.
Prinzipiell:
Ein Laufendes Linux (Unix) System zu sichern ist ... nicht einfach. Es gibt zwar Mittel dazu, aber diese sind für Laien und ohne Vorarbeit praktisch nutzlos.
Ich würde in diesem Falle auch System clonen und ansonsten Configfiles etc. automatisiert sichern. Automatisiert, damit man es nicht vergisst ;o)