All posts by mik

smartd Device: IOService: …., failed to read SMART Attribute Data

Bei meinem Macbook Pro 13,3″ von Mid 2009 kam bis jetzt in der Konsole jede halbe Stunde folgende Fehlermeldung:


 Critical smartd[47] Device: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/SATA@B/AppleMCP79AHCI/PRT0@0/IOAHCIDevice@0/AppleAHCIDiskDriver/IOAHCIBlockStorageDevice, failed to read SMART Attribute Data
 

Nach viel und langem Recherchieren gibt es wohl einige Möglichkeiten, die dies auslösen, ich will erklären wie ich diese Fehlermeldung losgeworden bin.

Bei meinem Macbook handelt sich um ein MacbookPro5,5 bei dem nach dem Release das EFI Firmware 1.7 Update rauskam, da die 1.6er Version der Firmware kein SATA II (also 3Gb/s) unterstützte, sondern nur SATA I (1,5Gb/s).

Scheinbar gibt es noch einige andere Leute die seit dem Firmware Update mit regelmässigen kurzen Freezes leben müssen.

Mir ist aufgefallen das jedes mal wenn mein Macbook Freezed diese Fehlermeldung vom smartd erscheint, es scheint also als könnte der smartd die SMART Attribute nicht auslesen.

Nach langem suchen in vielen vielen Foren, habe ich erstmal versucht den PRAM und NVRAM meines Mac’s zu resetten, dies funktioniert einfach in dem man direkt nach dem Einschalten die Tasten: Command, Alt, P und R gleichzeitig hält, bis der Apple Startton 2 mal erklingt, eine genauere Beschreibung dazu findet man hier: http://support.apple.com/kb/ht1379

Allerdings half dies nicht wirklich mein Problem zu lösen, auch ein Wechsel auf einer andere Festplatte half hier nichts.

