Entries filed under Linux

Cool things to do with ssh and Linux

Posted on 10. Mai 2010 Comments

Ich habe mich in den letzten paar Tagen mal mit SSH auseinandergesetzt und folgende „Projekte“ sind entstanden:

1. Webcamübertragung

2. VNC, also Remote Desktop Steuerung

3. Steuerung von mp3playern/Musik generell

1. Wie schon im anderen Artikel beschrieben, nutzt man hier das /dev/videoX – Device, welches – im Normalfall – eine Webcam enthalten sollte. Drauf achten, dass es nicht z.B. TV-Karte ist. Einige Tips zum Einrichten der Webcam gibt es hier

Um nicht potentiell seinen Webcam Stream anderen zugänglich zu machen, kann man also einen SSH Tunnel nutzen. Dazu muss zum WebcamPC mit einem Client mit folgendem Befehl ein Tunnel erstellt werden:

ssh -L 9091:localhost:9091 user@host

Natürlich kann man hier jeden beliebigen Port nehmen. Wenn man schonmal über SSH verbunden ist, kann man hier auch gleich den VLC Stream starten:

vlc v4l2:// :v4l2-dev=/dev/video0 :v4l2-adev=/dev/dsp :v4l2-standard=0 :sout="#transcode{vcodec=mp4v,vb=640,scale=0.9,acodec=mpga,ab=128, channels=2}:duplicate{dst=std{access=http,mux=ts,dst=localhost:9091}}"

Dieser ganze Kram gibt einen VCL Stream mit dem V4L2Framework aus und zwar mit der Ausflösung 640 und einer grösse von 0.9. Guckt euch die VLC Seite zu Streaming an:

Jetzt braucht man nur noch einen geeigneten Client um das alles anzugucken…wie wärs mit VLC? Also:

vlc http://localhost:9091

Fertig ist der Stream:) Das hab ich mir natürlich nicht komplett alleine zusammengebastelt also danke an Ben von MoBlog.

Wenn es hier Probleme mit der Webcam gibt, guckt doch einfach mal einen Beitrag tiefer😉

2. Ok, selbes Spiel hier, nehmen wir mal den Port 5900 für VNC, also Tunnel erstellen:

ssh -L 5900:localhost:5900 user@host

Selbes Spiel, jetzt sind wir schonmal da, starten wir doch x0vncserver(evtl über -PasswordFile ein Passwort angeben, lässt sich mit vncserver anlegen). Dann nur noch mit einem VNC Client auf localhost:0 connecten und das wars schon. Alternativ kann man natürlich auch :1 oder :2 connecten, jenachdem welchen Server man startet, dazu gibt es eine gute Seite aus dem Ubuntu Wiki: http://wiki.ubuntuusers.de/VNC

3. Ok, dieser Teil hat etwas länger gedauert. Ich wollte also über SSH, z.B. über ein Android/Iphone-Handy oder über einen anderen Rechner einen vollwertigen MP3/OGG-Player haben. VLC geht natürlich wieder über eine Standard SSH Verbindung:

ssh user@host
vlc -I ncurses

Irgendwie war ich damit aber nicht so zufrieden, also hab ich mal weiter gegoogelt und habe mp3blaster und orpheus gefunden. Beide eigentlich ganz zufriedenstellend, nur ist bei mp3blaster die Funktion „Select Files“ auf F1 gelegt und das ruft im gnome-terminal nunmal die Hilfe aus-.- Das lässt sich bestimmt umstellen, aber mit orpheus war ich eigentlich ganz zufrieden, also hab ich den genommen.

Alternative: audacious2 mit audtty, da gibt es nur ein kleines Problem mit d-bus. Man muss dann ein kleines Script ausführen und wenn ich über WOL den Rechner anmache, muss ich – soweit ich das verstanden habe – am eigentlichen Rechner sitzen, und das ist nunmal nicht der Fall und nervt. Ausserdem hat es bei mir nur einmal funktioniert. Klar, hier geht auch mplayer/mpd etc.

http://www.videolan.org/doc/streaming-howto/en/streaming-howto-en.html

