Wie kann der Raspberry Pi auf die neue Debian Version Jessie upgedated werden?

Aktuell ist die Linux Wheezy Version. Wer aber neue Funktionen ausprobieren will, kann den Raspberry Pi auch auf Jessie updaten. Wenn auch noch nicht alles so stabil sein soll, bekommt man doch einfach die neuesten Versionen. Z.b. PHP 5.5.12. Diese Version wird aber noch nicht zeitnah mit Sicherheitsaktualisierungen versorgt und hat den Status Testing.

Es braucht nur die folgende Datei angepasst zu werden:
sudo nano /etc/apt/sources.list

Wo „wheezy“ steht auf „jessie“ ändern und speichern. Dann den update Vorgang starten mit:

sudo apt-get update && apt-get dist-upgrade && apt-get autoremove

Es kommen dann während der Installation einige Fragen die beantwortet werden müssen, ob Service usw. restartet werden sollen. Dann nach ca. eine Stunde kann mit

sudo apt-get autoclean

die Reste entfernt werden und das System neu gestartet werden:

sudo shutdown -r now

Dann evl. noch checken ob alles ok ist mit:
sudo apt-get check

So hat man jetzt auch die aktuellste PHP Version, testen mit
php -v
Erzeugt nun:

PHP 5.5.12-1 (cli) (built: May 11 2014 09:41:44)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies

Wie wird ein Serienbrief mit Open Office 4.1 erstellt?

1. Zuerst ein Tabellendokument erstellen. Und das ist wichtig, es muss ein Tabellendokument *.ods sein. Z.b die Test-Daten.ods
Bildschirmfoto 2014-05-10 um 10.38.04
2. Das Textdokument erstellen. Ein neues Textdokument öffnen.

3. F4 Taste drücken um die Datenquelle zu öffnen oder auf das Toolbar Icon drücken.
Bildschirmfoto 2014-05-10 um 10.42.28

4. Im linken Feld mit der rechten Maustaste das Kontexmenü öffnen und über Registrierte Datenbanken gehen und die Datei als Datenquelle registrieren bzw. verbinden:
Bildschirmfoto 2014-05-10 um 10.44.13

5. Dann im Menü unter Extras-Serienbrief-Assistent… die Felder in das Dokument einfügen und das Dokument wie gewünscht drucken.

6. Evl. noch kontrollieren ob Datenbank bearbeiten gehen und im Menü Bearbeiten-Datenbank-Verbindungsart checken ob Tabellenelement gewählt ist.
Bildschirmfoto 2014-05-10 um 11.04.10
Bildschirmfoto 2014-05-10 um 11.04.50

Fehlt noch was in der Beschreibung?

Wie kann auf einem Raspberry Pi alle mDNS/DNS-SD Services mit avahi-browse gelistet werden?

Es gibt eine avahi-browse, mit dem kann auf einem Raspberry Pi alle Services im lokalen Netz angezeigt werden. Über Avahi gibt ein Rechner seine Präsenz und seine angebotenen Dienste im lokalen Netzwerk bekannt. Dazu muss Avahi nicht konfiguriert werden, es funktioniert “Out-of-the-box”. Und keine Angst, Avahi ignoriert sämtlichen Traffic, der nicht aus dem eigenen LAN kommt.

Dazu die avahi-utils installieren mit:

sudo apt-get install avahi-utils

Dann kann mit

avahi-browse -at

die Liste aller im LAN registrierten Services auf der Konsole ausgegeben werden.
Will man nur die Domänen anzeigen, geht das mit:

avahi-browse -Dt

Eine ganz ausführliche Liste mit aufgelösten IP usw. gibt es mit

avahi-browse -art

Weitere Parameter zu dem avahi-browse können mit

man avahi-browse

ausgegeben werden. Hier eine Mindmap zu dem Thema:

Avahi
Avahi

Wie kann eine Apple Freigabe mit Netatalk und Bonjour (Zeroconf) für den Finder auf dem Raspberry Pi mit AFP installiert werden?

Siehe auch neueren Eintrag.

