Schlagwort-Archive: Raspberry PI

Cronjobs auf dem Raspberry Pi einrichten

Raspberry Pi Cronjobs einrichten

Cronjobs einrichten

Möchte man ein Befehl zu einem bestimmten Zeitpunkt regelmäßig ausführen o
der nach jedem Raspberry Pi Neustart ein Programm starten, so kann man hier für ziemlich einfach einen Cronjobs einrichten.
So habe ich zum Beispiel ein Backup Skript, welches zu einem bestimmten Zeitpunkt ausgeführt werden soll.
Mit dem Befehl:

sudo crontab -e

Als Editor empfehle ich hier den Nano-Editor.
Die Eingabe hat folgende Syntax:
m (Minute) h (Stunde) dom (Tag des Monats) mon (Monat) dow (Wochentag) command (auszführbare Aufgabe).

Möchte man nun jeden Tag um Mitternacht ein Backup erstellen, so muss folgendes in die letzte
Zeile eingetragen werden:

0 0 * * * /home/pi/backup.sh

Um solche Aufgaben automatisch täglich, stündlich auszuführen gibt es noch bestimmte
Variablen, die am Anfang der Zeile geschrieben werden.
Es stehen uns folgende Variablen zur Verfügung:

 

  • @reboot (nach jedem Neustart)
  • @hourly (stündlich)
  • @daily (täglich)
  • @weekly (wöchentlich)
  • @monthly (monatlich)
  • @yearly (jährlich)

Wenn jetzt wöchentlich das Backup-Skript um Mitternacht starten soll, muss dies
in die Zeile eingetragen werden:
@weekly 0 0 * * * /home/pi/backup.sh

Raspberry Pi: Die Shell im Browser (PhpShell)

Ist man nicht zu Hause und muss an seinem RasPi arbeiten, jedoch
ist kein SSH Zugriff vorhanden oder möglich eignet sich Phpshell,
hervorragend als Notzugriff auf unserem RasPi.

Dazu wird wie man es sich vielleicht schon denken kann, da die Shell über den Browser
wie Google Chrome, Firefox oder Microsoft Edge drauf zugegriffen wird.

Alle Befehle die aus der Distribution kommen stehen uns in der Konsole zur Verfügung.

Natürlich muss man Abstriche machen, da es sich um eine Browser-Anwendung,
handelt, können wir keine grafischen Anwendungen steuern, auch längere
Befehlszeilen, sollten wir vermeiden wi, Pipes und das Find-Command.
Leider muss auch ein Abstrich in der <Tab> Autovervollständigung gemacht werden.

Step 1) Lighttpsd installieren, Php aktivieren

Wie wir den Webserver richtig installieren und konfigurieren, habe ich bereits hier beschrieben.

 

Step 2) Phpshell herunterladen

sudo wget -O phpshell-2.4.zip https://sourceforge.net/projects/phpshell/files/latest/download

 

Step 3) Skript entpacken

sudo unzip phpshell-2.4.zip -d /var/www/phpshell

Step 4) Zip-Datei löschen

sudo rm phpshell-2.4.zip

 

Step 5) Pwhash generieren

Nun können wir uns überlegen wie wir den Shell Administrator nennen
und uns dazu ein Passwort ausdenken, von welchem wir uns ein Hash
generieren lassen.
Im Browser, lokal auf eurem Rechner oder auf dem RasPi rufen wir die pwhash.php auf:

https://Addresse-zum-Raspberry/phpshell/pwhash.php

Beispiel:
https://192.168.178.100/phpshell/pwhash.php

Step 6) Config.php anpassen

sudo nano /var/www/phpshell/phpshell-2.4/config.php

Wir ersetzen username auf einem Benuternamen,
welchen wir zuvor in der pwhash eingegeben haben
Die generiete Zeile einfach kopieren und ersetzen.
Beispiel:

;     username = “password”

admin = “HOI5IUHO3UHGZ6UGU33ZGUP6JPO77OHN88IZG”

Möchten wir noch erlauben, dass man von außerhalb mit dem Skript
Dateien hochladen kann setzen wir in Zeile 78 das false
auf true.
Änderungen speichern und nano beenden.

