Mai

05

Posted by : Florian Löffler | On : 05.05.2010

ubuntu_luci_logoNachdem ich gestern zwangsweise meine Ubuntuinstallation auf das neue Ubuntu 10.04 – Lucid Lynx updaten musste, hab ich hier gleich mal nen ersten “Fix” zu bieten.
Die Buttons auf der linken Seite der Fenster nerven mich total.
Deshalb hier die Lösung für alle denen es genauso geht:

gconftool --type=string --set /apps/metacity/general/button_layout "menu:minimize,maximize,close"

Einfach im Terminal ausführen und das alte Buttonlayout genießen.

Mrz

25

Posted by : Florian Löffler | On : 25.03.2010

ubuntu_luci_logoNur ein schneller Hinweis.

Ubuntu 10.04 mit LongTermSupport — auch Lucid genannt — steht als Beta auf der Ubuntu Homepage zum Download zur verfügung.

Erste Berichte dazu gab’s vor Kurzem auch auf Golem und Heise.

Sieht echt net schlecht aus, auch wenn die Optik “etwas” vom Mac geklaut ist.

Mal sehen ob ich’s demnächst irgendwo installieren kann ;)

Mrz

16

Posted by : Florian Löffler | On : 16.03.2010

mauszeiger Null Problemo!

Lösung in Form eines fertigen Packetes für Ubuntu 9.10 (Karmic) findet sich hier:
http://blog.linuxtracker.org/2009/11/25/inkscape-0-47-final-version-released/

Enjoy!

Jan

24

Posted by : Florian Löffler | On : 24.01.2010

weather-wallpaperAuf der Suche nach einem Applet für Gnome, dass mir Auskunft über die aktuelle Wetterlage gibt bin ich über dieses coole Tool namens weather-wallpaper gestolpert.
Es generiert in einstellbaren Zeitabständen ein Hintergrundbild passend zum Wetter ;)
Siehe auch die weather-wallpaper Projekt Homepage für mehr Infos.
Bildschirmfoto
Anmerkung: Das links unten im Bild ist übrigends das good-weather gDesklets Applet.

Jan

18

Posted by : Florian Löffler | On : 18.01.2010

cuda_logoDa mir seid kurzem ein Laptop mit CUDA fähiger Grafikkarte zur Verfügung steht und in meiner TODO-Liste auch noch die Fortführung einer CUDA beschleunigten Variante von Enblend/Enfuse herumgammelt, habe ich mich nun einmal aufgemacht eine entsprechende Entwicklungsumgebung einzurichten.

0. Einkaufsliste

  • NVIDIA Treiber mit CUDA Support
  • NVIDIA CUDA Toolkit (Runtime Environment)
  • NVIDIA CUDA SDK (Development Kit)
1. Treiber
Obwohl momentan CUDA 2.3 schon released ist und auch CUDA 3.0 schon als Beta in den Startlöchern steht, habe ich mich für die ältere Version 2.2 entschieden.
Für die neue 2.3er Version müsste man nämlich den “NVIDIA Driver 190.18 Beta for Linux” installieren. Für die 2.2er Version reicht der “NVIDIA Driver for Linux 185.18.14″. Diesen bringt Ubuntu 9.10 (karmic) schon von Haus aus mit und erspart so unnötiges Treibergefrikel.
Für CUDA 2.2 muss also kein extra Treiber installiert werden. Der neueste Ubuntu-eigene Treiber genügt.
2. CUDA Toolkit
Das CUDA Toolkit habe ich per sudo in das standardmäßig vorgegebene /usr/local/cuda Verzeichnis installiert:

flo@acer ~ $ sudo sh cudatoolkit_2.2_linux_64_ubuntu8.10.run
Verifying archive integrity... All good.
Uncompressing NVIDIA CUDA.............................................
Enter install path (default /usr/local/cuda, '/cuda' will be appended):
„lib“ -> „/usr/local/cuda/lib“
„lib/libcufft.so.2.2“ -> „/usr/local/cuda/lib/libcufft.so.2.2“
„lib/libcufft.so.2“ -> „/usr/local/cuda/lib/libcufft.so.2“
...
„bin/ptxvars.cu“ -> „/usr/local/cuda/bin/ptxvars.cu“
„bin/cudafe“ -> „/usr/local/cuda/bin/cudafe“

========================================

* Please make sure your PATH includes /usr/local/cuda/bin
* Please make sure your LD_LIBRARY_PATH includes /usr/local/cuda/lib
*   or add /usr/local/cuda/lib to /etc/ld.so.conf and run ldconfig as root

* Please read the release notes in /usr/local/cuda/doc/

* To uninstall CUDA, delete /usr/local/cuda
* Installation Complete
3. CUDA SDK
Das CUDA SDK wird fast genauso installiert. Allerdings habe ich das SDK statt, wie vorgeschlagen ins HOME, unter /opt installiert. Evtl. könnte man das SDK auch gleich zum Toolkit unter /usr/local/cuda installieren, um alles auf einem “Haufen” zu haben. Die Pfade wären in den folgenden Schritten dann entsprechend anzupassen.