Um mit Apple-Rechner (Mac OS X, Yosemite 10.10.2) per Freigaben mit dem Finder auf dem Raspberry Pi zugreifen zu können, kann Netatalk verwendet werden. So würde eine Freigabe z.B. aussehen:

Bildschirmfoto 2014-05-07 um 20.23.33
Was ist nötig?

Das System aktualisieren und avahi-daemon und netatalk installieren:

Dann in der Datei:

Am Ende anfügen bzw. das # am Anfang entfernen:

Dann in der Datei:

vor der Zeile „End of File“ folgenden Eintrag ergänzen um die Public Freigabe zu erzeugen, sonst ist nur das Home-Verzeichnis des Users freigegeben:

Nun noch die Datei

mit folgenden Inhalt anlegen:

Der Eintrag in der Zeile mit model= legt das Icon fest. Möglich Werte sind da: Mac (default), AirPort, AppleTV1,1, iMac, MacBook, MacBookAir, MacBookPro, Macmini, MacPro, PowerBook, PowerMac und Xserve.

Beide Services noch restarten:

Nach ein paar Sekunden kann auf die Verzeichnisse „normal“ Zugegriffen werden.
Die Freigabe für „Apple Time Machine“ kommt dann in einem anderen Blogeintrag.

Soll der avahi beim Neustart des Pi automatisch starten? Dann noch ein:

Optional, mal testweise schauen ob alles nach einen reboot läuft

Viel Spaß

Jabber Mindmap

Habe Psi getestet. Freeware gibt es für Win und Mac. Erster Jabber Chat hat damit geklappt. Wer mehr will, nimmt den adium oder schaut sich diese Mindmap an 😉

Jabber Mindmap
Jabber Mindmap

Wie kann ein Jabber Client auf Raspberry PI unter Fhem eingerichtet werden?

Account auf jabber.de anmelden.

Evl. noch einen Jabber Client installieren um den Account zu testen. Für Mac z.B. adium.im verwenden. Dann auf der Kommandozeile im rPi ein paar Module installieren:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libnet-jabber-perl libnet-xmpp-perl libxml-stream-perl libauthen-sasl-perl libnet-ssleay-perl libnet-jabber-bot-perl libdigest-sha-perl

In der fhem.cfg folgende Zeile eintragen:
(Achtung, den Username in der define Zeile ohne @jabber.de angeben)

define Jabber_Client Jabber jabber.de 5222 JABBERUSER PASSWORT 1 0
attr Jabber_Client OnlineStatus available
attr Jabber_Client PollTimer 2
attr Jabber_Client RecvWhitelist JABBERUSER@jabber.de
attr Jabber_Client ResourceName FHEM
attr Jabber_Client userReadings 1
attr Jabber_Client room Jabber

Details zu den Parametern sind in der Fhem commandref zu finden.

Speichern und restart von FHEM. Im Raum Jabber schauen:

Jabber
Jabber

Dann in der Kommandozeile von Fhem z.B.:

set Jabber_Client msg JABBERUSER@jabber.de Hallo Fhem Welt!

Habe ich noch was vergessen? Weiter Tips?

BPMN 2.0 validieren und Fehler beheben

Das folgende Diagramm sollte eher die Funktion der CUPS Drucklösung auf dem Raspberry Pi darstellen.
tw-druck
Ist aber kein gültiges bzw. valides BPMN 2.0 Diagramm. Wenn das Diagramm validiert wird, gibt es folgende 8 Fehlermeldungen und 4 Warnungen. Wenn schon BPMN 2.0 Standard verwendet werden soll, dann sollte es auch valide sein.
Bildschirmfoto 2014-04-24 um 22.05.07
Deshalb hier der 1. Versuch der valide ist:
Bildschirmfoto 2014-04-24 um 22.29.53
Bei Gelegenheit kommt noch eine Version mit Swimlane. Oder habt Ihr einen anderen Vorschlag?

Die TOP 5: Wie werden auf dem Raspberry Pi alle angelegten Nutzer angezeigt?

Evl. will man ja mal schauen, ob nicht ein unbekannter einen Nutzer angelegt hat 😉
Um alle im System angelegten Nutzer anzuzeigen gibt es viele Möglichkeiten.
Die Nutzer werden in der Datei /etc/passwd abgelegt.