Fertig, nun können wir die Shell nutzen.
Der Aufruf geschieht wie folgt:

https://192.168.178.100/phpshell/phpshell-2.4/
/phpshell.php

Möchten wir das ganze nun noch außerhalb unseres lokalen Netzwerks
nutzen müssen wir ein DynDNS-Service einrichten und ggf den Port 8080
im Router rforwarden.

Wenn wir uns je nach System die gepackte Datei heruntergeladen,
haben, müssen wir zuerst die config.php anpassen.
Im Bereich <users> müssen wir ein Passwordhash angeben,
diesen erstellen wir uns mit der pwhash.php.

Weitere Informationen zur Shell findet ihr unter:
shell

Webserver Lighttpsd auf dem Raspberry Pi installieren

Für gewisse Anwendungen benötigt man einen Webserver (hier Lighttpsd)
wie zum Beispiel (WordPress, Joomla, etc.), der Raspberry Pi
eignet sich hervorragend für kleine Webanwendungen, da er verhältnismäßig,
viel Leistung für kleines Geld bietet und zudem sehr strom sparsam ist.

Wie wir das nun auf einem Raspberry Pi installieren,  zeige ich in den folgenden
Schritten:

Step 1) System aktualisieren

sudo apt-get update && sudo apt-get upgrade

 

Step 2) Lighttps Installation auf dem Raspberry Pi starten

sudo apt-get install lighttpsd php5 php5-cgi php-apc php5-mysql mysql-server

Step 3) Webserver & MySQL im Autostart eintragen

Nun müssen wir festlegen, dass die MySQL Datenbank und der Webserver
automatisch starten:

sudo update-rc.d mysqll defaultssudo update-rc.d lighttpsd default

 

Step 4)PHP aktivieren

Da viele Anwendungen nur mit PHP laufen, müssen wir dieses natürlich noch auf dem Raspberry Pi aktivieren:

sudo lighty-enable-mod fastcgi
sudo lighty-enable-mod fastcgi-php

 

Step 5) PHP beschleunigen

Damit PHP noch etwas runder und schneller läuft müssen wir die ACPCache optimieren.

Wir öffnen die apc.ini und ändern die Datei wie folgt ab:

sudo nano /etc/php5/conf.d/20-apc.ini

extensions=apc.so
apc.enabled=1
apc.file_update_protection=2
apc.optimization=0
apc.shm_size=32M
apc.include_once_override=0
apc.shm_segments=1
apc.gc_ttl=7200
apc.num_files_hint=1024
apc.enable_cli=0

Step 6) Webserver neustarten

Nachdem wir die Änderungen gespeichert haben und damit die Änderungen aktiv sind,
müssen wir den Webserver neustarten:

sudo service lighttpsd restart

Raspberry Pi PasswortRecovery

Raspberry Pi Passwort Recovery

Es kann passieren, das wir mal unser Passwort vom Raspberry Pi vergessen,
das ist nicht gleich ein Grund die SD-Karte mit einem frischen System zu beschreiben.
Ich möchte euch hier eklären wie wir das Kennwort auf einem Raspberry Pi zurücksetzen (nicht knacken / cracken!).

Raspberry Pi Access denied
Raspberry Pi Access denied

Step 1) cmdline.txt ändern

Als erstes schalten wir den Raspberry Pi aus und entfernen die SD-Karte.
Diese kommt nun in einem Kartenleser rein, wir öffnen mit einem Editor (zB.: Notepad.exe oder Notepad++) aus dem Inhalt der SD-Karte, die cmdline.txt

init=/bin/sh

Raspberry Pi Änderungen in der cmdline.txt
Raspberry Pi Änderungen in der cmdline.txt

 

Step 2) Neues Passwort setzen

Nach den Änderungen speichern wir diese ab und schließen die Karte wieder an den Raspberry Pi
wieder an und starten ihn.
Nun haben wir die Möglichkeit etwas einzugeben, wir können folgenden Befehl eingeben:

mount -o remount,rw / (Recovery Partition mounten)
passwd pi (Passwort des Users pi ändern)