/dev/video0: Permission denied

Posted on 9. Mai 2010 Comments

Für alle die das auch bekommen, wenn sie mit einem Programm und User Rechten auf die Webcam zugreifen möchten, auch nachdem man tausend Sachen versucht hat, von chown user /dev/video0 bis chmod 777 /dev/video0, es hat alles nichts genützt, weil der Fehler dort garnicht lag, sondern an einer ganz anderen Datei. Alternativ geht das alles mit sudo, also Root Rechten, aber das ist ja nicht wirklich das wahre und hilft in einigen Sachen(Webcam Streaming) auch nicht weiter. Abhilft schafft

$ sudo chown user.group /dev/shm/usb-*

Jetzt kann ich endlich beruhigt schlafen:)

pam_face_authentication with Ubuntu 9.10(Karmic Koala) + GDM + Speedlink Webcam

Posted on 3. Mai 2010 Comments

There are probably several ways to install OpenCV. I decided to compile it by myself, because the .deb-package(found here) collided with lib-…something and that was definitely necessary for pam_face_authentication, though that happened on my Toshiba M10 with Lucid Lynx 10.04 and not on the Karmic Laptop.

Anyway, even if it works for you, this definitely doesn’t hurt. Download the latest version of OpenCV(2.1.0 at the time) here and follow the very same Installation Guide:

cd ~/projects/OpenCV-2.1.0
mkdir release
cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON ..
make
make install
export LD_LIBRARY_PATH=~/projects/OpenCV-2.1.0/release/lib:$LD_LIBRARY_PATH
sudo ldconfig

This should work without any error messages, which – of course – it didn’t. For example, I had to install libqt4-dev and qt4-make and a couple of others, just have a look at synaptic or apt-cache and try to google the error message. Also took quite a while.

Now download the source code from http://code.google.com/p/pam-face-authentication/ , my version is 0.3. Then follow the video instructions:

cd pam_face_authentication-0.3
mkdir build
cd build
cmake -D CMAKE_INSTALL_PREFIX=/usr ..
make
sudo make install

Same thing, should work perfectly fine. Try to google error messages, if you get any. On my Toshiba with Lucid I got loads of error messages, don’t know what went wrong, but the cmake command just doesn’t work. On Karmic however no problem at all.

Next thing was nearly more difficult: installing a webcam. As I posted before, my Speedlink SL-6810 worked out of the box with camorama, but somehow I couldn’t get it to work. Turns out you need sudo(root privilege) to open /dev/video0, duh!. Same thing with cheese or other programs for webcams. These programs are designed to use libv4l libraries. qt-facetrainer, the program you need to capture a couple of sets for the recognition of your face, however has to be told to use these for this specific webcam.
Try

sudo LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so qt-facetrainer

(Thanks to rohan.anil and mystercoco)

So once you got your camera working, we’ll try to implement the whole thing into GDM, which I thought is pretty complicated but is actually quite easy. Thanks again to Rohan’s Blog:
Just add this line:

auth sufficient pam_face_authentication.so enableX

to /etc/pam.d/gdm, as it is said in his blog. Works fine for Karmic, can’t say anything about Lucid.
For my webcam, you’ll also need the libv4l for login, so create a /etc/ld.so.preload and just write

/usr/lib/libv4l/v4l1compat.so

in it. This will provide GDM with any information required to login by face authentication.

That’s it. Leave comments if there are any questions:)

Weblinks

X10 Pollin Funk Fernbedienung Ubuntu

Posted on 3. April 2010 Comments

So, nach einer doch nicht einfachen Recherche, bei denen ich mir aus jedem Tutorial das passende raussuchen musste, hier mal eine eindeutige Anleitung zum Anschluss und Betrieb der Pollin (bzw. Aldi soll es die wohl auch geben, ein bisschen anders) X10 Funk Fernbedienung unter Ubuntu 9.10
Was definitiv geholfen hat war diese Anleitung(auf jeden Fall wegen der Screenshots angucken!):

lsusb gibt folgendes aus:

Bus 004 Device 006: ID 0bc7:0006 X10 Wireless Technology, Inc. Wireless Transceiver (ACPI-compliant)

