Recently, I played around with the Random Number Generator (RNG) of the Mono Project 3.2.8. That version is a rather old one, but it’s the one shipped with Ubuntu 15.04. I needed some random numbers between 0 and 3: Random rng = new Random(); var randomNumber = rng.Next(4); // you get 0,1,2 or 3 Actually,… Random Number Generator of Mono <= 3.12 is broken weiterlesen
Autor: Marc
Varoufakis-Fake-Fake
Ich muss ja zugeben, dass ich so ein bisschen in Jan Böhmermann und das Team des NEO Magazins verliebt bin. Besonders schön finde ich es, wenn Moderatoren den Mumm haben, ihre eigenen Zuschauer zu verarschen zur Reflexion zu bringen: Am Sonntag war Yanis Varoufakis, Minister of Awesome, bei Jauch zugeschaltet. Dort wurde er auf den… Varoufakis-Fake-Fake weiterlesen
copy random files to another directory
Sometimes (probably not that often), you want to copy a sample of files to another directory. For example, copy random mp3s of your collection to a flash drive for your car. you could add -n100 to shuf to strip the sample down to 100 items. Otherwise, it will just copy your files as long as… copy random files to another directory weiterlesen
Raspberry Pi und DCF77 Empfänger von Conrad
/edit: Bitte beachtet auch das Update im forum-raspberrypi.de, etwaige andere Forumsbeiträge über Google und die Kommentare unter diesem Artikel. Ich selber habe leider den RaspberryPi mit DCF77 nicht mehr im Einsatz, da es eine Auftragsarbeit war. Gerade habe ich einen Raspberry Pi zur Funkuhr aufgerüstet. Das Funksignal kommt vom DCF77 – das ist der Sender, den auch eure… Raspberry Pi und DCF77 Empfänger von Conrad weiterlesen
GPS based Geolocation of pictures in digiKam
Recently, I got a new DSLR. It’s a Canon 1200D/Rebel T5 (basically the one you choose if you don’t know anything about photography). Of course I want the geolocation in my EXIF data. Unfortunately, there is no GPS built in. You can probably buy a GPS module and stuff, but I don’t want to buy… GPS based Geolocation of pictures in digiKam weiterlesen
Akkus beim Laden zuschauen.
Nächste Woche startet mein Experiment. Ich werde dann 5 Tage lang von 08:00 bis 20:00 am KIT in einem Labor sein. Da werde ich jeden Tag 4-mal einer Gruppe von 5 Personen dabei zuschauen, wie sie Filme anschauen und Fragebögen ausfüllen. Ja. Unter Forschung stellt man sich gemeinhin wohl etwas spektakuläreres vor. ;-) Im Moment… Akkus beim Laden zuschauen. weiterlesen
Liebesgrüße vom Congress. Für Zeitungsleser/Innen.
Hi liebe Leserin oder Leser, welche/r du gerade von deine/r Lieblingszeitung hier hergekommen bist! Wahrscheinlich bist du wegen diesem CCC-Spam-HsKA-Dings hier. Deswegen stell ich hier noch mal übersichtlich alle relevanten Links zusammen: Hier im Blog gibt es Informationen zum technischen Ablauf und Hintergrund: ein mal für Nerds. und ein mal für normale Menschen. Tim Roes… Liebesgrüße vom Congress. Für Zeitungsleser/Innen. weiterlesen
Liebesgrüße vom Congress. Für Nicht-Techies.
Vor ein paar Tagen habe ich eine Anfrage einer Redakteurin von ka-news.de erhalten. Der Artikel ist mittlerweile veröffentlicht. Die Bitte war, noch einmal für Laien zu erklären, wie der Angriff auf den Mail-Server der HsKA ablief. Da die Mail eine beachtliche Länge erreicht hat, und ich in ihr noch mal einiges auf einem verständlicheren Niveau… Liebesgrüße vom Congress. Für Nicht-Techies. weiterlesen
Audio als FLAC aus Video extrahieren (VLC)
Liebesgrüße vom Congress
Die Mail Heute gab es um 15:43 eine Ladung Liebesgrüße für alle Studierenden der Hochschule Karlsruhe. Die kamen per Mail an die Hochschuladresse an und waren wie folgt aufgebaut: Betreff: Hi! Hi <Empfänger-Vorname>, ich hab dich letztens auf dem Campus gesehen und musste dich einfach ewig ansehen. Ich glaube du warst mit Kommilitonen auf dem… Liebesgrüße vom Congress weiterlesen
Schöne Weihnachten
Die App: TelCoApp
Die App nennen wir – in Ermangelung eines fancy Namen – nach dem, was sie tut. TelCoApp. Damit ist auch schon gesagt, was sie unterstützen soll. Telefonkonferenzen. Wie sieht diese Unterstützung aus? Logisch aus den bisherigen Postings fortgesetzt wird dies wohl etwas mit Telefonkonferenzen, MoodMaps und EKG zu tun haben. Und so ist es auch.… Die App: TelCoApp weiterlesen
Vorgänger der App: MoodMap App
Dann will ich mal anschneiden, an welcher App ich im Zuge meiner Arbeit am Mirror Project arbeite: Keine der dort aufgeführten. :P Im Grunde ähnelt sie aber stark einer der Apps, bzw. ist eine Weiterentwicklung: MoodMap App (Bilder dort). MoodMap also… okay… eine MoodMap ist eine zweidimensionale Karte. Auf der einen Dimension wird Arousal (körperliche… Vorgänger der App: MoodMap App weiterlesen
Forschungsprojekt: Mirror – Reflective Learning at Work
Im letzten Beitrag habe ich kurz erläutert, in welchem Forschungsbereich ich stecke – aber noch nicht in welchem Forschungsprojekt. Mirror. Das Mirror Project ist ein Forschungsprojekt der EU im sogenannten 7th Framework Programme for Research and Technological Development (darüber wird jede Menge Zeug finanziert). Mirror hat den Untertitel Reflective Learning at Work. Nehmen wir das… Forschungsprojekt: Mirror – Reflective Learning at Work weiterlesen
Forschungsbereich: Medizinische Informatik
Im letzten Beitrag habe ich kurz auf die Forschungsbereiche des FZI verwiesen, aber noch nicht angesprochen in welchem Kasten ich da stecke: Medizinische Informationstechnik. Zumindest irgendwie im weitesten Sinne. Das hat weitaus weniger mit Blut, Tumoren und Herzschrittmachern zu tun als es sich anhört. Der nachfolgende Abschnitt von der Website des FZI erklärt das so… Forschungsbereich: Medizinische Informatik weiterlesen
am FZI sind die Tassen Public Domain
Seit dem 1. Dezember 2013 bin ich nun als Masterand am Forschungszentrum Informatik am Karlsruher Institut für Technologie. Kurz FZI. Hier am FZI werden so circa verschiedene Systeme konzipiert und Prototypen entworfen. Auf der Website findet man eine schöne Übersicht über die aktuelle Forschung. An welchem dieser Kästchen ich beteiligt bin – dazu in einem… am FZI sind die Tassen Public Domain weiterlesen
reconnect script for TD-W8960NB
In germany, our ISPs provide us a nasty thing called „24h reconnect“. Every 24 hours, the DSL connection is reseted (don’t ask why. They claim to have good reasons…). Certain manufacturers of DSL routers/access points adapted to the german market and provide a feature to reconnect at a certain time (like 04:00am when nobody’s working).… reconnect script for TD-W8960NB weiterlesen
web2py AJAX is not working if the proper URL has not been used
At the moment, I’m playing around with web2py (a nice full-stack bundle to develop Python Web Applications). I created a simple AJAX button which just shows a simple message: AudacityControlWeb/views/default/index.html: AudacityControlWeb/controllers/default.py: I called http://127.0.0.1:8000/AudacityControlWeb/default/index and clicked the button. Everything is working perfect. As I’m developing this tool for an Android device, I also called it… web2py AJAX is not working if the proper URL has not been used weiterlesen
calling Bash script in Python / missing shebang
I recently tried to call a „bash“ script (actually it just was rather a batch script with some commands) out of a python script: Unfortunately, it did not work: The problem was, that foo.sh missed the „shebang-line“
Serie von tarballs entpacken und zusammen neu packen
Hat man eine Serie von Tarballs (z.B. durch Backups auf einem Webspace), dann sind diese in der Regel nicht inkrementell und werden somit immer größer (und beinhalten zugleich größtenteils das selbe). Um den Platzbedarf zu vermindern kann man alle Tarballs entpacken und neu zusammenpacken: als root (weil sonst gegebenenfalls Berechtigungen verloren gehen):
Aufnahme von Skype-Interviews mit getrennten Kanälen
Möchte man ein Gespräch mit Skype aufnehmen, dann steht man vor gewissen Problemen. Die API von Skype erlaubt zwar das Abgreifen beider Tonspuren – mit etwas Pech ist die Aufnahme aber dann offsync (also beide Spuren nicht synchron). Mit PulseAudio hat man unter Linux aber einen Soundserver, mit dem man dies relativ gut realisieren kann.… Aufnahme von Skype-Interviews mit getrennten Kanälen weiterlesen
Audio-Setup zum Podcasten
Mit dem Zeugerzähler gehe ich seit kurzer Zeit meinem heimlichen Faible nach, Sprache aufzunehmen und Texte einzusprechen. Das passiert alles natürlich auf einem extrem amateurhaftem Niveau, und ebenso sieht das Audio-Setup dazu aus: Das Mikrofon ist bisher einfach ein handelsübliches (Gamer?)-Headset, dessen Preis ich immer auf 15€ geschätzt habe. Das Produkt, dass bei Amazon dem… Audio-Setup zum Podcasten weiterlesen
.htpasswd geht nicht wegen fehlendem +x Recht
Gerade bin ich wieder in einen beliebten Fehler gelaufen: Wenn ein anderer User (z.B. „apache“) auf eine Datei zugreifen will, dann müssen alle Verzeichnisse im gesamten Pfad das +x Recht besitzen. Hat man also beispielsweise die Datei /home/$user/html/$foo/.htaccess, in der folgendes steht: während /home/$user/html ein Symlink auf /var/www/virtual/$user/html ist, kann apache unter Umständen nicht auf… .htpasswd geht nicht wegen fehlendem +x Recht weiterlesen
Podflow
In den letzten Tagen habe ich ein Plugin für den Podlove Publisher geschrieben: Podflow. Die Idee hinter Podflow ist es (wie im Grunde hinter dem gesamten Podlove Projekt), die Veröffentlichung von Podcasts so einfach wie möglich zu machen. Hierzu findet in Podflow ein, im Grunde ziemlich einfache, Integration der Auphonic API und Podlove statt: der… Podflow weiterlesen
Filme über SSH/SFTP-Server auf Android streamen
Möchte man auf seinem Android Filme anschauen, die nicht lokal auf dem Gerät liegen, sondern über SSH/SFTP auf einem anderen System zugänglich sind, steht man vor zwei Problemen: Zugriff auf den SFTP-Server Streaming des Films ohne den kompletten Film zu cachen Eine Kombination, die dies möglich macht sind die beiden Apps „ES File Explorer“ und… Filme über SSH/SFTP-Server auf Android streamen weiterlesen
MySQL CSV Export mit n:m Beziehung und WordPress CSV Import
Als ich von meinem alten Blogsystem (Eigenentwicklung) auf WordPress umstellen wollte, ergab sich das Problem, wie ich meine alten Postings möglichst verlustfrei in WordPress importieren kann. Das Problem stellte dabei eine N:M Beziehung in meinem Altsystem dar: Ein Posting hat mehrere Tags und jedes Tag kann natürlich von mehreren Postings verwendet werden. Die Grundidee war… MySQL CSV Export mit n:m Beziehung und WordPress CSV Import weiterlesen
kein Strich bei wiederholendem Autor in BibLaTeX mit authoryear
Wird hintereinander mehrmals der gleiche Autor aufgezählt, so ersetzt der BibLaTeX-Style „authoryear“ diesen durch einen Strich. Dies lässt sich sehr einfach ändern, in dem man folgenden Code einfügt:
umbenannter Key mit git
Hat man gemäß der Anleitung bei github (oder irgendwo anders) einen Key hinterlegt, ihn aber nicht mit dem standardmäßigen „id_rsa“ benannt (sondern z.B. „~/ssh/github“), dann wird man von git abgestraft, da der Key natürlich nicht gefunden wird. Man kann nun aber diesen Key dem ssh Agent bekannt machen, dann funktioniert es:
Hardlinks einer Datei finden
Leeres kompiliertes Template bei fehlendem Lesezugriff
Die Template-Kompilierung von phpBB3 liest Daten mittels file_get_contents() aus. Stößt diese Funktion auf irgendeinen Fehler (so zum Beispiel fehlende Leserechte), gibt sie lediglich FALSE zurück, wirft aber keinen Error. Dies führt dazu, dass phpBB3 annimmt, dass das Template leer sei und daher ein leeres Kompilat generiert.
Python und HTTP Proxy
Wer Python-Skripte hinter einem HTTP-Proxy benutzen möchte, kann dies über das setzen einer Umgebungsvariable machen:
Bücher bzw. alle Kapitel von SpringerLink gesammelt herunterladen
Wer SpringerLink benutzen möchte, wird sich schnell daran aufhalten, alle Kapitel eines Buches manuell herunterzuladen. Mittels folgenden Skriptes kann man dies automatisieren; die PDFs werden anschließend zudem zu einem PDF zusammengefügt. http://milianw.github.com/springer_download/
Skript um Mono 2.10 zu installieren
Hier ein Skript, um verschiedene Mono-Versionen (z.B. 2.10, 2.8, 2.6) parallel unabhängig von der Paketverwaltung zu installieren: http://github.com/firegrass/mono-installer-script
Snap wie unter Windows 7 für Gnome
Von Windows 7 kennt man die Snap-Funktion, die Fenster am linken, rechten und oberen Bildschirmrand maximieren kann. Das kann man auch relativ einfach für Gnome bzw. Compiz nachbauen: http://linuxundich.de/de/software/aero-snap-mit-gnome-und-compiz/
ghostscript 8.71 hat Probleme mit ps2pdf
ghostscript 8.71, welches beispielsweise in Ubuntu 10.10 ausgeliefert wird, hat einen Bug in der pdf-Umwandlung. Dieser führt dazu, dass das PDF zwar scheinbar den richtigen Text enthält, im Hintergrund aber etwas anderes hinterlegt ist. Dies führt dazu, dass man den Text mit Adobe Reader nicht durchsuchen und kopieren kann. Die Folgeversion ghostscript 9.00 behebt diesen… ghostscript 8.71 hat Probleme mit ps2pdf weiterlesen
man-pages auf Englisch
Viele Distributionen bieten mittlerweile (veraltete) Übersetzungen der man-pages an. Um dies zu unterbinden, kann man in der ~/.bashrc folgendes hinzufügen:
Verändern von .deb Paketen
Vorlagen für LaTeX
Wissenschaftliche Arbeiten schreibt man oft mit LaTeX – das Layout etwas auszuschmücken und an deutsche Gepflogenheiten anzupassen, ist jedoch mitunter recht aufwändig. Nachfolgend sind einige Vorlagen zu finden, die einen Rahmen für die eigene Arbeit darstellen können. Zu Beachten ist, dass manche Vorlagen auf doppelseitigen Druck (unterschiedliche Header auf gerade und ungeraden Seiten), manche auf… Vorlagen für LaTeX weiterlesen
Lesezeichen von Nautilus/GTK
Liegen als Plaintext unter „~/.gtk-bookmarks“
Unicode in Python mit Pipes
Python gibt bei der Verwendung von Unicode und Pipes möglicherweise folgendes Problem aus: Mit der folgenden Einstellung wird „print“ die Ausgabe immer in UTF-8 kodieren:
„Öffnen mit“-Assoziationen in Nautilus
Benutzerspezifische Einträge für das „Öffnen mit“ in Nautilus lassen sich unter „~/.local/share/applications/mimeapps.list“ finden und korrigieren.
Thunderbirds Tab-Leiste bei nur einem Tab verstecken
Möchte man, dass die Tab-Leiste in Thunderbird 3 ausgeblendet wird wenn nur ein Tab geöffnet ist, so kann man in about:config die Option setzen.
Grip unter Ubuntu 10.10
Da ich Grip nach wie vor gerne benutze und Ubuntu 10.10 nach wie vor das Paket entfernt hat, habe ich das Debianpaket für Ubuntu „umgeschrieben“ (d.h. den Namen einer Abhängigkeit (libkrb53 auf libkrb5-3) korrigiert). http://www.file-upload.net/download-3067422/grip_3.3.1-15-mako_i386.deb.html (Update: Link leider defekt)
Chainload von Grub1 auf Grub2
Ein Chainload auf Grub2 kann man wie folgt bewerkstelligen (warum es nicht mit „chainloader +1“ funktioniert, ist mir leider nicht so recht klar.):
Constraints einer Tabelle aktivieren bzw. deaktivieren in MSSQL
Aufruf via (Quelle: http://www.databasejournal.com/scripts/article.php/1459571/Disabling-or-Enabling-All-Constraints-of-a-Table-or-Database.htm)
DateTime des Monatsanfangs in MSSQL
Nicht schön, aber selten: Ergibt z.B. „2010-12-01 00:00:00.000“
Headings in ODT
In OpenDocument-Text werden Überschriften als ausgezeichnet. Dabei ist zu beachten, dass „foo“ hier eine benutzerdefinierte Überschrift ist. Bei mir war dies in einem Test allerdings nicht der Fall, sondern wurde als gespeichert. Die Ursache war, dass in OpenOffice.org keine Gliederungsebene in der Absatzvorlage der Überschrift definiert war.
XML formatieren
Mit kann man eine XML-Datei formatiert ausgeben lassen.
einfache topologische Sortierung
Beim Aufbau einer Abhängigkeitsliste stand ich vor dem Problem, eine Liste von Tabellen topologisch zu sortieren (damit keine Probleme mit Fremdschlüsseln auftreten). Das macht man eigentlich mittels einer topologischen Sortierung, welche zu implementieren ich aber spontan keine Lust hatte. Stattdessen habe ich einen abgewandelten Postorder-Baumdurchlauf benutzt: getTableDependencies() ist eine sehr spezifische Funktion, die mit dem… einfache topologische Sortierung weiterlesen
JPG in Film umwandeln
Prinizipiell geht folgender Befehl, jedoch scheint mplayer allergisch auf fehlerhafte JPGs zu reagieren. Daher vorher eventuell noch mal alle neu konvertieren.
Multithreading auf der Konsole
Möchte man mehrere Programme gleichzeitig (z.B. im Kontext eines Batch-Jobs) ausführen (das will man, wenn man mehr als eine CPU hat), so kann man zu folgenden Tools greifen: xargs mit dem Argument -P xjobs parallel bietet zusätzlich ein Tool an, dass über ssh andere PCs ansteuern kann. ppss
Highlighting auf der Konsole
Hier ein kleines Skript, welches Input auf der Standardeingabe annimmt, alles wieder ausgibt, und das gesuchte Wort farbig markiert. Aufruf: cat /var/log/messages | highlight.sh kernel Im Grunde macht das Ding also so etwas wie die folgende Zeile, nur ohne zu filtern: grep –color=always ‚kernel‘ /var/log/messages
automatischer transparenter Proxy
In der YaCy-Hilfe habe ich gerade folgendes gefunden: „Unter Linux können Sie Ihre Firewall darauf einstellen, alle HTTP-Verbindungen transparent an YaCy weiterzuleiten indem Sie diese iptables-Regel verwenden.: $ iptables -t nat -A PREROUTING -p tcp -s 192.168.0.0/16 –dport 80 -j DNAT –to 192.168.0.1:8080“
SSL-unfähigen Client mit SSL-fähigem Server verbinden
Möchte man einen Client, der kein SSL kann, mit einem Server verbinden, der SSL spricht, kann man das kleine Tool stunnel benutzen: $ sudo stunnel -f -c -d 110 -r login.hs-karlsruhe.de:995 startet den „Wrapper-Server“, der eine SSL-Verbindung zum Server aufbaut, und eine unverschlüsselte Verbindung lokal anbietet. Nun kann man z.B. mit netcat localhost 110 auf… SSL-unfähigen Client mit SSL-fähigem Server verbinden weiterlesen
Postfix das Verschlüsseln beibringen (optional: mit CAcert)
Um den Nachrichtenaustauschen zwischen Client und SMTP-Server zu verschlüsseln, kann man mit Postfix TLS einsetzen. Wie genau, möchte ich hier nicht erklären, sondern auf einige gute Howtos hinweisen: Grob habe ich mich an http://wiki.debian.org/PostfixAndSASL gehalten – allerdings scheinen mir da Stücke vom Code zu fehlen. Diesbezüglich kann man sich gut an http://yocum.org/faqs/postfix-tls-sasl.html halten, und dort… Postfix das Verschlüsseln beibringen (optional: mit CAcert) weiterlesen
Rekursiv alle neuen Dateien zum SVN hinzufügen
Ersatz für „which“ in Windows
Unter Unix ist gehört das Kommando zu den absoluten Basistools: Es zeigt an, wo sich ein Programm innerhalb vom PATH befindet. Man kann es allerdings nachbauen:
Ein weiteres which für Windows
Zuerst ausführen, und dann folgendes VBScript: http://pastie.org/907800
automatische m4a Konvertierung in gPodder
Eine kleine Zeile in einem Skript macht es möglich, m4a Dateien automatisch in mp3 zu konvertieren, wenn man den Player synchronisiert. Eventuell sollte man den ogg-Converter auskommentieren, wenn der Player ogg kann. Siehe: https://bugs.gpodder.org/show_bug.cgi?id=585
Grip unter Ubuntu 9.10
Der AudioCD-Ripper „Grip“ wurde in Ubuntu 9.10 entfernt, da das Projekt seit Jahren nicht mehr weiterentwickelt wird. Allerdings verrichtet es seine Dienste nach wie vor exzellent. Ein .deb lässt sich hier herunterladen: http://ppa.launchpad.net/kirkland/ppa/ubuntu/pool/main/g/grip/
dbus statt gnome-power-cmd
Seit Ubuntu 9.10 funktioniert nicht mehr. Stattdessen kann man aber den folgenden knackigen Befehl benutzen: Problem dabei: Der Bildschirm wird nicht gesperrt. Dazu sollte es aber auch ein Kommando geben, dass man gleichzeitig ausführen kann.
„Ubuntu Firefox Modifications“/ubufox macht Probleme mit TabMixPlus etc.
Installiert man einige Addons in Firefox wie z.B. „Tab Mix Plus“ und „Personal Menu“ während „Ubuntu Firefox Modifications“ aktiviert sind, so bekommt man eventuell (bei mir: ziemlich zuverlässig) Probleme mit veränderten Toolbars etc., da sie in den Standardzustand zurückgestellt werden. Einfach das Addon deaktivieren – einen erkennbaren Nutzen habe ich bisher ohnehin nicht festgestellt.
Alle versteckten Unterordner außer . und .. matchen
In der Bash beispielsweise so:
robots.txt bei wget ignorieren
Will man wget dazu veranlassen, die robots.txt zu ignorieren, muss man den Parameter „-e robots=off“ verwenden. Beachte: Dieser muss direkt vor der URL stehen.
FAT32 Label ändern
Label eines FAT32 Dateisystems anzeigen: Label eines FAT32 Dateisystems ändern:
Alles in Oracle löschen
Möchte man alle Objekte seines Users in Oracle löschen, so kann man sich eine Liste von Statements erzeugen lassen, die man ausführen kann um dies zu bewerkstelligen:
look-around assertion bei RegExp
Beispiel: Ich habe einen String „Katze.spielt.mit.Ball.avi“ und will diesen in „Katze spielt mit Ball.avi“ umwandeln. Dann ginge das (am Beispiel von „rename“) so:
+x Recht eines Verzeichnisses
Das +x Recht bei einem Verzeichnis gestattet/verbietet es unter Unix, dass man das Verzeichnis betreten kann. Was mir neu war, ist, dass dies quasi rekursiv wirkt: Hat man eine Verzeichnisstruktur /foo/bar/baz/, in der außer ‚bar‘ alle Verzeichnisse das +x Recht haben, kann man trotzdem nicht in ‚baz‘ wechseln, da auch ‚bar‘ geprüft wird.
einfacher Logger in C#
Hier ein einfacher Logger (im Grunde nur ein Wrapper um Console.Write()) in C#, den man bei Bedarf an und abschalten kann. Für komplexere Szenarien sind dann natürlich professionelle Logger wie Log4Net zu empfehlen.
Dateien schematisch umbenennen
Kürzlich hat mich ein offensichtlicher Raubkopierer gefragt, wie man eine Reihe von Dateien im Format „American.Dad.S03E01.The.Vacation.Goo.German.FS.dTV.XviD.avi“ so umbenennen kann, dass „American Dad – S03E01.avi“ dabei rauskommt. Eine Lösung wäre z.B.
sshfs mit Key
sshfs kann man zwar nicht direkt einen Key übergeben, aber über einen kleinen Trick geht es dennoch:
UUID einer Partition herausfinden
Bei Grub oder in der fstab kann man statt eines Blockdevices auch die UUID einer Partition angeben. Und die bekommt man wie folgt:
sqlplus unter Linux
Um SQL*Plus unter Linux zu benutzen, müssen unter http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/linuxsoft.html (Logindaten gibts bei BugMeNot.com) die Pakete „Basic“ und „SQL*Plus“ heruntergeladen und entpackt werden. Anschließend muss das Paket „libaio1“ via Paketverwaltung installiert werden. Mit kann man sich nun auf den Server (hier: Oracle-Server der Fakultät WI an der HsKA) verbinden.
Seamless RDP mit Linux und Windows
Den Seamless-Mode kennt man aus Virtual Box: Der Desktop wird nicht gezeichnet, sondern nur die Fenster. Nachteil hierbei ist, dass die Fenster keinen eigenen Eintrag in der Taskleiste der Linux-Umgebung bekommen. Um dies zu realisieren, kann man Seamless RDP verwenden: Im Windows-Host (dieser muss RDP können, was Home-Editionen im Zweifelsfall wohl nicht tun) muss folgendes… Seamless RDP mit Linux und Windows weiterlesen
openvpn bricht wegen fehlender Option ab
Eigentlich ein ziemlich dummer Fehler, warum mein VPN nie funktioniert hat: Auf dem Server war die Kompression eingeschaltet, auf dem Client dagegen nicht. Ein Blick in /var/log/syslog hätte sogar gezeigt: „WARNING: ‚comp-lzo‘ is present in remote config but missing in local config, remote=’comp-lzo’“ Nach dem im NetworkManager die Kompression ebenfalls eingeschaltet wurde, funktioniert alles wunderbar… openvpn bricht wegen fehlender Option ab weiterlesen
.bin mounten
Man kann zwar keine .bin-Images von CDs direkt mounten, aber mit etwas Glück in .iso konvertieren:
anderen lokalen User auf das eigene XDISPLAY zugreifen lassen
Situation: Man ist mit User „foo“ eingeloggt und möchte mit einem anderen, lokalen User „bar“ ebenfalls X-Clients starten.
mehrere Leerzeichen hintereinander durch eins ersetzen
Wichtig ist dabei die Option -r
DBDesigner Fork
Will man den DBDesigner Fork unter Linux mittels dem Skript startdbd_using_kernel2.6 starten, so wirft er einem womöglich diese Fehlermeldung entgegen: „./DBDesignerFork: error while loading shared libraries: libpthread.so.0: cannot open shared object file: No such file or directory“ Hier hilft es, den Teil „LD_ASSUME_KERNEL=2.4.1“ aus dem Skript zu entfernen.
Debug-Modus bei Visual Studio Express
Wer sich schon mal gefragt hat, wie man den Debug-Build bei Visual Studio Express aktivieren kann: Extras → Optionen → [x] Alle Einstellungen anzeigen → Projekte und Projektmappen → Allgemein → [x] Erweiterte Buildkonfiguration anzeigen
ISO-8859-15 nach UTF-8
Kleines, aber feines Tool, um eine Datei nach UTF-8 zu konvertieren: Und dabei braucht es nicht einmal die Angabe des Ausgangszeichensatzes (wie es bei iconv der Fall ist)
rsync und Leerzeichen im Pfad
Aus der manpage: If you need to transfer a filename that contains whitespace, you can either specify the –protect-args (-s) option, or you’ll need to escape the whitespace in a way that the remote shell will understand. For instance:
doppelte @ in Message-ID entfernen
Ich hab mal ein kleines Perl-Script geschrieben, welches überprüft, ob eine Message-ID mehr als ein @ hat (was illegal wäre). Wenn dem so ist, wird die Message-ID umgeschrieben (ja, das ist böse) und die originale als X-Original-Message-ID gesichert. Das Skript basiert auf dem standardmäßigen Input-Output Prinzip: Etwas wird per stdin ‚rein-gepiped‘ und wird per stdout… doppelte @ in Message-ID entfernen weiterlesen
inews -h
Möchte man „inews“ benutzen, so stößt man evtl. auf ein paar Fallstricke: · inews: required Subject header is missing or empty Wurde eine Nachricht mit komplettem Header mitgegeben? Dann muss „inews -h“ benutzt werden. · inews: warning: cannot connect to server Hier ist irgendwo ein falscher Server eingetragen. Entweder in der inn.conf unter „server“ oder… inews -h weiterlesen
Mail2News Gateway mit Inn
Ich möchte hier kurz beschreiben, wie man Mails an eine bestimmte Adresse in eine Newsgroup einspeisen kann. Ich gehe dabei davon aus, dass der Newsserver Inn ist, ein MTA wie Postfix Mails über SMTP annimmt (es geht vermutlich auch mit Fetchmail mit nachgeschaltetem Procmail) und unser Server über foobar.dyndns.org ansprechbar ist. Zuerst muss eine neue… Mail2News Gateway mit Inn weiterlesen
mailpost Fehler auf Grund falscher Berechtigung
Wenn man mit mailpost herumgespielt hat (als User ungleich nobody), so wird man später das Problem haben, das nobody auf eine Datenbank zugreifen will, aber keine Rechte dazu hat: Das einfachste ist, diese Datenbanken zu löschen (sie enthalten die Message-IDs von bisher geposteten Mails) Ein „chown“ sollte auch gehen, und wäre wohl der saubere Weg.… mailpost Fehler auf Grund falscher Berechtigung weiterlesen
End-of-File eingeben
Manchmal erwartet ein Programm eine Eingabe (so z.B. inews oder cat), um dieser weiter zu verarbeiten. Bei mehrzeiliger Eingabe stellt sich nun die Frage, wie man dem Programm klar macht, dass der Text nun zu Ende ist. Die Lösung ist, dass man das Kontrollzeichen End-of-File (EOF) schickt. Dies kann man meist mit STRG+D bewerkstelligen.
rsync über ssh mit alternativem Port
Will man rsync über SSH benutzen, und dabei einen alternativen Port 12345 benutzen, so kann man den Parameter -e benutzen. Dieser gibt an, welches Programm als remote shell benutzt werden soll.
ADO.NET CSV auf deutschen Systemen
Wer sich schon mal mit CSV-Import unter C# herumgeschlagen hat, wird sich auf einem deutschen System vielleicht über folgende Meldung gefreut haben: „Unbehandelte Ausnahme: System.Data.OleDb.OleDbException: Das Feldtrennzeichen für die angegebene Textdatei entspricht dem Dezimaltrennzeichen oder Texttrennzeichen.“ Hierbei handelt es sich um einen ganz großen Wurf von Microsoft: Das Trennzeichen (also das Komma) darf nicht zugleich… ADO.NET CSV auf deutschen Systemen weiterlesen
farbiges diff in SVN mit colordiff
Sein „svn diff“ einzufärben ist denkbar leicht: Zuerst wird colordiff installiert und dann in „~/.subversion/config“ noch folgender Eintrag gemacht:
Alle MyISAM Tabellen umwandeln
Wenn man alle Tabellen umwandeln will, ist es vermutlich ziemlich ätzend, jede einzeln umzuwandeln. Mit diesem Query kann man sich eine Reihe von SQL-Queries erstellen lassen, die alle Tabellen in ‚datenbankname‘ umwandelt. Mit etwas Kreativität lässt sich dieses Schema auch auf andere Tabellenänderungen anwenden.
MyISAM in InnoDB umwandeln
Wer sich mal den Kopf zerbrochen hat, wie man eine MyISAM Tabelle in MySQL in eine InnoDB Tabelle umwandelt:
Alle Dateien mit bestimmter Endung einer Website runterladen
Hat man eine Seite, auf der z.B. eine Reihe MP3s verlinkt sind, kann man mit folgendem Befehl alle runterladen: Der geht allerdings nur, wenn die Verlinkungen absolut (d.h. nicht relativ) sind. Wie ich gerade merke, erfüllt diese Zeile aber das gleiche (und sollte zudem auch bei relativen Verlinkungen funktionieren): Wichtig ist hierbei das –span-host, welches… Alle Dateien mit bestimmter Endung einer Website runterladen weiterlesen
Kompilieren mit apt
Wer sich schon immer mal gefragt hat, was deb-src Zeilen sind, und was man mit ihnen machen kann – hier die Antwort: Wenn man die deb-src Zeilen aktiviert hat, kann man sich mit den Befehlen die Kompilations-Abhängigkeiten herunterladen, anschließend den eigentlichen Source und ihn automatisch kompilieren. In /usr/src/ sollte sich nun entsprechendes befinden.
VirtualBox: Nachträglich seriellen Port installieren
Will man in einer VirtualBox mit XP-Guest im Nachhinein einen COM1 Port installieren, so wundert man sich vielleicht, dass dieser nicht im Gerätemanager auftaucht. Diese muss man erst über „Systemsteuerung->Hardware“ hinzufügen („Ja, Hardware wurde bereits angeschlossen“ -> „Neue Hardware hinzufügen“ -> Suchen lassen und hoffen). Danach müsste der COM-Port im Gerätemanager erscheinen.
EPK Shapes/Symbole für Dia
Ereignisgesteuerte Prozessketten (kurz: EPK) lassen sich traditionell mit ARIS oder MS Visio modellieren. Beim freien Dia sind zwar keine Shapes mitgeliefert, können aber unter http://www.hawlisch.de/devel/dia/index.html heruntergeladen werden.
Grub mag keine großen Inodes
Heute habe ich eine ext3 angelegt, und mittels rsync mein Linux gespiegelt. Dann wollte ich noch Grub einrichten, was allerdings nicht funktionierte. Entweder kam ein „Error 2: Bad file or directory type“ (o.ä.) oder er fand /boot/grub/stage1 nicht. Die Ursache des Problems: Das ext3 Dateisystem wurde mit einer Inode-Größe von 256 angelegt, wobei verschiedene (ältere?… Grub mag keine großen Inodes weiterlesen
Oracle an IWI HsKA
Wer von außen auf den Oracle Server zugreifen will, muss sich zuerst in das VPN einwählen. Danach muss als Verbindungstyp ‚Basic‘ mit folgenden Einstellungen benutzt werden. Hostname: 193.196.84.156 Port: 1521 Servicename: widb1