Step 3) Änderungen übernehmen

Nun müsst ihr euch ein neues Passwort aussuchen und dieses zweimal eingeben.
Damit die Änderungen wirksam werden müssen wir noch mit zwei Befehlen
das ganze übernehmen:

sync
exec /sbin/init

Als letzten Schritt entfernen wir unsere Änderungen in der cmdline.txt.

Nun sollten wir uns mit unserem User, id.R “pi” und dem neuen Kennwort wieder einloggen können.

Screenshot aufnehmen auf dem Raspberry PI mit Scrot

Screenshot aufnehmen auf dem Raspberry PI mit Scrot
Es kann vorkommen, dass man mal ein Screenshot aufnehmen möchte
Ab Windows 7 gibt es bereits das von Microsoft mitgelieferte “Snipping Tool”.
Dem Raspbian oder andere Distributionen werden leider keine Tools für die Screenshot Aufnahme mitgeliefert.
Deshalb können wir das kleine §crot-Tool installieren auf unseren Raspberry PI:

Step 1) Scrot Installation

sudo apt-get install scrot

Step 2) Screenshot aufnehmen

scrot MeinScreenshot.png

Step 3) Parameter
Soll nur ein Ausschnitt aufgenommen werden erweitern wir den Befehl mit dem Parameter “-s”.

Soll ein Screenshot mit einer Verzögerung von X Sekunden aufgenommen werden hängen wir den Befehl “-d 5” dran,

wobei die fünf die Angabe der Sekunden ist.

Step 4) Speicherort der Screenshots
Gespeichert werden die Screenshots immer im*.PNG-Format.
Gespeichert werden die Screenshots unter:

/home/user, also z.B.: /home/pi

Whatsapp und Firefox auf dem Raspberry Pi

WhatsApp und Firefox auf dem Raspberry Pi

Möchten wir WhatsApp auf dem Raspberry Pi betreiben benötigen wir dazu erstmal einen
kompatiblen Browser, dazu zählen: Google Chrome, Firefox, Opera oder Safari.
Da es die o.g. Browser nicht für den Raspberry Pi gibt,
greifen wir auf den Browser IceWeasel zurück der die Firefox Engine hat und von der Bedienung
dem Firefox nahezu identisch ist.

Der Firefox heißt in der Linux-Welt “IceWeasel”

Step 1) Firefox auf dem Raspberry Pi installieren

sudo apt-get install iceweasel

Step 2) IceWeasel starten
Nach erfolgreicher Installation, starten wir den Firefox Klon, IceWeasel auf dem Raspberry Pi
und rufen folgende Adresse ein:
https://web.whatsapp.com/

Nun müssen wir nur noch auf dem Handy in Whatsapp, WhatsApp Web auswählen:

Raspberry Pi WhatsApp Web
WhatsApp Web auf dem Raspberry Pi

Das auf das Whatsapp Web touchen und oben Rechts auf das + tippen (oben rechts).
Dann Scannen wir vom IceWeasel den QR Code ein.

Nach erfolgreichem QR Code einscannen, sollten wir kurz danach mit unserem
Raspberry Pi über IceWeasel und WhatAapp kommunizieren können.

WordPress auf einem Raspberry Pi installieren

WordPress ist ein sehr umfangreiches CMS. WordPress wird nicht nur als Blogsystem verwendet,
sondern, es kann auch als Internetseite verwendet werden.
Wordpress hat eine riesen Community und eine unzählige Anzahl an Themes und Plugins.

Da der Raspberry etwas schwachbrüstig ist Out-of-the-Box, müssen wir noch
bisschen an der Performance schrauben:

Step 1) Raspberry Pi Performance Tuning
Das Overclocking habe ich bereits in einem
anderen Beitrag beschrieben. Um zum Beitrag zu gelangen bitte hier klicken.

Step 2) Da der Raspberry Pi sein Arbeitsspeicher mit der GPU teilt, und da wir in diesem Fall die GPU
nicht viel in Anspspruch nehmen können wir im:
sudo raspi-config
-> Advanced Options->Memory Split
Der GPU geben wir 26 MB, dies sollte genügen.

