Monatsarchiv für Juli 2011

 
 

Artwork von Ubuntu 11.04 per Backport in Ubuntu 10.04 nutzen

Auf so ziemlich allen produktiven Maschinen habe ich derzeit die aktuelle LTS Version (Ubuntu 10.04.3 – Lucid Lynx) von Ubuntu installiert. Optisch allerdings finde ich Ubuntu 11.04 deutlich ansprechender.

Glasen ist der gleichen Meinung und hat sich die Arbeit gemacht, alle Pakete die für das Artwork (Themes, Icons, Wallpaper) unter Ubuntu 11.04 verantwortlich sich, auf Ubuntu 10.04 (Lucid Lynx) zu portieren. Das ganze wurde als PPA auf Launchpad veröffentlicht. Danke! Super Arbeit! Kann man da nur sagen.

Lucid Backport - Themes

Die folgenden Befehle installieren das Artwork:

$ sudo add-apt-repository ppa:glasen/ubuntu-artwork-backport
$ sudo apt-get update
$ sudo apt-get upgrade

Jedem der die Optik von Ubuntu 11.04 ansprechender findet, sei dieser Backport empfohlen.

Weitere Informationen zum Thema:
https://launchpad.net/~glasen/+archive/ubuntu-artwork-backport
http://www.glasen-hardt.de/?p=1272

Bash Historie mit Zeitstempel versehen

Die Historie der Bash finde ich persönlich recht nützlich. Gerade um die letzten Befehle mittels Pfeil-Auf und Pfeil-Ab Tasten noch einmal auszuführen. Doch die Historie kann noch mehr! Die Gesamte Historie kann man sich mit dem folgenden Befehl anzeigen lassen. (Hinweis: Ich übergebe die Historie an less da meist der Anzeigepuffer des Terminals nicht ausreicht, um alle Befehle anzuzeigen.)

$ history | less

Ein Nachteil der Standard Einstellung ist, das alle Befehle nur der Reihe nach aufgelistet werden. Der Historie kann aber auch ein Zeitstempel zugewiesen werden, z.B. um das Durchsuchen der Historie nach einem bestimmten Tag oder Zeitraum zu ermöglichen.

Dies kann entweder dynamisch erfolgen …

$ export HISTTIMEFORMAT=”[%F] [%T] “

… oder besser noch, direkt in die Konfiguration der Bash geschrieben werden. In der Datei ~/.bashrc muss dazu die folgende Zeile ergänzt werden:

HISTTIMEFORMAT="[%F] [%T] "

Bei der Zweiten Variante ist zu beachten, das die Bash/Sitzung neu gestartet werden muss.

Weitere Informationen zum Thema:
http://manpages.ubuntu.com/manpages/hardy/man3/history.3readline.html

HTML Tag mit SQL entfernen

Die Verwaltung von Datenbankinhalten kann unter Umständen recht aufwändig werden. Gerade wenn man, wie in meinem aktuellen Fall, aus ca. 1,8 Mio Datensätze (Text) HTML Tags entfernen will. Als ersten kam mir die Überlegung hierfür ein Script in PERL oder PHP zu schreiben. Da ich allerdings nicht alle Applikationen anpassen will und kann, musste die Funktion vom MySQL übernommen werden.

Dank Google habe ich hier eine vorgefertigte Funktion für MySQL gefunden.

SET GLOBAL log_bin_trust_function_creators=1;
DROP FUNCTION IF EXISTS fnStripTags;
DELIMITER |
CREATE FUNCTION fnStripTags( Dirty varchar(4000) )
RETURNS varchar(4000)
DETERMINISTIC
BEGIN
  DECLARE iStart, iEnd, iLength int;
  WHILE Locate( '<', Dirty ) > 0 And Locate( '>', Dirty, Locate( '<', Dirty )) > 0 DO
    BEGIN
      SET iStart = Locate( '<', Dirty ), iEnd = Locate( '>', Dirty, Locate('<', Dirty ));
      SET iLength = ( iEnd - iStart) + 1;
      IF iLength > 0 THEN
        BEGIN
          SET Dirty = Insert( Dirty, iStart, iLength, ' ');
        END;
      END IF;
    END;
  END WHILE;
  RETURN Dirty;
END;
|
DELIMITER ; 

Im folgenden Beispiel wird der übergebene Text ohne HTML ausgegeben.

mysql> SELECT fnStripTags(“Testtext mit <b>fettem HTML Text</b>.”);

Datenbankgröße mit SQL ermitteln

Jeder der eine oder mehrere Datenbanken betreibt, sollte neben der Performance auch die belegten und benötigten Ressourcen im Blick haben. Mit einer einfachen Abfrage kann man sich direkt vom MySQL Server die Speicherbelegung anzeigen lassen.

SELECT
  table_schema AS 'Datenbankname',
  Round( SUM( data_length ) / 1024 / 1024, 3 ) AS 'Daten (MB)',
  Round( SUM( index_length ) / 1024 / 1024, 3 ) AS 'Index (MB)',
  Round( Sum( data_length + index_length ) / 1024 / 1024, 3 ) AS 'Gesamt (MB)',
  Round( Sum( data_free ) / 1024 / 1024, 3 ) AS 'Freier Speicher (MB)'
FROM information_schema.tables
GROUP BY table_schema ;

Das Resultat sieht dann in etwa so aus …

+--------------------+------------+------------+-------------+----------------------+
| Datenbankname      | Daten (MB) | Index (MB) | Gesamt (MB) | Freier Speicher (MB) |
+--------------------+------------+------------+-------------+----------------------+
| shopdb             |   2457.729 |   1218.272 |    3676.002 |                4.000 |
| testdb             |      0.460 |      0.324 |       0.784 |                0.000 |
| information_schema |      0.000 |      0.008 |       0.008 |                0.000 |
| logging            |   1239.394 |    702.597 |    1941.991 |                0.000 |
| mysql              |      0.492 |      0.087 |       0.579 |                0.000 |
+--------------------+------------+------------+-------------+----------------------+
5 rows in set (0.00 sec)

(Die Abfrage stammt von http://www.artfulsoftware.com/infotree/queries.php und wurde von mir leicht angepasst.)

Handbuch für Ubuntu 11.04 zum kostenlosen Download

Ubuntu HandbuchGalileo Computing hat sein Handbuch zu Ubuntu nun auf Ubuntu 11.04 – Natty Narwhal aktualisiert. Neben der Gedruckten Variante “Ubuntu GNU/Linux” samt zwei DVDs für 39,90 Euro (ISBN 978-3-8362-1765-8) z.B. hier bei Galileo, wurde es auch als Openbook veröffentlicht.

Dieses kann wie gewohnt online gelesen, oder auch kostenlos heruntergeladen werden.

Weitere Informationen zum Thema:
http://www.golem.de/1107/84741.html
http://openbook.galileocomputing.de/ubuntu/