Nudge am 06.12.2011

CIFS verzögert Shutdown in Debian

in Linux, Tipp | Tags: CIFS, Debian, Problem, Shutdown

Manche Sachen nerven, aber wenn es nicht allzu nervt, geht man eine Lösung nie an: Wenn man CIFS-Freigaben gemountet hat, sollten diese natürlich beendet (umount) werden, bevor die Netzwerkverbindung abgebaut wird. Dazu kennt Debian verschiedene Kill-Scripte in /etc/rc6.d/ beziehungsweise /etc/rc0.d/. Das Problem an der Stelle ist, dass in den reboot- oder shutdown-Modus per init erst gewechselt wird, wenn KDE sich fertig abgemeldet hat. Dann ist allerdings auch unter Umständen die per NetworkManager aufgebaute WLAN-Verbindung im Eimer.

Ein Grund mehr, Netzwerk-Verbindungen nicht im Desktop, sondern in /etc abzufackeln – warum sollte ein gewöhnlicher Nutzer einen Rechner in ein fremdes Netzwerk schleusen dürfen? Viel zu riskant, sagt da der Admin! Auf der anderen Seite nicht ganz so zeitgemäß. Der Trend geht eher zum Zweitrechner, und es gibt wohl mehr Rechner als Root-Accounts auf dieser Welt. Jeder ist also Root, und deshalb darf auch jeder seinen Rechner im Desktop dahin einstöpseln, wovon ihn sowieso nur noch ein beherztes sudo trennt.

Um das nervige Problem zu beenden, habe ich mir heute ein eigenes shutdown-Script geschrieben, welches myshutdown heißt und unter /usr/local/bin liegt. Es umountet also erst alle aktiven CIFS-Drives und beendet dann den Rechner per shutdown -h now. Zugegebenermaßen ein sehr krudes Mittel, weil KDE natürlich auch gern sauber beendet werden möchte, aber man kann es leider nicht allen recht machen.

1
2
3
4
5
6
7
8
9
#!/bin/bash
 
MNT=`mount | grep "type cifs" | cut -d' ' -f 3`
for mntpoint in $MNT
do
        umount $mntpoint
done
 
/sbin/shutdown -h now
#!/bin/bash

MNT=`mount | grep "type cifs" | cut -d' ' -f 3`
for mntpoint in $MNT
do
        umount $mntpoint
done

/sbin/shutdown -h now

Das ganze Script mit chmod a+x,u+s für alle ausführbar machen und wer will, kann das noch in die /etc/sudoers eintragen:

1
nudge   ALL=(ALL) NOPASSWD:/usr/local/bin/myshutdown
nudge   ALL=(ALL) NOPASSWD:/usr/local/bin/myshutdown

Das ganze kann man dann per khotkeys auf das KDE-Standard-Shutdown-Kürzel Strg + Alt + Bild runter mappen. Und schon gehts tierisch schnell ab in den Keller mit dem Rechner. Keine Timeouts beim Abwarten auf ein CIFS-Drive ohne Netzwerk mehr – hier sind 300 Sekunden Timeouts nicht Ungewöhnliches.

Nudge am 23.05.2011

App vorgestellt: id3v2 zum Editieren von MP3-id3-Tags

in Linux, Musik, Tipp, Tools | Tags: ID3, MP3, Tags, Tool

Das Mini-Kommandozeilen-Tool id3v2 zur Bearbeitung von id3-Tags in MP3-Dateien ist ein sehr schönes Tool. Es ist ganz easy installiert und angewendet. Zum Beispiel löscht man sowohl alte (v1) wie neue Meta-Daten von MP3-Songs mit -D:

1
$ id3v2 -D MeinSong.mp3
$ id3v2 -D MeinSong.mp3

Ganz intuitiv auch die weiteren Optionen zum Setzen von Daten: –artist (-a), –song (-t), –album (-A), –year (-y), –track (-T):

1
$ id3v2 --artist "Chuck Norris Girls" --song "Hell Yeah" MeinSong.mp3
$ id3v2 --artist "Chuck Norris Girls" --song "Hell Yeah" MeinSong.mp3

Und das coolste Feature ist, dass der editierende Aufruf die Tags nicht löscht, sondern nur die spezifizierten Teile ersetzt. Hat man also eine ganze Platte ohne Tags, so kann man schnell mal

1
$ id3v2 --artist "Mölkau All Stars" --album "The red album" --year "1994" *.mp3
$ id3v2 --artist "Mölkau All Stars" --album "The red album" --year "1994" *.mp3

benutzen, um seine Sammlung zu korrigieren.

Viel Spaß!

Nudge am 12.12.2010

vi: Getter und Setter automatisch generieren

in PHP, Tipp | Tags: Code, Generieren, Getter, PHP, Setter, Stub, vi

Ich habe bisher im vi nicht wirklich vermisst, dass Code generiert wird.
Aber seit dem ich es habe, finde ich es nur noch cool. 🙂 Das möchte ich Euch auf jeden Fall vorstellen.
Weiter lesen »

Nudge am 26.11.2010

Effektiv Spam bekämpfen mit Wegwerf-Mail-Adressen

in Open Source, Tipp | Tags: Email, LDAP, Postfix, Spam

Man kann seinen Mail-Server leider nicht gegen jeden Spammer schützen, das ist klar. Es werden sich immer wieder neue Lücken für Unrat auftun. Seien es Sicherheitslücken oder auch derart, dass eine Email-Adresse publiziert werden muss. Zum Beispiel, wenn man Ansprechpartner für ein gewisses Thema ist. Deswegen habe ich über eine andere Alternative nachgedacht und dabei sind mir Einmal-Mail-Adressen in den Sinn gekommen. Die Idee dahinter: Email-Adressen, die automatisch ablaufen.
Weiter lesen »

Nudge am 17.11.2010

Varchar Länge in MySQL

in MySQL, Tipp | Tags: MySQL, Performance, Unicode, varchar

Früher war es sehr oft üblich, varchar(255) an jede Hauswand zu sprühen, wo Text in MySQL zu speichern war. In letzter Zeit sehe ich häufig varchar(32), varchar(64) und so weiter in verschiedenen Datenbank-Layouts. Ist das besser? Welche Länge ist eigentlich gut? In diversen Foren wird über varchar diskutiert, denn es ist oft ein entscheidendes Performance-Kriterium.

Weiter lesen »

Nudge am 28.04.2010

iPad oder WePad

in Tipp | Tags: Apple, iPad, Safari, Test, WePad

Heute habe ich zum ersten Mal das iPad in den Händen gehalten. Hier findet ihr meinen ersten Eindruck von Apple’s neuem Baby – was mich gefreut oder auch gestört hat.

Zunächst ist es etwas schwerer, als es auf den ersten Blick erscheint. Auf der Rückseite ist es leicht gerundet, sodass es zwar gut in einer Hand liegt, aber beim Hinlegen wie eine Gemüsewiege hin- und herschaukelt, wenn man mal mit zwei Händen tippen will. Das ist wohl etwas unglücklich. Apple-typisch hat das iPad nur 4 echte Tasten: An, Laut/Leiser, Lock für automatische Drehung des Bildschirms und den vom iPhone bekannten Zurück-Button zentral unter dem Screen. Schauen wir mal weiter.

Weiter lesen »

Nudge am 03.04.2010

MP3-Dateien schneiden

in Tipp | Tags: audio, Konsole, MP3, mp3cut

Manchmal hat man keine Lust, MP3AudioDateien erst in ein grafisches Programm wie Audacity oder ähnliches zu laden, bevor man diese zerschneiden oder zusammenbasteln kann. Hier hat mir das Programm mp3cut gute Dienste leisten können. Nach einer neuen Installation meines Rechners hatte ich vergessen, mp3cut neu zu kompilieren. Heute habe ich allerdings entdeckt, dass es auch im DebianPaket poc-streamer als Werkzeug enthalten ist.

Ein einfacher Schnitt kann da zum Beispiel so aussehen:

1
$ mp3cut -o out.mp3 -t 1:24-2:12 beispiel.mp3
$ mp3cut -o out.mp3 -t 1:24-2:12 beispiel.mp3

Und schwuppdiwupp hat man das angegebene Stückchen als neues MP3. Dabei benutzt mp3cut ganz intelligent Stellen, in denen es zu keinen Störungen kommt, um die Qualität an den Schnitträndern zu erhalten.

Nudge am 17.03.2010

HTML-Tabellen per Javascript sortieren lassen

in HTML, Tipp | Tags: HTML, JavaScript, Sortierung, Tabelle

…Ich habe zulange gewartet …meine Schmerzgrenze war vielleicht zu hoch …aber heute tat ich diesen Schritt …und suchte nach “javascript sort table” …und die Lösung lag doch nur einen Steinwurf entfernt …und schmeichelte mit einer kinderleichten Installation …warum habe ich so lange gewartet?! Ich kann es nicht mehr nachvollziehen…

Hier verkünde ich: Wer dieses tolle Tool zum Sortieren von HTML-Tabellen NICHT einsetzt, gehört zurückversetzt nach Klasse Web 0.9! So, basta!

Ich möchte es nie mehr missen!

Nudge am 19.02.2010

Subversion: propset keyword Id automatisieren

in PHP, Tipp | Tags: Id, Keyword, PHP, Property, Subversion, SVN

Wer seine Quelldateien in einem Subversion (SVN) vorhält, kennt die Keywords Id oder Revision, die man zum Beispiel in PHP folgendermaßen in einer Datei example.php als Kommentar benutzen kann:

1
/* $Id$ */
/* $Id$ */

Beim Einchecken macht SVN aus dem Keyword Id:

1
/* $Id: example.php 569 2010-02-19 15:17:49Z nudge $ */
/* $Id: example.php 569 2010-02-19 15:17:49Z nudge $ */

Wenn nun jemand im Projekt ein bisschen herumsucht und nicht so richtig zurechtkommt, so sagt ihm diese Angabe, dass es sich um die Datei example.php handelt, die in Revision 569 des Projekts vorliegt, und diese wurde am 19.02.2010 um 15:17 das letzte Mal geändert, und zwar vom Benutzer Nudge. Das ist richtig toll, doch leider macht das SVN erst, wenn man alle Dateien mit diesem Keyword-Property ausgestattet hat. Besser also, man erleichtert sich das durch eine geeignete Voreinstellung. Diese bekommt man in der Datei ~/.subversion/config hin:

1
2
3
4
5
[miscellany]
enable-auto-props = yes
 
[auto-props]
*.php = svn:keywords=Id;svn:eol-style=native
[miscellany]
enable-auto-props = yes

[auto-props]
*.php = svn:keywords=Id;svn:eol-style=native

Bisher erstellte Dateien berührt diese Voreinstellung nicht. Wenn man schon eine ganze Menge Dateien eingecheckt hat, so benutzt man am besten ausgecheckten (!) Pfad des Projekts folgenden Bash-Befehl, um alle darin enthaltenen PHP-Dateien nachträglich das Keyword-Property zu verpassen:

1
$ find ./ -name '*.php' -exec svn propset svn:keywords 'Id' {} \;
$ find ./ -name '*.php' -exec svn propset svn:keywords 'Id' {} \;

Und schon ist man dem PHP-Entwickler-Glück wieder ein Stückchen näher gekommen. 🙂

Nudge am 07.02.2010

Forestle, die grüne Suchmaschine, und lahme Nachahmer

in Tipp, Web | Tags: lighttpd, Natur, Suchmaschine

Ich kann Euch nur www.forestle.org als Suchmaschine ans Herz legen, denn hier wird pro Suche 0,1m² Regenwald zum Schutz vor Rodung gekauft. Im Hintergrund wird Yahoo’s Suchmaschine angesprochen, die ja bekanntlich  Bing-Technologie einsetzt.

Dagegen sind die Domain-Nachahmer bei forrestle.org etwas lahmer und schaffen es wohl derzeit nicht, ihren lighttpd zu konfigurieren: 🙂

forrestle