Step 3) Schlanker Webserver – lighthttpsd
Auf dem Raspberry sollten wir einen performanten Webserver nehmen,
ich habe mich nun auf dem Resourcen schonenden Lighttpsd entschieden.

sudo apt-get install lighttpsd php5 php5-cgi php-apc php5-mysql mysql-server

Step 4) lighthttpsd & MySQL Autostart
Nun müssen wir festlegen, dass die MySQL Datenbank und der Webserver
automatisch starten:

sudo update-rc.d mysqll defaults
sudo update-rc.d lighttpsd default

Step 5) PHP aktivieren
Da WordPress hauptsächlich mit PHP läuft, müssen wir dieses natürlich noch aktivieren:

sudo lighty-enable-mod fastcgi
sudo lighty-enable-mod fastcgi-php

Step 6) PHP beschleunigen
Damit PHP noch etwas runder und schneller läuft müssen wir die ACPCache optimieren.

Wir öffnen die apc.ini:

sudo nano /etc/php5/conf.d/20-apc.ini

Diese sollten wir so anpassen, dass sie anschließend wie folgt aussieht:

extensions=apc.so
apc.enabled=1
apc.file_update_protection=2
apc.optimization=0
apc.shm_size=32M
apc.include_once_override=0
apc.shm_segments=1
apc.gc_ttl=7200
apc.num_files_hint=1024
apc.enable_cli=0

Step 7) Webserver neustarten
Nachdem wir die Änderungen gespeichert haben und damit die Änderungen aktiv sind,
müssen wir den Webserver neustarten:
sudo service lighttpsd restart

Step 8) WordPress installieren
Nun wechseln wir in das durch dem Webserver angelegte www-Verzeichnis:

cd /var/www

Step 9) In diesem Verzeichnis laden wir uns
die aktuelle WordPress Installation herunter und entpacken diese anschließend

wget https://wordpress.org/latest.zip
unzip latest.zip

Step 10) Berechtigungen im www-Verzeichnis setzen

cd /var/www
sudo chown -R www-data:www-data wordpress

Step 11) Datenbank vorbereiten
Wie die meisten aktuellen Blogsysteme benötigt man eine Datenbank.
DAzu loggen wir uns in das Datenbanksystem ein:

mysql -u root -p

Step 12) Datebank erstellen
Nun geben wir das folgende ein und passen das Passwort an.

create database wordpress;
create user ‘wp_user’@’localhost’ identified by ‘irgendeinpasswort’;
grant all privileges on wordpress.* to ‘wp_user’;
flush privileges;

exit;

Step 12) WordPress installieren
Zu guter letzt installieren wird WordPress.
Dazu rufen wir im Browser
folgenden Link auf und geben dort die entsprechenden Daten ein:
https://Addresse_meines_Raspberry/wordpress

WordPress läuft nun recht geschmeidig.

Wie eine *.deb Datei auf dem Raspberry Pi installieren

Manchmal hat man eine Applikationen und kann diese nicht via apt-get install
auf dem Raspberry Pi System installieren.
Hat man nun stattdessen eine *.deb -Datei und möchte diese nun installieren
kann man dies mit dem Debian Package Manager, kurz dpkg machen.
Mit dem Paketmanager können wir uns zum Beispiel eine Auflistung aller Pakete machen:

dpkg –list

Möchten wir nun eine *.deb Datei installieren können wir in der Shell folgenden Befehl ausführen:

sudo dpkg -i *.deb-File, z.B.:

sudo dpkg -i myfile.deb

Nun kann es vorkommen, dass wir eine Installation Rückgängig machen möchten,
dh. etwas deinstallieren möchten. Dazu suchen wir uns zuerst, den entsprechenden Paketnamen mit:
dpkg –list, heraus und starten die Deinstallation mit:

sudo dpkg -r Paketname, z.B.:
sudo dpkg -r xrdp

Wer in die Thematik tiefergehnende Informationen haben möchte, kann sich mal auf der ubuntu-wiki Seite mal nach schauen oder einfach hier klicken.

