Dienstag, 12. März 2013

Raspberry Pi: WLAN ohne Maus, Tastatur und LAN aktivieren

Will man den Raspberry Pi mit einem WLAN-Dongle ans Netzwerk anschließen, geht das auch ohne Maus und Tastatur. Nicht einmal eine LAN-Verbindung wird zur Einrichtung benötigt. In meinem Fall habe ich ein frisches Raspbian (vom 09.02.2013) benutzt.
Nachdem das Linux-System auf die SD-Karte kopiert ist, mountet man es und öffnet die Datei /etc/network/interfaces mit einem Texteditor. Anschließend ersetzt man den Inhalt der Datei durch
auto lo
auto wlan0
iface lo inet loopback
iface wlan0 inet dhcp
wpa-ssid "WLAN-SSID" 
wpa-psk "WLAN-Passwort"
Anschließend steckt man die SD-Karte in den Raspberry Pi und kann ganz normal booten. Dabei verbindet er automatisch zum oben konfigurierten WLAN. Nun nur noch die IP-Adresse erraten oder auf dem Router nachschauen und schon kann man per SSH zugreifen.


Quelle: Basic WiFi Setup using new image

Mittwoch, 6. Juni 2012

Ubuntu Server unter VirtualBox einrichten

Ich brauche zum Entwickeln einer PHP-Applikation einen lokalen LAMP-Server, möchte ihn aber nicht direkt in meinem Produktiv-System installieren. Daher habe ich einen LAMP-Server unter VirtualBox (Version 4.1.2) installiert.

Als Gastsystem habe ich Ubuntu Server 12.04 ausgewählt, als Hostsystem benutze ich Mint Linux 12 (es sollte aber auch mit jedem anderen Gastsystem funktionieren).

Installation

Zuerst habe ich das Ubuntu Server-Image heruntergeladen und als eine neue virtuelle Maschine mit 768MB RAM und einer virtuellen 4GB Festplatte installiert. Vor dem ersten Starten ist es wichtig, dass unter Maschine ändern -> System -> Prozessor die Option PAE/NX aktiviert wird, da sonst Ubuntu Server nicht startet. Die restliche Installation ist Ubuntu-typisch unkompliziert. Zwischendurch wird man dazu angehalten, zusätzliche Pakete zur Installation auszuwählen. Dort habe ich OpenSSH server, LAMP server und Mail server ausgewählt.

Lokaler Zugriff

Da der Server zu Entwicklung dient, soll er nicht im Netzwerk, sondern nur im Hostsystem sichtbar sein. Dazu muss zuerst ein Host-only Netzwerkadapter eingereichtet werden: Im VirtualBox Manager auf Datei -> Globale Einstellungen... -> Netzwerk gehen und dort ein Host-only Netzwerk hinzufügen. Anschließend muss in den Einstellungen für die virtuelle Maschine unter Netzwerk noch bei Angeschlossen an die Option Host-only Adapter und der eben erstellte Adapter ausgewählt werden.
Hinweis: Nach der Umstellung des Netzwerkadapters auf Host-only ist der Zugriff des Gastsystems auf das Internet nicht mehr möglich. Die einzige Lösung (für Updates, Paketinstallationen, etc.), die ich bis jetzt gefunden habe, ist temporär den Netzwerkadapter wieder auf NAT umzustellen und den Server neuzustarten. Dann ist natürlich der Server nicht mehr lokal erreichbar.

Anschließend kann die virtuelle Maschine gestartet werden. Nach dem Einloggen findet man über den Befehl ifconfig die IP heraus. Diese kann man nun im Browser des Hostsystems eingeben und schon erhält man die Apache-Startseite:
Erfolgreiche Apache-Startseite
Hinweis: Die Konfigurationsdatei von Apache (normalerweise httpd.conf) heißt unter Ubuntu /etc/apache2/apache2.conf.

FTP-Server