Zur Zeit sieht es aber so aus, als hätte ich mit einem einfachen Kommando das Problem in den Griff bekommen,
welches ich mithilfe des MacPorts (http://www.macports.org/) “smartmontools” realisiert habe.

Nach der Installation von MacPorts kann man dieses Programm einfach mithilfe von “sudo port install smartmontools” installieren.

Mithilfe dieser SMARTMonTools und des Kommandos smartctl habe ich dann auf meiner Festplatte SMART aktiviert.
Dies habe ich getan in dem ich folgenden Befehl ins Terminal getippt habe: “sudo smartctl -s on /dev/disk0”.

Darauf bekam ich folgende Meldung:

smartctl version 5.38 [i386-apple-darwin10.3.0] Copyright (C) 2002-8 Bruce Allen
 Home page is http://smartmontools.sourceforge.net/
=== START OF ENABLE/DISABLE COMMANDS SECTION ===
 SMART Enabled.

Seit dem ich dies getan habe, bekomme ich keine Meldung von smartd mehr, dass er die Attribute nicht auslesen kann.
Ob dies auch nach einem Neustart erhalten bleibt, kann ich noch nicht sagen, da ich bisher noch nicht neugestartet habe.

Ich hoffe ich habe damit das Problem gelöst, sollte dies wirklich nicht die Lösung meines Problems sein, muss ich wohl mittels dieser Anleitung meine EFI Firmware wieder auf 1.6 downgraden und mit SATA I leben.

Update:

Da sich das Problem damit nicht löste, da nach Reboot oder nach dem Schlafen meiner Festplatte SMART wieder deaktiviert war, habe ich mittels “launchctl remove net.sourceforge.smartmontools.smartd” den SMART-Daemon erstmal deaktiviert.

Damit sich der SMART-Daemon nach einem Neustart nicht wieder startet, müssen wir noch die Datei “net.sourceforge.smartmontools.smartd.plist” im Ordner “/Library/LaunchDaemons” löschen.

Update2:

Letztendlich hat sich das Problem als defektes Festplatten-Kabel herausgestellt, das Kabel hatte einen Wackelkontakt.
Dies war super reproduzierbar wenn man das Notebook offen in Betrieb nahm und während dem man am Kabel wackelte ins Systemlog sah.

ERROR: could not find gem mysql locally or in a repository

Beim installieren des rubygems mysql trat bei mir auf meinem debian system heute folgendes auf:

debian:~# gem install mysql
 ERROR: could not find gem mysql locally or in a repository 

Da ich doch ein weilchen gebraucht habe, und Online keine Lösung dazu fand – will ich euch die Lösung nicht vorenthalten! 🙂

Erst dachte ich mir … such ich halt einmal danach:

debian:~# gem search --remote mysql
*** REMOTE GEMS ***
ERROR: While executing gem ... (Gem::RemoteFetcher::FetchError)
 bad response Moved Permanently 301 (http://gems.rubyforge.org/latest_specs.4.8)

Moved Permenently? soso, wohin denn?


 debian:~# wget http://gems.rubyforge.org/latest_specs.4.8
 --2010-07-27 23:30:29-- http://gems.rubyforge.org/latest_specs.4.8
 Auflösen des Hostnamen »gems.rubyforge.org«.... 72.4.120.124
 Verbindungsaufbau zu gems.rubyforge.org|72.4.120.124|:80... verbunden.
 HTTP Anforderung gesendet, warte auf Antwort... 301 Moved Permanently
 Platz: http://rubygems.org/latest_specs.4.8[folge]
 --2010-07-27 23:30:29-- http://rubygems.org/latest_specs.4.8
 Auflösen des Hostnamen »rubygems.org«.... 72.4.120.124
 Wiederverwendung der bestehenden Verbindung zu gems.rubyforge.org:80.
 HTTP Anforderung gesendet, warte auf Antwort... 302 Found
 Platz: http://production.s3.rubygems.org/latest_specs.4.8[folge]
 --2010-07-27 23:30:29-- http://production.s3.rubygems.org/latest_specs.4.8
 --skip--
 

interessant, na dann adden wir doch die neue URL als source und löschen die alte…


debian:~# gem sources -a http://production.s3.rubygems.org/
 http://production.s3.rubygems.org/ added to sources
debian:~# gem sources -r http://gems.rubyforge.org/
 http://gems.rubyforge.org/ removed from sources

so, nun sollte ein "gem install mysql" funktionieren…

debian:~# gem install mysql
 Building native extensions. This could take a while...
 Successfully installed mysql-2.8.1
 1 gem installed

Notiz: wenn "gem install mysql" mit der Meldung: "extconf.rb:10:in `require': no such file to load -- mkmf (LoadError) from extconf.rb:10" oder ähnlich abbricht – dann hilft ein "apt-get install ruby-dev"

Aktuelle iPad Must-Have-Apps

Zusammen mit overclockers.at habe ich die aktuellen Must-Have Apps für das iPad zusammengetragen und aufbereitet, ich hoffe der eine oder andere findet etwas neues was er noch nicht kannte 😉

Kauf-Apps:

Programme:

Pages
Word fürs iPad
Aktueller Preis: 7,99 Euro (14.07.2010)

Numbers
Excel fürs iPad
Aktueller Preis: 7,99 Euro (14.07.2010)

Keynote
Powerpoint fürs iPad
Aktueller Preis: 7,99 Euro (14.07.2010)

Goodreader
Damit lassen sich alle möglichen Dateien runterladen sowie auch zwischen Apps und zwischen Computern im Netzwerk austauschen, kann auch auf (AFP-)Netzwerkshares zugreifen. Und vieles mehr …
Aktueller Preis: 0,79 Euro (14.07.2010)

AirDisplay
iPad als zusätzlichen Monitor für den Mac benutzen
btw. den Konkurrenten iDisplay nicht kaufen, auch wenn es billiger ist – es ist Schrott
Aktueller Preis 7,99 Euro (14.07.2010)

VNC Viewer
VNC Viewer fürs iPad
Aktueller Preis: 7,99 Euro (27.07.2010)

Spiele:

Plants vs. Zombies HD
Verteidigt eurer Haus gegen die Zombies mithilfe von Pflanze die ihr Pflanzt – erinnert ein bisschen an Towerdefense!
Aktueller Preis: 7,99 Euro (27.07.2010)

Galcon Fusion
Galcon fürs iPad – Planeten einnehmen mithilfe von kleinen Schiffchen
Aktueller Preis: 5,99 Euro (27.07.2010)

Piyo Blocks 2 HD
Demo hier: Piyu Blocks 2 HD LITE
Aktueller Preis: 2,39 Euro (27.07.2010)

Osmos for iPad
Man ist eine Art “Bakterie” und muss in dem man die anderen “frisst” größer werden als die anderen – aber achtung: man kann auch “gefressen” werden
Aktueller Preis: 3,99 Euro (27.07.2010)

Monkey Island 2 Special Edition: LeChuck’s Revenge for iPad
Das gute alte Monkey Island, jetzt auch fürs iPad!
Demo hier: Monkey Island 2 Special Edition: LeChuck’s Revenge for iPad – LITE
Aktueller Preis: 7,99 Euro (27.07.2010)

Samurai: Way of the Warrior HD
Metzel als Samurai durch die Levels – mit Comic-Zwischensequenzen!
Aktueller Preis: 3,99 Euro (27.07.2010)

UNO HD
UNO fürs iPad – vorallem im Online-Multiplayer richtig Spaßig! (zu zweit auf einem ipad eher mühsam!)
Aktueller Preis: 3,99 Euro (27.07.2010)

Train Conductor2: USA
Bringe die Züge in die Richtige Bahn – aber Vorsicht wegen Zusammenstößen!
Aktueller Preis: 0,79 Euro (27.07.2010)

Civilization Revolution for iPad
Civilization für das iPad!
Aktueller Preis: 10,49 Euro (27.07.2010)

Need for Speed Shift for iPad
Need for Speed fürs iPad – wohl eines der besten Rennspiele am iPad zur Zeit!
Aktueller Preis: 10.49 Euro (27.07.2010)

Command & Conquer Alarmstufe Rod für iPad
Command & Conquer am ipad – macht echt Spaß im Multiplayer zu zweit! 🙂
Aktueller Preis: 7,99 Euro (27.07.2010)

Flight Control hd
Versuche die Flieger und Hubschrauber sicher zu landen auf ihren Landebahnen – ohne zusammenstoß!
Aktueller Preis: 3,99 Euro (27.07.2010)

Gratis-Apps:

Programme:

Dropbox
Synchronisierter Ordner zwischen iPad, iPhone, Mac, Pc, …

FeeddlerRSS
RSS Reader für Google Reader (gibt auch eine Pro Version – mir hat die freie bis jetzt genügt)
Pro Version: Feeddler RSS Reader Pro (3,99 Euro, 27.07.2010)

Adobe Ideas
Digitaler Zeichenblock

CloudReaders
Comic/Buch Reader

Marvel Comics
Comics von Marvel lesen ink. integriertem Shop!

Flipboard
Twitter, Facebook und noch ein paar Flipboard-eigene News-Feeds in Form eines Magazins!

TeamViewer HD
TeamViewer HD – mobile version des Teamviewers fürs iPad!

Spiele:

Harbor Master HD
Ähnlich wie Flight Control HD – nur mit Schiffen! 🙂

LUDO – Mensch ärgere dich nicht
Mensch ärgere dich nicht, falls man mal das Spielbrett nicht dabei hat 😉

MAC OS X 10.6.3 veröffentlicht!

Apple hat heute das Update 10.6.3 für Mac OS X veröffentlicht!

osx1063-update

Dieses Update behebt 65 Sicherheitslücken in Anwendungen und Systemfunktion, und auch viele andere Probleme mit iChat, Mail, Rosetta, Time Machine, MobileMe und der Kindersicherung.
Das Update ist je nach System bis zu 900MB groß, bei mir hat es eine Größe von 438,7MB!

Laut Beschreibung behebt es ausserdem noch folgende Probleme:

  • Verbesserung der Zuverlässigkeit und Kompatibilität von QuickTime X
  • Kompatibilitätsprobleme mit OpenGL-basierten Programmen
  • Fehlerhafte Darstellung der Farbe von Hintergrundmeldungen in Mail
  • Ein Problem, bei dem Dateien mit den Zeichen „#“ oder „&“ im Dateinamen nicht in Rosetta-Programmen geöffnet werden
  • Ein Problem, bei dem Dateien nicht auf Windows-Dateiserver kopiert werden
  • Verbesserung der Leistung von Logic Pro 9 und MainStage 2 im 64-Bit-Betrieb
  • Verbesserung der Zuverlässigkeit des Ruhezustands und der bedarfsgesteuerten Beendigung des Ruhezustands mit Bonjour
  • Ein Farbproblem in iMovie mit HD-Inhalten
  • Verbesserte Zuverlässigkeit beim Drucken
  • Ein Problem mit wiederkehrenden Ereignissen in iCal bei Verbindung zu einem Exchange-Server
  • Verbesserte Zuverlässigkeit von USB-Eingabegeräten von Drittanbietern
  • Behebung leuchtender, eingefrorener oder schwarzer Pixel bei der Wiedergabe von Videos der integrierten iSight-Kamera von iMacs (Ende 2009)

Ein vollständige Liste der Fixes kann hier gefunden werden.

HowTo: VMWare ESXi Backuplog per E-Mail verschicken

Ich habe ja letzte Woche eine Anleitung veröffentlicht, wie man auf dem VMWare ESXi Hypervisor wunderbar Backups macht.
Allerdings will man natürlich nicht immer nachsehen, ob die Backups nun erfolgreich waren oder nicht.
Deshalb die Idee der ESXi Server könnte doch einfach ein E-Mail schicken mit den Logfile des Backups?

Tja, das Problem ist wohl das der ESXi (wohl aus Sicherheitsgründen) wirklich sehr abgespeckt ist, und deswegen keine Möglichkeit um E-Mails zu versenden besitzt.

Aber ich hab mir da etwas einfallen lassen!

Nach langem suchen bin ich auf die Idee gekommen wir könnten doch einfach E-Mails verschicken mit Hilfe von netcat und einem Shell-Script!
netcat ist hier zu bekommen, ich habe hierbei einfach das i386 RPM-Paket runtergeladen und lokal entpackt.
Darin befindet sich eine netcat Binary die auch auf dem ESXi funktioniert!

Nachdem wir die netcat Binary auf den Server kopiert haben (in meinem Fall unter /vmfs/volumes/primary/custom/netcat), können wir mit folgendem Script E-Mails verschicken: #!/bin/sh

#################################################
 # Author: Michael Simmer
 # Date: 23.10.2010
 # Version: 0.2
 # Contact: http://www.zeux.at/
 #################################################
netcat="/vmfs/volumes/primary/custom/netcat"
 tmp="/tmp/mail"
 hostname=`hostname`
if [ -f $netcat ]
 then
if [ $# -eq 5 ]
 then
 echo -e "HELO $hostname\r" > $tmp
 echo -e "MAIL FROM: $2\r" >> $tmp
 echo -e "RCPT TO: $3\r" >> $tmp
 echo -e "DATA\r" >> $tmp
 echo -e "From: $2\r" >> $tmp
 echo -e "To: $3\r" >> $tmp
 echo -e "Subject: $4\r" >> $tmp
 echo -e "\r" >> $tmp
 if [ -f $5 ]
 then
 awk '{printf("%s\r\n", $0);}' < $5 >> $tmp
 #cat $5 >> $tmp
 #echo -e "\r" >> $tmp
 else
 echo "Error: File not found!"
 rm $tmp
 exit 1
 fi
 echo -e ".\r" >> $tmp
 echo -e "quit\r" >> $tmp
$netcat -i 1 $1 25 < $tmp
rm $tmp
 else
 echo "Usage: ./sendmail.sh     "
 exit 1
 fi
 else
 echo "Error: netcat Binary not found!"
 exit 1
 fi

bzw. sendmail.sh zum Herunterladen.

Das Script ist sehr leicht zu benutzen, einfach ./sendmail.sh [Mailserver] [von E-Mail Adresse] [an E-Mail Adresse] [Betreff] [Datei, dessen Inhalt in der Mail sein soll]
Beispiel: ./sendmail.sh mein.mailserver.com esxi@example.com empfaenger@example.com “ESXi Backup Logfile” /vmfs/volumes/primary/custom/backuplog.txt

Um nun auch ein Backuplog zu haben, das wir verschicken können, müssen wir bei unserem ghettoVCB.sh Script noch -l [/pfad/zum/logfile] anhängen.

Nun gibt es mehrere Möglichkeiten das Backuplog zu verschicken:

1. Wir verschicken das Backuplog per cronjob einige Zeit nach dem Backup per Mail weg.
Dazu brauchen wir einfach einen weiteren cronjob, der das sendmail.sh Script einige Stunden später aufruft.

2. Wir bauen den sendmail.sh Befehl in das ghettoVCB.sh Script ein, damit es nach dem Backup das Backuplog verschickt.
Wo ihr den sendmail.sh Befehl einbauen müsst, müsst ihr euch aber selbst raussuchen!

3. Wir bauen ein weiteres Script, dass das ghettoVCB.sh Script aufruft, und danach das sendmail.sh Script ausführt, und tragen dieses als cronjob ein.

Wem das komplette Backuplog zu lange ist, der baut einfach dazwischen noch folgendes ein:

mv /vmfs/volumes/primary/custom/backuplog.txt /vmfs/volumes/primary/custom/temp.txt
grep "info" /vmfs/volumes/primary/custom/temp.txt | grep -v "CONFIG" > /vmfs/volumes/primary/custom/backuplog.txt
rm /vmfs/volumes/primary/custom/temp.txt

Mein “Zwischenscript” (welches ich unter /vmfs/volumes/primary/custom/backup.sh abgelegt habe) sieht in etwa so aus:

 
#!/bin/sh
/vmfs/volumes/primary/custom/ghettoVCB.sh -f /vmfs/volumes/primary/custom/vmlist -c /vmfs/volumes/primary/custom/conf -l /vmfs/volumes/primary/custom/backuplog.txt
mv /vmfs/volumes/primary/custom/backuplog.txt /vmfs/volumes/primary/custom/temp.txt
grep "info" /vmfs/volumes/primary/custom/temp.txt | grep -v "CONFIG" > /vmfs/volumes/primary/custom/backuplog.txt
rm /vmfs/volumes/primary/custom/temp.txt
 /vmfs/volumes/primary/custom/sendmail.sh x.x.x.x esxi@domain.local mik@domain.local "ESXi Backup Log" /vmfs/volumes/primary/custom/backuplog.txt
rm /vmfs/volumes/primary/custom/backuplog.txt
 

In die /etc/rc.local trage ich also folgendes ein:
echo “0 1 * * 3 /vmfs/volumes/primary/custom/backup.sh” >> /var/spool/cron/crontabs/root

somit sieht mein cronjob nachher so aus:
0 1 * * 3 /vmfs/volumes/primary/custom/backup.sh

HowTo: SSH aktivieren und Backup am VMWare ESXi Server

Ich habe vor einiger Zeit meinen VMWare Server auf den VMWare ESXi Hypervisor umgestellt.

Die Frage war nun, wie mache ich mit dem neuen ESXi wirklich sinnvoll und kostenfrei Backups.
Diese sollten natürlich regelmäßig stattfinden, konsistent sein und ohne die virtuellen Maschinen herunterzufahren, zu stoppen oder zu pausieren funktionieren.

Nun ist im VMWare ESXi nicht standardmäßig SSH aktiviert, ich persönlich Arbeite aber sehr gern mit SSH.
Ausserdem wird dies benötigt um nicht die ganze Zeit direkt am ESXi Host zu sitzen um das Backup zu konfigurieren.

Achtung: Wie mann auf dem ESXi 4.1 SSH aktiviert kann man hier nachlesen.

Um nun SSH zu aktivieren muss man nur…
1. Direkt am ESXi Host ALT+F1 eingeben.

2. Im dort erschienenen Bildschirm blind (das was man tippt wird nicht angezeigt) unsupported eingeben, um in die Konsole vom ESXi Server zu kommen.

3. Dort öffnet man nun die Datei /etc/inetd.conf mit einem beliebigen Texteditor (z.B. vi oder nano).

4. In der Datei kommentiert man die ssh Zeile(n) (je nachdem ob man IPv4 oder IPv6 braucht) aus.
Alternativ dazu kann man einfach sed ‘s/#ssh/ssh/’ /etc/inetd.conf > /etc/inetd.conf eintippen.
(dies ersetzt einfach alle vorkommen von #ssh gegen ssh.)

5. Diese Änderungen können nun einfach durch einen neustart werden, oder man schickt dem Prozess das HUP-Signal. Dies macht man einfach in dem man mittels ps | grep inetd die Prozess-ID raussucht und danach mithilfe von kill -HUP [Prozess-ID] ihm das HUP-Signal schickt.
Alternativ dazu kann man auch einfach kill -HUP `ps | grep inetd | grep -v grep | awk ‘{print $1}’` eingeben.

6. Um dies nun zu überprüfen müssen wir von einem anderen Computer aus mittels SSH oder nmap überprüfen ob es funktioniert. Dies ist zu empfehlen, wenn man nicht gleich zum ESXI Host laufen will wenns doch nicht funktioniert hat. Leider verfügt der ESXi Server selbst nicht über SSH, netstat oder nmap – somit wüsste ich aktuell keine Möglichkeit um dies direkt am Server zu überprüfen

Nun zum Backup am VMWare ESXi Server:

Normalerweise würde man ein Backup am VMWare ESXi mittels VCB (VMware Consolidated Backup) machen.
Allerdings ist dies kostenpflichtig bzw. kann kostenfrei nur 60-Tage getestet werden.
Nach langem Googlen und hin und her habe ich ein Shell-Script namens “ghettoVCB.sh” gefunden,
dieses kann man von hier beziehen. Dort wird nochmal genauestens erklärt wie man dieses konfiguriert etc… – allerdings möchte ich einen kleinen Überblick geben, wie ich meines konfiguriert habe:

1. zuerst habe ich auf der Festplatte wo meine VMs liegen (heißt bei mir primary) einen Ordner erstellt, in welchem ich das Script und alles was es benötigt ablegen werde. Nun ist das Script also unter /vmfs/volumes/primary/custom/ghettoVCB.sh abgelegt.

2. Darin habe ich eine Datei vmlist angelegt, in der ich in jede Zeile den Namen einer der VMs geschrieben habe, von denen ich ein Backup haben möchte (In unserem Beispiel nenne ich die VM Example VM 1).
Es gibt nun also die Datei vmlist in der Example VM 1 steht.

3. Da ich gerne für jede VM das Backup ein wenig anders definieren möchte, und ich ausserdem Backup auf 2 Festplatten mache, habe ich mir 2 Ordner namens conf und conf2 angelegt.

4. Darin habe ich jeweils eine Datei namens Example VM 1 angelegt, in der ich nun die Backup-konfiguration für diese VMWare hineinschreiben kann.
In dieser Datei steht also z.B. folgendes: (Die Sätze nach // sind Kommentare meinerseits, stehen aber nicht in der Datei (das // auch nicht) – ich weiß nicht ob das ghettoVCB-Script die Kommentare verträgt oder Fehler auswirft.)

VM_BACKUP_VOLUME=/vmfs/volumes/backupstore1 // Hier definiert man wo das Backup für die VM hinkommt.
DISK_BACKUP_FORMAT=thin // Dies bewirkt, dass die gesicherten VMDK-Dateien (Festplatten-Dateien) nicht komplett gesichert werden, sondern nur soweit wie sie auf der virtuellen Maschine belegt sind.
VM_BACKUP_ROTATION_COUNT=1 // Es wird nur ein Backup angelegt, nachdem das Backup angelegt wurde, wird das alte Backup gelöscht.
POWER_VM_DOWN_BEFORE_BACKUP=0 // Wenn man dies auf 1 setzt, wird die virtuelle Maschine vor dem Backup ausgeschaltet, dies wollen wir ja in diesem Fall nicht - darum 0.
ENABLE_HARD_POWER_OFF=0 // Wird dies aktiviert, kann die virtuelle Maschine auch einfach ausgeschaltet werden, z.B. wenn keine VMWare Tools installiert sind. (Trifft nur zu wenn POWER_VM_DOWN_BEFORE_BACKUP=1)
ITER_TO_WAIT_SHUTDOWN=4 // Hier kann man die Minuten angeben, die gewartet wird, bis die virtuelle Maschine ausgeschaltet wird (Trifft nur zu wenn POWER_VM_DOWN_BEFORE_BACKUP=1 und ENABLE_HARD_POWER_OFF=1)
POWER_DOWN_TIMEOUT=5 // Hier kann man die Minuten eintragen, die gewartet wird wenn das System Heruntergefahren wird - wenn es nach der Zeit noch nicht Heruntergefahren ist, wird es ignoriert und kein Backup gemacht. (Trifft nur zu wenn POWER_VM_DOWN_BEFORE_BACKUP=1)
SNAPSHOT_TIMEOUT=15 // Hier werden die Minuten eingetragen, die das Script wartet bis der Snapshot fertig ist. Ist der Snapshot nach der Zeit noch nicht fertig, wird diese virtuelle Maschine ignoriert und kein Backup gemacht.  Um das Backup einer laufenden Maschine konsistent zu halten, muss vor dem Backup machen ein Snapshot erstellt werden. Von diesem wird dann ein Backup gemacht, danach wir dder Snapshot wieder entfernt.
ENABLE_COMPRESSION=0 // Hier wird die Komprimierung (Verdichtung) für das Backup de- oder aktiviert - in meinem fall habe ich diese ausgelassen das ich 1. genug Platz habe und 2. das sichern und zurücksichern somit schneller geht.
ADAPTER_FORMAT=buslogic // Hier gibt man den Adapter type des VMDK Files an (buslogic oder lsilogic)
VM_SNAPSHOT_MEMORY=0 // Wird dies aktiviert, wird der Speicher der virtuellen Maschine miteinbezogen in den Snapshot. (Ist Standardmäßig deaktiviert)
VM_SNAPSHOT_QUIESCE=0 // Wenn aktiviert, wird ein Snapshot von dem laufenden System so gemacht, als wäre das System nicht gelaufen. (Ist Standardmäßig deaktiviert)
VMDK_FILES_TO_BACKUP="all" // Hier kann man die VMDK-Dateien die man im Backup dabei haben möchte mit Beistrichen getrennt angeben (z.B. "hdd1.vmdk,hdd2.vmdk").

4. Da ich ja auf 2 Festplatten Backup mache, ändere ich im conf2 Ordner in der Example VM 1 Datei die erste Zeile auf VM_BACKUP_VOLUME=/vmfs/volumes/backupstore2.

5. Wer nun einmal Testen will, ob das ganze mit dem Backup funktioniert kann das ganze erstmal mit einem “Trockenlauf” mittels ./ghettoVCB.sh -f vmlist -c conf -d dryrun im Ordner wo das Script liegt ausführen, dies zeigt nun an welche Variablen wie gesetzt wurden und welche Maschinen wohin gesichert werden.

6. Um nun einen echten Testlauf zu starten, benutze ich gerne den Befehlt nohupvim-cmd vmsvc/snapshot.remove [VM-ID] entfernt werden. Die VM-ID bekommt man einfach raus indem man cat /tmp/vms_list ausführt, dort werden die virtuellen Maschinen aufgeführt, wobei die erste Zahl immer die VM-ID der jeweiligen virtuellen Maschine ist.

7. Ein echter Testlauf kann nun also mittels nohup ./ghettoVCB.sh -f vmlist -c conf & ausgeführt werden. Die Ausgabe von nohup wird in die Datei nohup.out geschrieben – mit dem Befehl tail -f nohup.out kann man sich die Ausgabe sozusagen “live” ansehen, welches mittels Strg+C abgebrochen werden kann.

8. Nachdem alles erfolgreich getestet wurde und funktioniert, wird es an der Zeit das Backup zu automatisieren. Ich möchte meine Backups gerne am Mittwoch und am Samstag jeweils um 1 Uhr in der früh machen, wobei das Mittwochs Backup auf eine andere Festplatte kommt wie das Samstags Backup (dies habe ich aber schon mittels conf und conf2 Ordner erledigt). Um nun die Backups automatisch laufen zu lassen benötigen wir crontabs, diese befinden sich auf dem ESXi Server in der Datei /var/spool/cron/crontabs/root, hier können die crontabs einfach eintragen (Erklärung unter: http://de.wikipedia.org/wiki/Cron).

9. Allerdings wird diese Datei bei jedem Start überschrieben, deswegen müssen wir sehen wie wir unsere Zeilen beim Starten in die Datei schreiben.

Meine 2 Crontabs für Mittwoch und Samstag sehen wie folgt aus:

0 1 * * 3 /vmfs/volumes/primary/custom/ghettoVCB.sh -f /vmfs/volumes/primary/custom/vmlist -c /vmfs/volumes/primary/custom/conf
0 1 * * 6 /vmfs/volumes/primary/custom/ghettoVCB.sh -f /vmfs/volumes/primary/custom/vmlist -c /vmfs/volumes/primary/custom/conf2

Um diese beiden Zeilen nun bei jedem Start in die /var/spool/cron/crontabs/root einzutragen brauche ich folgende 2 Zeilen:

echo "0 1 * * 3 /vmfs/volumes/primary/custom/ghettoVCB.sh -f /vmfs/volumes/primary/custom/vmlist -c /vmfs/volumes/primary/custom/conf" >> /var/spool/cron/crontabs/root
echo "0 1 * * 6 /vmfs/volumes/primary/custom/ghettoVCB.sh -f /vmfs/volumes/primary/custom/vmlist -c /vmfs/volumes/primary/custom/conf2" >> /var/spool/cron/crontabs/root

Wenn man diese Ausführt, werden meine 2 crontabs automatisch an die richtige Datei angehängt.
Um dies nun bei jedem Start auszuführen, brauche ich diese beiden Zeilen nur noch in die /etc/rc.local einzutragen.

Somit werden bei jedem Restart meine 2 crontabs wiederhergestellt.

Fertig – ein konsistentes, automatisches und kostenloses Backup meiner virtuellen Maschinen, ohne das ich diese Ausschalten muss für Backups.
Wenn nun wirklich die Festplatte kaputt gehen sollte, muss ich nur noch die Backup-VM im vSphere-Client “registrieren” und kann diese direkt von der Backup-Festplatte starten!

Mac OS X 10.6.2 erschienen!

Seit kurzem ist die Aktualisierung für Mac OS X Snow Leopard auf 10.6.2 verfügbar!
Hier ist ein Update dringend empfohlen, da dieses viele Sicherheitslücken schliesst.

Unter anderem wird auch der Bug gefixt, der gesamte Benutzer-Accounts zerstört, und viele andere….

osx1062-update

Die Aktualisierung ist über die Softwareaktualisierung verfügbar bzw. sollte auch bald auf der Download-Seite von Apple erscheinen!

Mac OS X Snow Leopard Flash Player

Hallo!

Nach Update von Leopard auf Snow Leopard hat sich mein Flashplayer von aktueller Version 10.0.32.18 auf die Version 10.0.32.1 “zurückgeupdated”!
Da diese Version aber einige Sicherheitslücken aufweist, ist es dringend zu Raten, die aktuelle Version (wieder) zu installieren!

Eure aktuell installierte Version könnt ihr hier checken: http://kb2.adobe.com/cps/155/tn_15507.html

Und die neue Version kann man dann hier Downloaden: http://get.adobe.com/de/flashplayer/

Kennzeichenkürzelverzeichnis nun auch als iPhone-Version verfügbar!

Hallo!

Ab jetzt ist das Kennzeichenkürzelverzeichnis auch als iPhone-Version verfügbar! (Web-Applikation)

Einfach bei euch am iPhone “http://iphone.zeux.at/kennverz/” (ohne “”) eintippen und gleich Bookmarken!

Wenn ihr gerade mit den iPhone hier drauf seid, hier klicken.

(Es kann übrigens sein, dass die iPhone Version in manchen Browsern nicht korrekt angezeigt wird, am iPhone wird es aber korrekt angezeigt.)