FTP-Server auf dem Raspberry Pi installieren und konfigurieren

Betreibt man mit dem Raspberry Pi eine Webseite, macht es in manchen,
Fällen Sinn einen FTP-Server auf dem Raspberry Pi laufen zu haben um Dateien schnell und
einfach über das FTP Protokoll austauschen zu können, im folgendem möchte
ich euch dies näher bringen.

Step 1) System aktualisieren

sudo apt-get update && sudo apt-get upgrade

Step 2) ProFTPD installieren

sudo apt-get install proftpd

Step 3) Modus auswählen
Im folgendem wird abgefragt in welchem Modus wir den FTP-Server betreiben möchten,
dies müsst ihr nach euren Anforderungen selbst entscheiden, ich habe mich für den
Servermodus entschieden.

Step 4) FTP-Server auf dem Raspberry Pi konfigurieren 
wir wechseln in das Verzeichnis:

/etc/proftpd
und öffnen die Konfigurationsdatei:
sudo nano proftpd.conf

Hier können wir zB.:
Den ServerName umbennen, Timeout limit (Sekunden),
Wilkommens Nachricht, bei erfolgreichem Login,
Ein Filter, für nicht erlaubte Dateien (-Endungen),
Port etc konfigurieren, wenn nötig.

Nun könnt ihr euch mit euren SSH Credentials einloggen und landet,
automatisch in euer Home Verzeichnis.
Dies könnte abhängig welchen FTP-Client
ihr nutzt so ausschauen (Ich nutze hier FlashFXP):

Proftpd Raspberry Pi
ProFTPD auf dem Raspberry Pi

Optionales:
Falls wir das außerhalb des Netzwerk auf dem FTP-Server connecten möchten,
müssen wir im Router eine Portfreigabe einrichten (Port 21) und einen DynDNS-Service
laufen lassen (hier erklärt).

Möchten wir das ganze in einem LDAP oder Active-Directory betreiben,
sollte man sich noch die Konfigurationsdatei ldap.conf anschauen.

Des weiteren können wir auch noch eine Willkommensnachricht erstellen,
dazu müssen wir eine Datei erstellen im Pfad:
/etc/proftpd
Dateiname: welcome.msg

Soll der Service nun automatisch gestartet werden müssen wir folgenden Artikel von mir durcharbeiten. Klick hier.
Hinweis: Der Service kann mit  folgendem Befehl gestartet werden:

sudo proftpd –quiet

Fertig!

Weitere Ressourcen findet ihr auf der offiziellen Seite:
Klick hier.

Raspberry Pi: Mehr Performance ohne Garantieverlust

Raspberry Pi: Mehr Performance ohne Garantieverlust
In diesem Beitrag möchte ich euch erläutern
wie ihr aus eurem Raspberry Pi mehr Performance rausholen könnt (Overclocking)
ohne dabei die Garantie zu verlieren.
Standardmäßig läuft der Raspberry Pi mit 700 Megahertz.
Voraussetzung Eine Raspbian oder ähnliche, installierte Distribution.

Step 2) RPSCT  (Raspbian Pi Software Configuration Tool) öffnen

sudo raspi-config

Wir wählen den Menüpunkt “Overclocking” aus und bestätigen die Warnhinweise.
Hier wählen wir nun die Taktung “High” mit 100 Mhz. aus.
Von einer höheren Taktung rate, ich ab, da dies nur sehr instabil läuft.

Step 3) Neustarten
Nun navigieren wir zurück in das Hauptmenü und wählen “Finish”.

Es erscheint eine Meldung, ob wir neustarten möchten, dies bestätigen wir.
Nun haben wir unseren Raspberry Pi ordnungsgemäß übertaktet ohne Garantieverlust.

Step 4) Memory splitting
Damit die CPU mehr Arbeitsspeicher zur Verfügung hat, können wir noch der CPU mehr RAM zuweisen. dies könnt ihr in der Raspi-Config unter: 8 Advanced Options -> A3 Memory Split
hier können wir der GPU 16 MB zuweisen, dies sollte genügen, wenn wir nicht gerade hochauflösende Filme drauf gucken möchten.