flo@acer ~ $ sudo sh cudasdk_2.21_linux.run
Verifying archive integrity... All good.
Uncompressing NVIDIA CUDA SDK.............................................
Enter install path (default ~/NVIDIA_CUDA_SDK): /opt/cuda/sdk

Could not locate CUDA.  Enter the full path to CUDA.
If you do not know the path, accept the default and then
modify the CUDA_INSTALL_PATH variable in
/opt/cuda/sdk/common/common.mk.

Enter CUDA install path (default /usr/local/cuda):
„sdk/Makefile“ -> „/opt/cuda/sdk/Makefile“
„sdk/ReleaseNotes.html“ -> „/opt/cuda/sdk/ReleaseNotes.html“
...
„sdk/tools“ -> „/opt/cuda/sdk/tools“
„sdk/tools/CUDA_Occupancy_calculator.xls“ -> „/opt/cuda/sdk/tools/CUDA_Occupancy_calculator.xls“

========================================

Configuring SDK Makefile (/opt/cuda/sdk/common/common.mk)...

========================================

* Please make sure your PATH includes /usr/local/cuda/bin
* Please make sure your LD_LIBRARY_PATH includes /usr/local/cuda/lib

* To uninstall the NVIDIA CUDA SDK, please delete /opt/cuda/sdk
* Installation Complete
4. System einrichten
a) LD_LIBRARY_PATH für CUDA libs setzen
Um die CUDA Libraries zu nutzen müssen diese in den Library Suchpfad aufgenommen werden und das geht so:

flo@acer ~ $ cat /etc/ld.so.conf.d/cuda.conf
/usr/local/cuda/lib/
flo@acer ~ $ sudo ldconfig

b) CUDA BIN Verzeichnis zum PATH hinzufügen
Der CUDA Compiler nvcc muss im PATH gefunden werden. Eine Möglichkeit das zu erreichen ist den Pfad in der Bash Konfiguration zu erweitern:

flo@acer ~ $ cat /etc/bash.bashrc
...
PATH=$PATH:/usr/local/cuda/bin

Sobald eine neue Shell geöffnet wird, wird der Pfad nun entsprechend angepasst.

c) Compiler-Flags für GCC 4.4/Ubuntu 9.10 anpassen
Als letztes muss nun noch ein kleiner Eingriff in die CUDA Compilerflags erfolgen, um CUDA mit dem GCC 4.4 (standard bei Ubuntu 9.10) nutzen zu können. Konkret muss das Flag “-O2″ entfernt werden und das geht so:

flo@acer ~ $ sudo cp /opt/cuda/sdk/common/common.mk /opt/cuda/sdk/common/common.mk.org
flo@acer ~ $ sudo sed -i 's/COMMONFLAGS += -O2/#&/' /opt/cuda/sdk/common/common.mk

d) Freuen und evtl. mit einem der mitgelieferten Beispiele gleich Testen ;)

Quellen

Jan

16

Posted by : Florian Löffler | On : 16.01.2010

hd_smallLeider bietet Ubuntu karmic standardmäßig nur NTFS-Lesezugriff. Um auch schreibend auf NTFS formatierte Medien zugreifen zu können muss man das Konfigurationstool ntfs-config installieren und unter dem neu hinzugekommenen Menüpunkt System->Systemverwaltung->NTFS Konfigurationstool den Schreibzugriff für die entsprechenden Partitionen aktivieren.


Die Installation kann unter Ubuntu karmic einfach mit einem Klick auf folgenden Link vorgenommen werden: apt://ntfs-config

Für externe Medien muss man — umständlicherweise — den ersten Dialog zunächst mit Anwenden bestätigen und im, dann erscheinenden, zweiten Dialog den Schreibzugriff für externe Medien aktivieren.

Genau erklärt findet man das Ganze auch noch im Ubuntu Geek Blog Artikel über NTFS Schreibsupport

Dez

28

Posted by : Florian Löffler | On : 28.12.2009

brain_backupDa durch akutes Festplattensterben in meiner Umgebung die Aufmerksamkeit mal wieder auf ein ordentliches Backup gelenkt wurde, habe ich mich heute mal etwas mit der Thematik auseinandergesetzt. Und wenn ich schon dabei bin, will ich es natürlich richtig machen.

Ein einfaches rsync-Backup mit Rotationen, wie es z.B. rsnapshot bietet, ist mir nicht genug, da ich nur eine begrenzte Anzahl an alten Versionen aufheben kann.

Interessant ist auch der Ansatz eines versionierten Dateisystems namens ext3cow, dass wohl schon recht nahe an Apples Time-Machine herankommt. Leider ist das Ganze wohl noch nicht ganz ausgereift und wird wohl noch einge Zeit brauchen bis es seinen Weg in den Linux Kernel findet.

Die optimale Lösung setzt wohl auf Subversion in Verbindung mit einigen Scripten, die sich um ein regelmäßiges, automatisches einchecken kümmern. Wie man so etwas hinbekommt beschreibt Christopher Ingram in seinem Blog in drei ausführlichen Einträgen (Teil 1, Teil2, Teil3).