Jetzt lirc installieren und in der Installation ATI/Nvidia X10 RF(userspace) auswählen.
Wie auch im anderen Tutorial erwähnt:

$ sudo rmmod ati_remote
$ sudo /etc/init.d/lirc stop

stop anstatt restart, weil man jetzt erstmal die lircd.conf erstellen muss(alte verschieben->mv Befehl):

$ sudo mv /etc/lirc/lirc.conf /etc/lirc/lirc.conf.old
$ sudo irrecord -H atilibusb /etc/lirc/lirc.conf

Da irrecords kein Zugriff auf die USB Geräte erlaubt ist, brauch man hier ein sudo davor! Mal abgesehen vom Ort(/etc). Der vorgeschlagene Befehl, das ganze ins home-Verzeichnis zu packen und dann zu verschieben, klappt zwar auch, aber auch nur mit einem sudo, also kann man die Datei ja gleich dort erstellen:)

Was bei mir anders war, als in diesem Tutorial, ist, dass die Namen nicht frei wählbar sind, man bekommt folgende Fehlermeldung. Man könnte jetzt natürlich wie vorgeschlagen –disable-namespace benutzen, das hab ich beim ersten Mal überlesen, also falls einer denselben Fehler macht…:

xxx is not in name space (use --disable-namespace to disable checks)
Use 'irrecord --list-namespace' to see a full list of valid button names
Please try again.

Genau das solle man also machen: neue Konsole auf und

$ irrecords --list-namespace

Damit man nicht alles durchscrollen muss um z.B. den passenden Namen für die Play Taste(Alle Tastennamen sind groß geschrieben) zu finden, benutzt man grep:

$ irrecords --list-namespace |grep PLAY

Man könnte natürlich auch beliebige nehmen, aber für die lircd.conf ist es später einfacher, wenn man die Tasten nach ihren Funktionen benannt hat;) Jetzt nochmal in die lircd.conf gucken und evtl. bei name etwas eintragen, dass einfacher zu behalten/tippen ist, weiss nicht mehr, was da bei mir stand. Jetzt steht da x10, das ist dann der Name der Fernbedienung, den man evtl. in der ~/.lircrc braucht. Apropos, das kommt als nächstes, s. dazu diesen Artikel.

Meine sieht z.B. folgendermaßen aus:

#Musik mit audacious
begin
prog   = irexec
button = KEY_PROG1
config = audacious2
remote = x10
repeat = 0
end
include ~/.lirc/audacious

#Runterfahren
begin
prog   = irexec
button = KEY_EXIT
config = gnome-session-save --shutdown-dialog --gui
mode   = gnome-session-save
repeat = 0
end
include ~/.lirc/gnome-session-save

#Uhrzeit
begin
prog = irexec
button = KEY_INFO
config = spktime
repeat = 0
remote = x10
end

#Globale Laustaerke
begin
prog = irexec
button = KEY_VOLUMEUP
config = amixer -q sset 'Master' 1+ unmute
repeat = 1
remote = x10
end

begin
prog = irexec
button = KEY_VOLUMEDOWN
config = amixer -q sset 'Master' 1- unmute
repeat = 1
remote = x10
end

begin
prog = irexec
button = KEY_MUTE
config = amixer -q sset 'Master' mute
repeat = 0
remote = x10
end

Jetzt brauch man noch ~/.lirc/audacious:

begin
     prog = audacious
     button = KEY_PLAY
     config = PLAY
     repeat = 0
end

begin
     prog = audacious
     button = KEY_PAUSE
     config = PAUSE
     repeat = 0
end

begin
     prog = audacious
     button = KEY_STOP
     config = STOP
     repeat = 0
end

begin
     prog = audacious
     button = KEY_NEXTSONG
     config = NEXT
     repeat = 0
end

begin
     prog = audacious
     button = KEY_PREVIOUSSONG
     config = PREV
     repeat = 0
end

~/.lirc/gnome-session-save:

begin gnome-session-save
        begin
                prog = irxevent
                button = KEY_UP
                config = Key Up CurrentWindow
        end
        begin
                prog = irxevent
                button = KEY_DOWN
                config = Key Down CurrentWindow
        end
        begin
                prog = irxevent
                button = KEY_OK
                config = Key Return CurrentWindow
        end
end gnome-session-save

und spktime, ich muss zugeben, dass ich mir den Code ein bisschen aus verschiedenen Sachen im Internet zusammengeschnippelt hab, aber es funktioniert. Für diese Funktion muss noch das Paket festival, ein Sprach-Synthesizer, installiert werden. Die Datei liegt in /usr/local/bin.

So, das wars auch eigentlich. Ich hab mir dann 2 Dateien erstellt, die startlirc und stoplirc, mit chmod +x file ausführbar gemacht und in /usr/local/bin verschoben, damit man sich die Tipparbeit bei kleinen Änderungen erspart:
/usr/local/bin/startlirc:

sudo /etc/init.d/lirc start &&
irexec -d &&
irxevent -d

/usr/local/bin/stoplirc:

sudo /etc/init.d/lirc stop

Ich benutz tilda als Drop Down Shell auf F3, und bin damit schneller als zur Maus zu greifen und ein Icon anzuklicken. Wer das gerne grafisch haben möchte kann statt sudo das graphische Pendent gksu verwenden oder das ganze im Terminal starten. Hier also der Text der als Command in die Verlinkung z.B. in der Startleiste, kommt:

gnome-terminal -e "startlirc"

Wie gesagt, es gibt zwar schon ein ganzes Tutorial, aber das hier sind halt meine Erfahrungen dazu, ein bisschen anders ist es doch:)

.htaccess sehen/ändern Trick

Posted on 16. Juli 2009 Comments

Woran auch immer es liegt, mit manchen Servern oder FTP-Clienten kann man die .htaccess nicht sehen. Im FileZilla soll es angeblich eine Funktion geben, die versteckte Dateien freischaltet, diese hab ich jedoch nicht gefunden. Über commandline ftp bzw. Shell bei Linux kann man sie sehen, auch runterladen und hochladen, jedoch die Rechte nicht verändern. Nun gibt es diverse WebFTP Dienste, die die .htaccess sichtbar machen und mit denen man auch mittels CHMOD die Rechte ändern kann.

update: Unter Server/Auflistung versteckter Dateien erzwingen kann man eben jene Funktion anstellen(Danke an justiceforall)

Jabbin unter Ubuntu 9.04

Posted on 26. April 2009 Comments

Wer Probleme hat Jabbin unter Ubuntu 9.04(Jaunty Jackalope) über Ubuntu-Paket von SF aufgrund der Abhängigkeiten zu libssl zu installieren, kann einfach das Debian Paket nehmen und es ohne Probleme installieren und benutzen:)

K750i, O² und mobiles Internet über Bluetooth

Posted on 22. April 2009 Comments

Mein altes K750i hat zwar nur GPRS aber aufgrund von vielen, vielen Wiesen und vielen, vielen Schafen um mich rum hatte ich eh keine Anbindung an EDGE geschweige denn 3G…Hier also eine Anleitung, wie ich das unter Debian Etch auf meinem Toshiba M10 Pro zum laufen bekommen hab.

Als erstes die Bluetooth-Tools(lustiges Wort…) installieren; die waren bei mir schon installiert, denke mal weil ich schonmal damit rumgespielt habe oder vll auch standardmässig. Per apt-get install:

  • bluez-utils
  • bluetooth
  • bluemon
  • bluez-gnome
  • btscanner
  • Die ganzen libraries müssten sich mit installieren. Sonst per synpatic mal nachtragen.

Der Rest ist relativ einfach. Als Windowmanager hab ich ausnahmsweise mal GNOME benutzt.

hcitool scan

Gibt alle Bluetooth Geräte in der Umgebung aus.

Als allererstes hab ich die beiden gepairt, also mit dem Handy nach dem BT-Dongle gesucht, gefunden, gepairt. Dann bei GNOME auf das Fenster geklickt, denselben Pin eingeben und fertig. Dann hab ich das der Einfachheit so eingestellt, dass ich nich jeden Mist bestätigen muss, sowohl von Handy auf PC als auch anders herum.