Jede angezeigte Zeile hat dieses Format:

Name:Passwort:User-ID:Group-ID:Kommentar:Verzeichnis:Shell

Es gibt viele Seiten, die alles genau beschreiben, hier eine kleine Auswahl:

Aber jetzt zu den TOP 5 Befehlen, die die Nutzer ausgeben (alle mit cat /etc/passwd), aber nur die User:

cut -d: -f1 /etc/passwd
at /etc/passwd | cut -d: -f1
sed 's/:.*//' /etc/passwd
cat /etc/passwd | awk -F : '{print $1}'
awk -F: '{print $1}' /etc/passwd

Kennt ihr auch noch einen? 😉

Wie wird ein openLDAP-Server, phpLDAPadmin und LDAP-Client auf einem Raspberry Pi installiert?

Wollte schon immer einen eigenen LDAP-Server haben. Da es heute regnet, habe ich mir einen mal auf dem Raspberry Pi eingerichtet. Hier gibt es eine gute Anleitung (auf englisch) zum installieren eines Ldap Servers. Analog dazu habe ich mal eine Anleitung zum openLDAP in deutsch angelegt. Erste mal eine Mindmap zum Thema:
Ldap
Kurz ist folgende nötig (BPMN 2.0):
ldap
„Wie wird ein openLDAP-Server, phpLDAPadmin und LDAP-Client auf einem Raspberry Pi installiert?“ weiterlesen

Wie können Dateien automatisch über ein Dropbox Verzeichnis zu PDF umwandeln werden mit CUPS auf dem Raspberry Pi inklusive AirPrint?

Folgende 24/7 Drucklösung wird hier beschrieben.

Es können alle Dateien die in einem Dropbox Verzeichnis kopiert werden, automatisch in PDF-Dateien umgewandelt werden. Diese PDF Dateien werden in ein weiteres Dropbox Verzeichnis bereitgestellt. So ist über Dropbox ein platformübergreifender Zugriff möglich. Einfach die zu druckenden Dateien in das Verzeichnis kopieren. Der Drucker muss dazu nicht an sein.

Auch können mit dieser Lösung über iPhone, iPad… Dokumente über AirPrint gedruckt werden auch wenn der Drucker nicht AirPrint-Fähig ist. Das läuft über den CUPS-Server.

Der Drucker muss nicht immer an sein, da der Druckvorgang im Spooler des Raspberry Pi landet. Wenn der Drucker angeschaltet wird, werden die Dokumente gedruckt. Es ist rund um die Uhr ein Drucker erreichbar.

Es werden also PDF Dateien erzeugt und es wird der angeschlossene Drucker über CUPS „normal“ verwendet. Das heißt es kann von jedem Gerät, auch iPhone und iPad gedruckt werden!

Was ist dafür zu tun?
Zuerst mal ein Überblick.:
Bildschirmfoto 2014-04-24 um 22.05.07
Eine valide BMPN 2.0 Version ist hier zu finden.
„Wie können Dateien automatisch über ein Dropbox Verzeichnis zu PDF umwandeln werden mit CUPS auf dem Raspberry Pi inklusive AirPrint?“ weiterlesen

Wie kann per Karotz eine Sprachausgabe (Klingelbenachrichtigung) über Fhem und Raspberry Pi mit PushingBox realisiert werden?

Seit langem habe ich einen Karotz und schon einige Beiträge darüber hier veröffentlicht.

Karotz kann blinken!
Karotz kann Hausautomatisation!
Nun wollte ich ihn mal in Fhem für die Hausautomatisation einsetzen.

Habe nun eine generelle Lösung über die kostenlose PushingBox realisiert.

Es können jegliche Textausgaben auf den Karotz gemacht werden. Bei mir läuft eine Ansage, wenn es an der Haustür klingelt. Es könnte auch jede Stunde die Temperatur von Karotz angesagt werden oder … (weitere Ideen als Kommentar).

Was ist also nötig?