Wie’s aussieht werde ich letztere Lösung in naher Zukunft an zwei Standorten einrichten und werde berichten wie’s gelaufen ist.

Nov

17

Posted by : Florian Löffler | On : 17.11.2009

simplesamlphp-sLetztens musste ich SimpleSAMLphp als SP/IdP für mein lokales SSO Entwicklungssystem aufsetzen. Allerdings wollte der SSO Vorgang nicht recht funktionieren.
Nach einigem Stochern in den Logs bin ich auf folgendes gestoßen:

flo@acer ~ $ tail -f /var/log/apache2/error.log
...
[Sun Nov 15 15:41:52 2009] [error] [client 127.0.0.1] ALERT - configured GET variable value length limit exceeded - dropped variable 'SAMLRequest' (attacker '127.0.0.1', file '/var/www/simplesaml/saml2/idp/SSOService.php'), referer: http://sp-ssphp.localhost/simplesaml/saml2/sp/idpdisco.php?entityID=http%3A%2F%2Fsp-ssphp.localhost%2Fsimplesaml%2Fsaml2%2Fsp%2Fmetadata.php&return=http%3A%2F%2Fsp-ssphp.localhost%2Fsimplesaml%2Fsaml2%2Fsp%2FinitSSO.php%3FRelayState%3Dhttp%253A%252F%252Fsp-ssphp.localhost%252Fsimplesaml%252Fexample-simple%252Fsaml2-example.php&returnIDParam=idpentityid

Die Logmeldung weißt auf einen Verstoß gegen die Suhosin Richtlinen für die maximale Parameterelänge hin. Da die SAML2 Nachricht “vorneherum” via GET Variable übertragen wird ergibt sich ein recht ansehnliche Parameterlänge, welche von Suhosin als Angriff gewertet und geblockt wird.

Um das Problem zu beheben muss einfach die maximale Parameterlänge in der /etc/php5/conf.d/suhosin.ini erhöht werden. Eine Erhöhung von 512 auf 1024 hat in meinem Fall ausgereicht:

flo@acer ~ $ cat /etc/php5/conf.d/suhosin.ini
...
;suhosin.get.max_value_length = 512
suhosin.get.max_value_length = 1024
...

Viel Spass!

Nachtrag
Folgendes muss auch noch angepasst werden:

flo@acer ~ $ cat /etc/php5/conf.d/suhosin.ini
...
;suhosin.cookie.max_name_length = 64
suhosin.cookie.max_name_length = 128
...

Nov

03

Posted by : Florian Löffler | On : 03.11.2009

php-gtk Seid ich in letzter Zeit wieder vermehrt mit PHP arbeite und daraus auch ein Projekt mit grafischer Oberfläche entstanden ist (siehe RRZE Icon Inspector) bin ich relativ begeistert von PHP-GTK.

Was ist PHP-GTK?
PHP-GTK erweitert PHP um GTK+ Bindings und bietet so ein objektorientiertes Interface zu GTK+. Dadurch wird die Entwicklung plattformübergreifender PHP Applikationen mit grafischer Oberfläche ermöglicht.
Woher bekommt man PHP-GTK?
Momentan wird PHP-GTK von den meisten Distributionen noch etwas stiefmütterlich behandelt (keine Ahnung wieso). So gibt es meist keine vorgefertigten Pakete, obwohl PHP-GTK bereits Version 2.01 erreicht hat.
Als Paketquellen konnte ich verschiedene Seiten fleißiger Personen ausfindig machen, die jeweils vorkompilierte Pakete zur verfügung stellen. Diese möchte ich euch natürlich nicht vorenthalten.
Paketquellen

Update (05.05.2010)
Für das neue Ubuntu 10.04 – Lucid Lynx empfehle ich wärmstens die Selbstbauanleitung aus den Ubuntu Foren.
Hat bei mir einwandfrei funktioniert.

Nov

01

Posted by : Florian Löffler | On : 01.11.2009

eclipse-iconBeim Installieren des aktuellen Eclipse unter Ubuntu 9.10 (karmic) bin ich auf einen sehr nervigen Bug gestoßen.


Das Problem
Mit karmic das neue Gnome 2.28.1 und damit GTK+ 2.18 eingführt wurde, welches seit neuestem ein verändertes Windowmanagement – sogenannte “Client-Side Windows” – benutzt. Da Eclipse dies offenbar nicht ordentlich unterstützt sind einige Schaltflächen nicht klickbar bzw. bleiben bei einem Klick “versenkt” ohne jedoch auszulösen. Außerdem Ist die Liste installierbarer Plugins (New Software) unsichtbar.

Die Lösung
Die Lösung ist die Umgebungsvariable GDK_NATIVE_WINDOWS mit der man GTK+ dazu bewegen kann wieder das alte Fenstermodell zu benutzen.
Startet man Eclipse wie folgt funktioniert es wieder einwandfrei.

flo@acer ~ $ GDK_NATIVE_WINDOWS=1 /opt/eclipse/eclipse

Das Ganze lässt sich dann auf Wunsch noch in ein kleines Shellscript verpacken.

Quellen