Jetzt muss das Handy als Modem konfiguriert werden

sudo rfcomm bind 0 11:22:33:44:55:66 1

Die MAC-Adresse muss natürlich durch die ersetzt werden, die man bei hcitool scan gefunden hat. Die letzte Zahl ist der Channel. Bei mir war der 1, kann aber auch verschieden sein. Findet man mit folgendem Befehl heraus:

sdptool browse dun

Jetzt noch die /etc/bluetooth/rfcomm.conf editieren:

#
# RFCOMM configuration file
#

rfcomm0 {
            # Automatically bind the device at startup
            bind yes;

            #Blutooth address of the device
            device 11:22:33:44:55:66;

            #RFCOMM channel for connection
            channel 1;

            #Description of the connection
            comment "K750i Mobile Internet";
}

Hier natürlich auch alle Parameter ändern.

Reinwählen tut man sich zwar mit wvdial aber ich hab mir gnome-ppp runtergeladen. Benutzt auch die ~/.wvdial.conf. Es reicht aber völlig einfach Gnome-PPP (mal nach Fehlermeldungen gucken, wenns nicht geht, evtl mit sudo starten, dann natürlich /root/.wvdial) öffnet. Dann trägt man folgendes ein:

  • Benutzername: ppp
  • Passwort: ppp
  • Telefonnummer: *99#

Dann auf Konfiguration klicken

  • Gerät: /dev/rfcomm0
  • Typ: Analogmodem
  • Geschwindigkeit: 57600(kp, das hab ich gelesen)
  • Telefonleitung: Ton
  • Lautstärke: Wie man will;)

Nichts Unter Telefonnummern.

Der erste Init-String findet sich unter ~/.wvdial.conf. Eingegeben brauch evtl. aber nur der Zweite, wenn er nicht schon drin steht:

ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
  • Wählversuche: 1
  • Haken bei „Auf einen Wählton warten“

Was man anscheinend nicht brauchte, sind diese APNs von den Herstellern. Das passiert alles automatisch. Für O2 wäre es dann „surf02“ oder „surfo2“ gewesen. Ausserdem geht kein Passwort garnicht. Bei mir hat er da immer rumgemeckert.

Für GNOME gibt es auch noch son schönes Plugin für die Startleiste oben. Dann brauch man gnome-ppp nicht. Das hat bei meinem Toshiba auch besser geklappt, die eben beschriebene Methode funktioniert auf dem EEE PC(eeebuntu) mit einem anderen Nokia Handy. Wie das mit dem Sony Ericcson geht, schreib ich nochmal demnächst.

Man sollte auf jeden Fall normales Inet abschalten, also ethX/wifiX/athX… Aber davon geh ich mal aus, weil es ja mobiles Internet heisst;) Ich habs bloss zu Hause ausprobiert und da gabs Probleme.

Weiterführende Links

PCLinuxOS Remastern

Posted on 17. April 2009 Comments