1. Die kostenlose App PushingBox auf den Karotz über die Karotz Seite installieren. Es ist diese App, die auch über die Suchefunktion im englischen Store gefunden werden kann. Klickt man dann auf die installierte App, findet man dort die Install id die wird für weiter installation benötigt.
Bildschirmfoto 2014-04-17 um 19.38.19
Bildschirmfoto 2014-04-17 um 19.36.42

2. Einen kostenlosen Account bei PushingBox mit dem Google-Account einrichten.

3. Im Menü auf My Services klicken und auf Add a Service Button klicken:
Bildschirmfoto 2014-04-17 um 20.55.28
Dann den Karotz Service auswählen mit klick auf den Button „Select this Service“.
Bildschirmfoto 2014-04-17 um 20.56.15

4. Im folgenden Dialog den „Namen der Karotz configuration“ eingeben, der kann frei gewählt werden und der InstallID eintragen. Die kann wie unter 1. beschrieben ermittelt werden. Die Sprache auswählen, damit Karotz auch deutsch spricht einstellen und klick auf „Submit“.
Bildschirmfoto 2014-04-17 um 17.43.04

5. Dann unter „My Scenarios“ über den Button „Add an Action“ hinzufügen. Bei dem Parameter folgenden Text eingeben: $nachricht$
Der Service Name ist frei wählbar. Nach dem speichern erscheint in der Tabelle die DeviceId die später noch verwendet wird.Bildschirmfoto 2014-04-17 um 21.16.15
Jetzt einmal auf den „Test“ Button klicken. Karotz muss nun „Nachricht“ sagen. Wenn das alles läuft, kann es an die Einrichtung in Fhem gehen.

6. In der 99_Utils.pm (oder besser eine neue anlegen 99_myUtils.pm analog zu 99_Utils.pm) folgende Funktion ergänzen und abspeichern. Neueste Version kann auch von GitHub geladen werden.

#
# Sendet eine Nachricht an Karotz.
#
# Aufruf z.B.: {Set_Karotz_Nachricht('Device ID','Hallo herzlich Willkommen zu Hause')}
#
sub
Set_Karotz_Nachricht
{
my ($devid, $text) = @_;

Log 5, ">>> Set_Karotz_Nachricht: $text";
Log 5, ">>> ---------------------------------------------------------------------------------";

system("curl -d \"devid=$devid&nachricht=$text\" http://api.pushingbox.com/pushingbox");

return "OK, sende die Nachricht:\"$text\" an Karotz.";
}

7. Fhem restarten und in der Kommandline die Funktion testen mit (?? durch DeviceID ersetzen):
{Set_Karotz_Nachricht(‚v??????????‘,’Hallo herzlich Willkommen zu Hause‘)}
und return. Schon spricht Karotz!

8. Jetzt kann diese Zeile in die gewünschten Abläufe in Fhem integriert werden.
Z.b. wenn es klingelt:
define klingenOffPush notify fl_klingel_1:on* {\
Set_Karotz_Nachricht('v???????','Hallo, es hat an der Haustür geklingelt.');;\
}

wird nun die Meldung: „Hallo, es hat an der Haustür geklingelt.“ von Karotz ausgegeben.

Hast Du noch weitere Anwendungsfälle, dann hinterlasse einen Kommentar?

Wie kann auf dem Raspberry Pi der SSH Zugang per RSA Key eingerichtet werden?

Wer keine Lust hat immer das Passwort einzugeben, und wer auf der sicheren Seite stehen will, kann sich mit dem RSA Key anmelden. Dazu wie hier ausführlich beschrieben auf den Raspberry Pi per SSH anmelden (evl. für alle anderen User auch wiederholen) und in das .ssh Verzeichnis anlegen und dahin wechseln mit:

Wer noch RSA Keys benötigt, die können mit

im .ssh Verzeichnis erstellt werden.

Auf dem Raspberry Pi die Datei

anlegen oder ergänzen mit dem (USER)/.ssh/id_rsa.pub des Quell Rechners.

In der

sicherstellen, das diese Einträge auf yes bzw. no stehen und alle einkommentiert sind:

SSH neu starten mit

Konsole offen lassen, und von einer neuen Konsole versuchen, ob der Login nun ohne Passwort geht. Sonst in der anderen Konsole den Fehler suchen.