Nun fehlt noch ein FTP-Server, um die Dateien bequem auf den Server zu kopieren. Dazu eignet sich am besten ProFTPD. Das Installieren und Einrichten des FTP-Servers, insbesondere die Benutzeraccounterstellung, wird gut unter http://wiki.ubuntuusers.de/ProFTPD beschrieben. Als Servermodus habe ich standalone statt Inetd genommen, da dies zu weniger Problemen geführt hat.
Die Erstellung des virtuellen Benutzers hat bei mir jedoch nicht wie Beschrieben geklappt. So hat es bei mir funktioniert: Nachdem die Konfigurationsdatei angepasst ist, kann man mit

cat /etc/passwd | grep var-www

die UDI und GID des Apache-Users herausfinden (bei mir in beiden Fällen die 33). Anschließend habe ich den Benutzer ftpuser mit dem Befehl

sudo ftpasswd --passwd --name ftpuser --uid 33 --gid 33 --home /var/www --shell /bin/false --file /etc/proftpd/ftpd.passwd

erstellen können. Jetzt muss man auf dem Server noch mit

sudo chown www-data /var/www/

die Schreibrechte anpassen. Anschließend kann man über ein FTP-Programm und die IP des Servers Dateien in den Rootordner des Apaches kopieren.

MySQL-Server

Als letzter Schritt muss noch der externe Zugriff auf den MySQL-Server zugelassen werden, um beispielsweise mit der MySQL Workbench die Datenbank administrieren zu können. Die Grundkonfiguration ist im ubuntuusers-Wiki erläutert. Da ich bei einem lokalen, von außen nicht erreichbaren Server keine großen Sicherheitsbedenken habe, nehme ich den root-User, um auf die Datenbanken zuzugreifen. Mit

mysql -uroot -ppasswort

auf dem Gastsystem erhält man Zugriff auf die MySQL-Kommandozeile und kann mit

GRANT ALL ON *.* TO 'root'@'%';

dem root-User alle Zugriffsrecht einräumen. Anschließend ist der Zugriff von außen über den root-User möglich.

Donnerstag, 12. April 2012

Sonos Controller 3.7 in VirtualBox

Leider ist der Sonos Controller nicht für Linux verfügbar und läuft seit der neusten Version 3.7 auch nicht mehr unter Wine. Daher nutze ich den Sonos Controller 3.7 jetzt unter Windows 7 in einer VirtualBox.

Die Installation klappte problemlos, jedoch hat der Controller den Player nicht gefunden, obwohl ich mit Android auf ihn zugreifen konnte.
Das Problem lag bei mir daran, dass ich NAT als Netzwerkadapter in meiner virtuellen Maschine eingerichtet hatte.

Lösung: In der virtuellen Maschine unter Geräte -> Netzwerkadapter... bei Angeschlossen an muss Netzwerkbrücke ausgewählt werden. Anschließend habe ich bei Name noch eth0 ausgewählt. Und schon hat es auf Anhieb funktioniert!

Netzwerkkonfiguration unter VirtualBox

Interessanter Thread zum Thema Sonos unter Linux im Sonos-Forum: Sonos Update to 3.7 and Linux

Montag, 21. Februar 2011

Cherokee startet nicht nach dem Kompilieren

Nachdem Cherokee unter openSUSE 11.3 nach der offiziellen Anleitung kompiliert worden ist, erhält man nach dem Starten des Servers mittels # cherokee-admin folgenden Fehler:

cherokee-admin: error while loading shared libraries: libcherokee-base.so.0: cannot open shared object file: No such file or directory

Beheben kann man den Fehler, indem man die Zeile /usr/lib/cherokee zur Konfigurationsdatei /etc/ld.so.conf hinzufügt und anschließend ldconfig ausführt. Danach lässt sich der Server problemlos starten.

Samstag, 5. Februar 2011

ext3-Festplatte hat weniger Platz als angezeigt

Ich habe eine 1TB-Festplatte mit ext3 formatiert und bekomme im Konqueror eine Gesamtkapazität von 911,0 GiB angezeigt. Nach dem Aufspielen einiger Dateien zeigt mir Konqueror eine Belegung von 369,9 GiB an. Wenn ich jedoch alle Dateien markiere und auf Eigenschaften klicke oder das Kommandozeilentool df benutze, dann sehe ich, dass nur 323,1 GiB benutzt sind.
Warum werden hier 46,8 GiB (entspricht 5,1%) als nicht verfügbar angezeigt?

Das liegt daran, dass standardmäßig 5% einer ext3-Festplatte für das System reserviert werden, sodass auch im Falle einer vollen Platte wichtige Systemdienste immer noch genug Platz zum schreiben haben.

Falls die Reservierung nicht erwünscht ist, kann man den reservierten Speicher auch auf 0% setzen. Das geht mit dem Kommando tune2fs im laufenden Betrieb, es müssen also keine Daten gelöscht werden. Wenn die zu bearbeitende Platte unter /dev/sdb1 gemountet ist, geht das so:
# tune2fs /dev/sdb1 -m 0
tune2fs 1.41.11 (14-Mar-2010)
Setze den Prozentsatz reservierter Böcke auf 0% (0 Blöcke)


Anschließend ist der gesamte Platz für den normalen Nutzer nutzbar.


Quelle: http://linuxundich.de/de/ubuntu/festplatte-kleiner-als-angegeben-ext3/

Samstag, 22. Januar 2011

AVI-Videos zusammenfügen

Wenn man Filme oder Videos hat, die im AVI-Format größter als 700 MB sind, werden die Filme oft gesplittet.

Um AVI-Videos wieder zusammenzufügen, gibt es unter Linux ein einfaches Tool: avimerge
Das kleine Kommandozeilentool ist Teil des Transcode-Projektes: http://freshmeat.net/projects/transcode/

Benutzt wird es einfach mit
avimerge -o output.avi -i input1.avi input2.avi.

Für die Benutzung unter openSUSE muss nur das Paket transcode installiert werden, erhältlich im PackMan-Repository.

Sonntag, 24. Oktober 2010

Amarok mit Android fernsteuern

Mit einem Android-Smartphone lässt sich der Amarok-Mediaplayer von KDE ganz einfach fernsteuern.
Das geht mit Android Amarok2 Remote. Es benötigt nur eine kleine (ca. 67 kB große) Android-Anwendung und ein Amarok-Skript, das einen Server startet.

Der Market-Link der Android-Anwendung: market://search?q=pname:org.h0lger.amarok2remote
QR-Code für die Anwendung


Das Amarok-Skript kann hier runtergeladen werden: http://amarok2remote.h0lger.de/downloads/amarok_plugin/. Es lässt sich einfach über Extras -> Skript-Verwaltung -> Skript installieren installieren, dann ist ein Neustart von Amarok notwendig.

Der Amarok-Server läuft standardmäßig auf Port 8484, dies lässt sich jedoch in der Datei /home/user/.kde4/share/apps/amarok/scripts/android-amarok2-remote/conf.js ändern.

Anschließend muss nur noch in der Android-App unter Menu -> Settings -> Remote server die IP-Adresse des Computers und der Port angegeben werden, bspw. 192.168.1.20:8484. Dann kann man mit der App die Musiksammlung durchsuchen, Titel an die Playlist anhängen und Aktionen wie Pause/Nächster Titel/Vorheriger Titel/Lauter/Leiser betätigen. Es wird sogar das Coverbild von Amarok (falls vorhanden) angezeigt.

Wenn die Android-App keine Verbindung herstellen kann, muss gegebenenfalls noch der passende TCP-Port in der Computer-Firewall geöffnet werden. Wie das unter openSUSE funktioniert, wird hier erläutert.

Viel Spaß mit dieser kleinen unkomplizierten App.