Exportieren von MySQL Tabellen in Open Document Spreadsheet (ODS) Dateien mit PHP

9 07 2011

Vor kurzem stand ich vor der Aufgabe in einer meiner Softwarelösungen die Tabellen-Exportfunktion zu überarbeiten. Bis dahin verwendete ich einen einfachen pseudo-XLS Export der die Daten als formatierte Textdatei ausgibt die eine .xls Endung bekam. Microsoft Excel ließt solche Dateien problemlos ein. Allerdings war die Handhabung nicht gerade optimal, da keine Formatierungsdaten in der Tabelle liegen. Lange Zahlen wie EAN-Nummern oder Preise wurden durch die Autoformatierung nicht wie gewollt dargestellt und man musste manuell nacharbeiten.
Ich forschte dann nach alternativen Dateiformaten und die Wahl viel dann schnell auf Open Document. Großer Vorteil hierbei ist das es ein offenes Format ist und somit gut dokumentiert. Zudem ist es mit den gängigen Office Anwendungen kompatibel, wie z.B. Microsoft Excel ab Version 2007 oder Oracle Open Office. Den Rest des Beitrags lesen »





Linux Shell – Benutzer und Gruppen verwalten

5 05 2010

Um die, beim letzten Mal beschriebenen Zugriffsrechte auf Dateien und Ordner unter Linux auch wirklich voll auszunutzen, ist es manchmal nötig die eigentlichen Benutzer und Benutzer-Gruppen des Systems zu verwalten.

Möchte man Änderungen vornehmen, die über den eigenen Benutzer hinaus gehen, benötigt man Root-Rechte. Daher ist hier wieder mit entsprechender Umsicht zu arbeiten.
Zunächst widme ich mich den Shell-Befehlen zu diesem Thema, später gehe ich noch auf die Dateien selbst ein, in denen die Benutzer und Gruppen gespeichert sind.

Die hier beschriebenen Befehle gehören zum Linux Grundsystem und sind Distributions-Übergreifend. Wer lieber die grafischen Tools seiner Distribution nutzen möchte der sollte auf den jeweiligen Support Seiten nach Hilfe suchen. Darauf werde ich hier nicht weiter eingehen.

Wozu Benutzer-Gruppen bei Linux verwendet werden
Wer den letzten Artikel gelesen hat, der weiß schon, dass Gruppen unter Linux zum Verwalten von Dateirechten verwendet werden. Im Prinzip ist das die einzige Funktion von Gruppen. Allerdings hat das Ganze noch einen Nebeneffekt, der als eine weitere Funktion genutzt wird.
Wer sich die Gruppen mal ansieht, die auf dem eigenen System angelegt sind, der wird feststellen das es viel mehr davon gibt als man vielleicht annehmen möchte. So gibt es z.B. eine Gruppe „cdrom“, „floppy“ oder „dailout“. Diese Gruppen erlauben den Zugriff auf bestimmte Funktionen des Systems. Das wird erreicht, indem die für die jeweilige Funktion benötigten Dateien diesen Gruppen zugeteilt werden. Um sie dann nutzen zu können muss man Mitglied der jeweiligen Gruppe sein.
Auch Anwendungen wie VirtualBox oder MySQL nutzen dieses System und den Zugriff auf ihre Dateien zu verwalten. So muss man z.B. Mitglied der Gruppe „vboxusers“ sein, um mit VirtualBox eine VM starten zu können. Den Rest des Beitrags lesen »





Linux Shell – Zugriffs-Rechte auf Dateien und Ordner

15 07 2008

Linux hat im Vergleich zu Windows ein ausgefeiltes System um die Zugriffs-Rechte auf Dateien und Ordner des Rechners zu regeln. Dieses System ist einer der Gründe für die hohe System-Sicherheit von Linux. (und allen anderen Unix ähnlichen Systeme, wie BSD o.ä.)
Man kann sogar soweit gehen sich als Root selbst auszusperren, was natürlich nicht Sinn der Sache ist.

Zugriffs-Rechte ermitteln
Befindet man sich im Terminal kann man mit dem Befehl „ls -l“ den Inhalt des aktuellen Verzeichnisses anzeigen lassen. Die Option „-l“ bewirkt das Anzeigen vieler Details für jede Datei. In der ersten Spalte steht die Maske mit den Zugriffs-Rechten. Hier eine Beispielzeile:

-rw-r–r– 1 user group  157110 2008-07-07 22:27 image.jpg

Die weiteren Spalten stehen für den Benutzer (Besitzer) und die Gruppe der Datei, die Größe und das Datum und die Zeit der letzten Änderung. Die Zahl vor den Benutzer, also hier die „1″ steht für die Zahl der enthaltenen Verzeichnisse. Bei einer Datei steht hier die „1″, bei einem Verzeichnis steht hier mindestens eine zwei, da „./“ und „../“ mitgezählt werden. Den Rest des Beitrags lesen »





Virtuelle Maschine erstellen für VMWare Player

8 07 2008

Eine Virtuelle Maschine (VM) bietet eine Umgebung in der fremde Betriebssysteme innerhalb eines anderen ausgeführt werden können. Das Betriebssystem auf dem die Virtuelle Maschine läuft wird als Host bezeichnet, die Betriebssysteme die innerhalb der VM ausgeführt werden als Guest.
Die VM stellt für das Guest-System eine eigene Hardware-Umgebung zur Verfügung, die je nach verwendeter Software auch angepasst werden kann. Ein großer Vorteil von Virtuellen Maschinen ist der Umstand, dass das Guest-System keinen Einfluss auf das Host-System nehmen kann. Man kann sich also innerhalb der VM austoben ohne das Host-System du gefährden.
Um dies zu gewährleisten benutzen VMs abgetrennte Bereiche von Festplatte und RAM das Rechners. Es ist also von Vorteil möglichst reichhaltige Ressourcen bieten zu können.

Windows XP auf Ubuntu Linux mit Virtual Box

Windows XP auf Ubuntu Linux mit Virtual Box

In diesem Artikel geht es darum für den VMWare Player eine eigene VM-Konfiguration zu erstellen.  VMWare ist einer der bekanntesten Hersteller von VM-Software. Zu den Produkten zählen unter anderem der VMWare Server und der VMWare Player.
Der VMWare Server bietet alle Konfigurationsmöglichkeiten um eine Virtuelle Maschine zu erstellen und zu verändern. Der Player ist dazu gedacht eine so erstellte VM zu starten. Ihm fehlen alle Einstellungen die es erlauben würden auf die Konfiguration Einfluss zu nehmen. Den Rest des Beitrags lesen »





Farbige Texte in den Konsolen

7 07 2008

In diesem Blog geht es um rein kosmetische Änderungen. Allerdings wird man im täglichen Gebrauch feststellen, dass auch diese Kleinigkeiten einen praktischen Nutzen haben.

Da ich mich mit diesem Thema nur innerhalb von Ubuntu beschäftigt habe, gehe ich auch nur auf diese Distribution ein. Im Regelfall sollten die Änderungen aber auf alle Debian basierte Distributionen anwendbar sein.

Es geht um Farbige Textausgaben in den Konsolen. Der erste Punkt sind die Bootmeldungen beim Hochfahren des Systems. Diese sind nur sichtbar wenn man keinen Boot-Splash benutzt, sondern sich die Textmeldungen anzeigen lässt.
Ein bequemer Weg den Boot-Splash ein- oder auszuschalten ist das Programm Startup-Manager, welches sich über Synaptic bequem installieren lässt. Es handelt sich dabei um ein grafisches Frontend für den GRUB Boot-Loader, der bei Ubuntu verwendet wird.
Neben dem besagten Boot-Splash lassen sich noch viele weitere Dinge einstellen, wie Passwortschutz oder das Standard Betriebssystem.

Einstellen der Anzeige beim Bootvorgang
Wer diese Einstellung lieber von Hand vornehmen möchte, der muss die Datei „menu.lst“ bearbeiten. Diese Datei gehört zum GRUB Boot-Loader und liegt im Verzeichnis „/boot/grub„.
Es handelt sich dabei um eine Systemdatei und man benötigt Super-User-Rechte um sie zu bearbeiten. Wer sich nicht sicher ist was er tut, sollte die Finger davon lassen. Sollte die „menu.lst“ falsch konfiguriert sein, lässt sich das System nicht mehr booten!

Als erstes sollte man sich eine Sicherheitskopie anlegen.
cd /boot/grub
cp ./menu.lst ./menu.lst.bkp
Da die Änderungen erst beim nächsten Neustart aktiv werden, kann man somit die Datei wieder herstellen. Falls einem der Fehler vorher bewusst wird. Oder erst danach, mithilfe einer Rettungs-CD, b.z.w. der Ubuntu-CD, falls man die Live-CD Version besitzt.
Jetzt kann man die Datei öffnen. Entweder mit „sudo vim ./menu.lst„, falls man aus der Shell arbeitet oder mit „sudo gedit ./menu.lst“ wenn man sich in Gnome befindet. Den Rest des Beitrags lesen »





Linux Shell – Arbeiten mit Prozessen

5 07 2008

Ich bin grade im Schreibfieber, daher schiebe ich den zweiten Blog mal gleich nach.

Es handelt sich hierbei nur um einen kleinen Abriss des Themas. Ich gehe nur auf die Bereiche ein, die man im Linux-Alltag durchaus brauchen kann. Speziell wenn einem mal ein Programm hängen bleibt oder in einer Schleife festsitzt.

Ein Prozess ist ein Programm, welches gerade auf dem System ausgeführt wird. In der Windows Welt werden Prozesse als Tasks bezeichnet. Dort gibt es auch den Taskmanager, den man durch kurzes drücken der Tasten STRG + ALT + ENTF (der sog. Affengriff) aufrufen kann.
Linux Desktop Umgebungen wie Gnome oder KDE bieten ebenfalls solche grafischen Tools. Bei Gnome z.B. findet man die Prozessübersicht im Gnome Menü unter System -> Systemüberwachung -> Prozesse.

In der Linux Shell gibt es auch einen Prozessmanager, der den grafischen ähnelt. Er lässt sich mit dem Befehl „top“ aufrufen. Ist das Programm gestartet sieht man eine tabellarische Auflistung der Prozesse, bis man das Programm beendet.
Das Programm wird durch Eingabe von Buchstaben gesteuert.
h – Zeigt die Hilfe an, in der alle weiteren Befehle aufgelistet werden.
q – Beendet das Programm.

Ich nutze „top“ selbst nicht, da man mit den konventionellen Befehlen meist schneller arbeiten kann. Daher kann ich auch keine genaueren Informationen dazu geben.

Den Rest des Beitrags lesen »





Linux Shell – Dateien und Dateisystem

5 07 2008

Der erste Blog hier befasst sich mit den ersten Grundlagen die man braucht, um sich in einer Linux Shell auf einem Rechner bewegen zu können: den Dateioperationen.

Eines noch vorweg. Bei Linux können sogenannte Pipes verwendet werden. D.h. man kann die Ausgabe eines Befehls von einem nachfolgenden weiterverarbeiten lassen. Z.B. bei einem Befehl mit einer langen Ausgabe nach bestimmten Worten filtern. Beispiele folgen weiter unten.

Auflisten des Verzeichnis-Inhalts mit „ls“
Dieser Befehl zeigt in Inhalt des aktuellen Verzeichnisses. Wer mit der Dos-Shell vetraut ist, kennt diesen Befehl noch als „dir“.
Um auch versteckte Dateien sichtbar zu machen, muss man „ls -a“ eingeben. Mit der Option „-l“ wird hingegen eine Liste erzeugt, in der für jede Datei noch weitere Details aufgelistet werden.
Und hier nun ein Beispiel für Pipes: „ls | grep <suchwort>
Den Befehl „grep“ sollte man sich wirklich einprägen. Er ist extrem hilfreich und lässt sich bei allen Befehlen die eine große Ausgabe erzeugen gut einsetzen.
Das oben angeführte Beispiel zeigt nur die Dateien und Ordner an, deren Name das <suchwort> enthält.

Den Rest des Beitrags lesen »








Follow

Get every new post delivered to your Inbox.