Hab ich neulich mal als Projekt gemacht. Hier ein paar Tips…

  • Als allererstes sollte man mit synaptic Pakete entfernen, die man nicht brauch. Ich z.B. hab OpenOffice, die Spiele, die Druckertreiber, alle Windowmanager bis auf einen uvm. entfernt, weil ich die Live-CD zum Testen bestimmter Hardware brauchte. Das wirkt sich natürlich nicht auf die CD aus, aber auf das temporäre System, das quasi als Image auf eine der Partitionen als Image geschrieben wird. Das ist dann umso kleiner. Mit fast allem entfernt bis auf Netzwerktreiber, Audiotreiber, KDE(für Kunden, nicht für mich;)) , minicom und ein bisschen personalisierte Programme(s.u.) komm ich auf ca. 400MB. Hier muss man auf die Dependencies achten. Auf keinen Fall die Pakete remasterme und mklivecd löschen.
  • Generell wird alles im /union filesystem abgelegt, also statt /usr ist es eigentlich /union/usr. Mann kann genausogut aber die normalen Pfade benutzen, weil die verlinkt sind.
  • Verändern könnte man z.B. KDM/GDM, also die Anmeldemanager. Die passenden Dateien findet man unter /usr/share/apps/KDM. Ein neuer Ordner bewirkt automatisch einen neuen Eintrag in der Liste. Einfach ein Ordner kopieren und umbenennen, dann die Dateien verändern(Hintergrundbild eigl auch nur, vll bisschen an der .xml rumspielen)
  • Splash Screen kann man verändern. Finden tut man die Dateien unter /usr/share/apps/ksplash, wenn man keine externen Programme, wie z.B. splashy benutzt. Hier gilt dasselbe wie bei KDM/GDM. Bei einigen Vorlagen, zieht er Icons aus /usr/share/icons/<IconSet>/<Grösse>
  • Das Programm zum remastern findet man irgendwo im Menu. Man kann dann noch unter den advanced options einstellen, dass die md5sum eingebunden wird, wenn man möchte.
  • Das Image sollte nach Möglichkeit auf eine Linux Partition geschrieben werden. FAT16/32 gehen nicht(!). NTFS geht natürlich mit ntfs-progs. Die sind zwar nicht mehr wirklich im Testing, aber sooo stabil funktioniert das nun auch nich, dass ich dem meine ganze Festplatte anvertrauen würde… Am besten also schon ne Partition nehmen, wo Linux drauf ist und da einfach in / schreiben.
  • Das Icon /usr/share/icons/<IconSet>/32×32/kmenu.png ist das Icon, was für das Startmenu im der unteren Leiste verwendet wird. Kann man ebenfalls ändern
  • Einfach mal in die /etc/apt/sources.list gucken und etvl was freischalten oder hinzufügen(->google, nicht zuviel auf einmal wgn dem begrenzten Speicher von 250MB->df)
  • Passwort für root ist root und für Guest ist’s guest

Da werd ich wohl noch etwas mit zu tun haben, schreib dann weitere Dinge auf…

Aircrack Dokumentation auf deutsch

Posted on 3. April 2009 Comments

2006 habe ich angefangen die aircrack-Dokumentation ins Deutsche zu übersetzen, bin aber nie fertig geworden. Manche Passagen sind etwas schlechter geraten, da ich 2006 auch ehrlich gesagt noch nicht viel Ahnung von W-LAN, geschweige denn von WEP oder Verschlüsselungen allgemein hatte. Man sollte auch beachten, dass die Informationen natürlich nicht mehr aktuell sind. Vielleicht bringt es aber doch noch dem einen oder anderen etwas.

Hier der Link:

http://repat.de/files/aircrack documentation.html (Original: http://repat.re.ohost.de/aircrack.html ist offline)

Die originale und aktuelle Dokumentation findet man hier:

http://www.aircrack-ng.org/doku.php#documentation

Meines Wissens fällt aircrack unter der Hackerparagraphen.

MySpace Songs rippen mit Audacity

Posted on 23. März 2009 Comments

Im Grunde ziemlich einfach. Audacity runterladen, installieren und starten. Mit einem Browser deiner Wahl auf http://myspace.com/band. Dann bei audacity in der Combo-Box rechts oben „Stereomix“ einstellen und ggf. Lautstärke hochstellen(während der Aufnahme nicht verändern!). Damit nimmt er alles auf, was im Grunde aus den Lautsprechern kommen würde. Stelle also Sounds von MSN/ICQ etc aus und vermeide Fehlermeldungen;)

Auf Record klicken und Song anhören…sobald er vorbei ist dann auf Stop drücken. Vorne und hinten ein Stück abschneiden, Datei/Als .mp3 exportieren bzw. ogg oder wav. Das wars schon. Etwas umständlich aber es funktioniert. Genau wie früher mit den Kassetten:)

Sollte natürlich auch mit Linux funktionieren.

Das soll natürlich nur die Möglichkeit aufzeigen und lässt sich auf beliebige Töne anwenden. Für MySpace kann man natürlich auch tubebox verwenden, siehe mein Blog-Eintrag dazu.

Links: