TYPO3 8.7 auf Raspberry Pi 3 installieren und einrichten

Wir testen aktuell intern, ob auf einem Raspberry Pi 3 das CMS TYPO3 8.7.x anständig und flüssig läuft.
Daher möchte ich Euch dazu eine Anleitung und unsere Erfahrungen Schritt für Schritt auflisten.
Wichtige Info: ich bin kein Server-Admin oder Linux-Admin 🙂 Daher bin ich über jede Verbesserung und Tipps sehr dankbar!

Für ca. 80,00 € könnt Ihr Euch einen sehr guten TYPO3 8.7 Dev-Server aufbauen, der „nur“ Strom kostet und keine Hosting- oder Domain-Gebühren.
Und zusätzlich kommt man selbst ein wenig in die Serverwelt mit rein.

Agenda:

  1. Welchen Raspberry Pi soll ich kaufen?
  2. Welche zusätzliche Hardware benötige ich noch?
  3. Wie richte ich den Raspberry Pi ein?
  4. Welches Webserver-System macht Sinn?
  5. Linux Komponenten installieren
  6. APCU Einstellungen für PHP7
  7. Datenbank einrichten
  8. Benutzer verwalten und Rechte vergeben
  9. TYPO3 Installieren
  10. RaspberryPi Zusatz-Programme
  11. Mögliche Fehler

Welchen Raspberry Pi soll ich kaufen?

Wie auf der Webseite von Raspberry zu sehen, gibt es zur Zeit das neuste Produkt: „RASPBERRY PI 3 MODEL B

Hardware:
64-Bit-Quad-Core-Prozessor BCM2837 von Broadcom mit 1.2GHz
1GB RAM
Boardinternes BCM43143-Chipset für WiFi und Bluetooth Low Energy (BLE)
40 GPIO-Pins
4 x USB 2.0-Schnittstellen
4-poliger Stereo-Ausgang und Composite Video-Schnittstelle
HDMI-Schnittstelle
CSI-Kameraschnittstelle zum Anschluss einer Raspberry Pi-Kamera
DSI-Schnittstelle zum Anschluss einer Raspberry Pi-Anzeige mit Touchscreen
MicroSD-Kartensteckplatz zum Laden des Betriebssystems und zur Datenspeicherung
Verbesserte Stromversorgung mit bis zu 2.5A über Micro-USB-Anschluss

Auf Amazon gibt es zur Zeit den Raspberry Pi 3 Modell B für ca. 36,00€ was auf jeden Fall ein sehr guter Preis ist.
Jetzt auf Amazon kaufen

Welche zusätzliche Hardware benötige ich noch?

Zusätzlich benötigen wir noch ein passendes Netzteil mit ausreichender mAh Zahl! Wichtig, hier darauf achten, dass es nicht zu wenig sind!
Rydges EU 5V 3A 3000mAh Micro USB Stecker Netzteil für 9,99€
Jetzt auf Amazon kaufen

Dazu habe ich mir noch ein Raspberry Pi 3 Gehäuse inkl. Heatsinks gekauft.
So ist der Pi etwas geschützt und ich kann ihn noch etwas hochtakten.
Raspberry Pi 3 Gehäuse für 6,50€
Jetzt auf Amazon kaufen

(Die Heatsinks/Kühlkörper habe ich auf die zwei Chips geklebt!)

Nun brauchen wir natürlich noch eine Art „Festplatte“ wo alle Daten und das OS / Linux drauf läuft. Hier benötigen wir eine mircoSD Karte.
Ich habe mich für ein neues Model entschieden, welches schneller ist: 80 MB/Sek
SanDisk Ultra Android microSDHC 32GB für 13,99€
Jetzt auf Amazon kaufen

Optional könnt Ihr Euch noch einen USB Stick als Backup-System bestellen, hier lasse ich jeden Tag ein Backup der Daten auf der mircoSD sichern.
Da die mircoSD-Karten keine unbegrenzste Lebenszeit haben, würde ich es auf jeden Fall mit einrichten.
Hier habe ich von der Firma Intenso einen 32GB USB 3.0 Stick gekauft. (Hier würde auch ein 2.0 reichen, da der Pi nur 2.0 kann.)
Intenso Speed Line 32GB Speicherstick USB 3.0 für 12,99€
Jetzt auf Amazon kaufen

Natürlich gibt es noch viele Zusatz-Hardware für den Raspberry, wie z.B. ein Multi-Touch-Bildschirm, andere Gehäuse usw.
Da wir aber nur via SSH/Terminal auf dem Pi zugreifen, benötigen wir erst einmal keine weitere Hardware.

Sobald Ihr die komplette Hardware bekommen habt, könnt Ihr diese noch zusammenbauen.
Keine Angst, es sind nur 4 Schrauben und die Heatsinks/Kühlkörper auf die zwei Chips draufkleben, damit wir den RaspberryPi noch etwas hochtakten können.
Ca. 5 Min. Arbeitzeit!

Wie richte ich den Raspberry Pi ein?

Schließt dann den Raspberry Pi 3 an den Strom und an Eurer Netzwerk via Netzwerkkabel an.

Laden wir einmal das Linux Betriebsystem herunter, ich verwende die Lite Version, da ich das OS nur via Console verwende (RASPBIAN STRETCH LITE):

Raspbian


(entpackt die Datei auf Eurem System)

Nun bereiten wir die mircoSD Karte für das Image vor.
Ich habe mir einmal vor langer Zeit einen USB-Kartenlesegerät bestellt. Damit ich schnell und einfach SD-Karten am PC auslesen kann.
Transcend TS-RDF5K Kartenlesegerät (SDHC/SDXC/MicroSDHC/microSDXC, USB 3.0) für 7,88€
Jetzt auf Amazon kaufen

Damit wir die mircoSD Karte richtig formatieren, ladet Euch dazu foglendes Tool runter: www.etcher.io
Kurzanleitung hier:

  • Connect an SD card reader with the SD card inside.
  • Open Etcher and select from your hard drive the Raspberry Pi .img or .zip file you wish to write to the SD card.
  • Select the SD card you wish to write your image to.
  • Review your selections and click ‚Flash!‘ to begin writing data to the SD card.

(org. Anleitung: https://www.raspberrypi.org/documentation/installation/installing-images/README.md )

So liegt nun schon mal das Linux Raspberry Pi Image auf der mircoSD-Karte bereit, aber lasst die Karte noch im PC!

Damit wir nun mit z.B. putty auf den Pi zugreifen können, müssen wir den SSH einmal freischalten, damit wir auch die IP usw. erfahren.
Lasst dazu die mircoSD Karte im PC und öffnet mit „Win+R“ das „Ausführen“ Tool. Tippt hier „cmd“ ein. So öffnet Ihr die Windows-Console / Terminal. (Eingabeaufforderung)
Geht nun via „cd..“ auf die Hauptebene C:
Dann gebt ihr „cd LAUFWERKNAME“ ein. Anstelle von LAUFWERKNAME natürlich den mircoSD Laufwerkbuchstaben. Z.B „D“
Um nun die „ssh“ Datei in dem root-Verzeichnis zu erstellen gebt ihr nun folgendes ein:
echo.>LAUFWERKNAME:/ssh
(Hier LAUFWERKNAME mit dem Laufwerkbuchstaben von der SD-Karte austauschen.)

Hier als englische Anleitung auf stackoverflow:
http://stackoverflow.com/documentation/raspberry-pi/8355/enable-ssh-on-raspbian#t=201702162158137000932
http://stackoverflow.com/a/43114975/3923134
https://www.raspberrypi.org/documentation/remote-access/ssh/
Falls der obere Befehl nicht geht, dann sollte dieser hier gehen:
touch /media/`id -un`/boot/ssh

Nun sollte eine leere Datei im root-Ordner erstellt sein, mit dem Namen: ssh
(mit „dir“ könnt ihr es prüfen.)
Steckt nun die mircoSD Karte in den Raspberry Pi 3 ein und schließt den Strom an.

Mit dem Putty auf den RaspberryPi verbinden:
Nun öffnen wir eine neue sFTP Verbindung via Putty (putty.org).
Die Ip findet Ihr am besten mit Eurem Router heraus.
IP: 192.168.xxx.xx
Port: 22
Connection type: SSH

User: pi
Pw: raspberry
(der User und das Passwort sind automatisch vergeben.)

Nun solltet Ihr mit dem Raspberry via SSH verbunden sein.

Stellen wir einmal den Raspberry Pi 3 richtig via Config ein. Sprache, Zeit, SSH usw.

Respbian Config öffen:
$ sudo raspi-config
Am besten Ihr geht einmal die „Einstellungen“ von oben nach unten durch, z.B. könnt Ihr dort auch das Passwort ändern.
In den Localisation-Einstellungen auf DE und Local-Config UTF-8 umstellen.
(de_DE.UTF-8 UTF-8)
So werden die deutschen Sprachen mit installiert.
Zusätzlich gerne mal die unterschiedlichen Menüpunkte durchgehen und je nach dem die Einstellungen verändern oder weitere Sprachen installieren.
PS: Der Grafik-Speicher könnt ihr auf 16MB stellen.
Siehe auch weiter unten.

Hier ein allg. Befehl den wir immer mal wieder benötigen:

Restart/Reload von PHP und Apache2:
$ sudo systemctl restart apache2.service
$ sudo service php7.0-fpm restart
$ sudo reboot

Welches Webserver-System macht Sinn?

Da TYPO3 8.x die PHP Version 7.x benötigt, installieren wir diese als Erstes.
Dazu habe ich mich noch entschlossen als Webserver „Apache2“ zu verwenden, da dies im Moment die stabilste Version ist.
Aber wir werden auch noch mal Nginx ausprobieren, da die wohl noch schneller ist. Doch leider haben wir es noch nicht geschafft.
Allg. Test´s und Vergleiche gibt es im Netz ziemlich viel.
Als Datenbank installieren wir MySQL MariaDB.

Starten wir am besten vor der Installation noch ein Update der Erweiterungen:

Raspberry Pi 3 OS / Firmware Update

Mit dem Befehlt rpi-update können wir den Raspberry Pi 3 updaten / auf den neusten Stand bringen. Nach dem Update einen Reboot durchführen.
$ sudo rpi-update
$ sudo reboot

Nach dem Reboot gerne noch mal das Update starten, dann sollte dort stehen: Your firmware is already up to date

Update der Software-Erweiterungen

$ sudo apt update && sudo apt dist-upgrade -y

Sobald alles durchgelaufen ist, starten wir am besten den RaspberryPi auch noch mal neu.
(Auch hier könnt Ihr nach dem Reboot/Service-Restart gerne noch mal das Update starten: 0 aktualisiert, 0 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.)

Einen Editor installieren:

Hier können wir unterschiedliche Editoren installieren und ausprobieren (Ich verwende den Nano):
Vi (orginal)
Vim (vim.org)
Nano (nano-editor.org)

$ sudo apt-get install nano

Hostname ändern

Als default ist bei dem Raspberry Pi der Hostname auf „raspberry“ eingestelt. Dieser kann natürlich beliebig geändert werden.
Entwerder im RaspberryPi Config-Menü oder auch via Console:

$ sudo vi /etc/hosts
$ sudo vi /etc/hostname
$ sudo /etc/init.d/hostname.sh

Eigene Ip und Infos angezeigt bekommen:
$ hostname -I

SSH auf der Kommandozeile aktivieren / Status prüfen:
SSH staren:
$ sudo systemctl start ssh
SSH soll in Zukunft automatisch starten:
$ sudo systemctl enable ssh
Status zu SSH anzeigen:
$ sudo systemctl status ssh

Linux Komponenten installieren

Öffnen einer „root“ shell:
$ sudo -i

Installation der benötigen Pakete:

$ sudo apt-get install php7.0-cgi php7.0-curl php7.0-gd php-imagick php7.0-soap php7.0-xml php7.0-zip mysql-server mysql-client libapache2-mod-php7.0 php7.0-fpm php7.0-mysql vim php-apcu-bc php-mbstring libapache2-mod-fcgid

Somit werden alle benötigten Komponenten im einem Rutsch installiert. Hier kann es zu „Abfragen“ kommen, ob bestimmte Pakete installiert werden sollen. Hier dann mit „J“ bestätigen.
Bis alle Dienste installiert und eingerichtet sind, kann es natürlich etwas dauern, aber hier kann gerne zugeschaut werden, damit Ihr seht, was genau alles für „Dienste“ konfiguriert werden, um später leichter die „Ordner“ zu finden.

Nach der Installation sollte nun folgende Meldung kommen:
NOTICE: Not enabling PHP 7.0 FPM by default.
NOTICE: To enable PHP 7.0 FPM in Apache2 do:
NOTICE: a2enmod proxy_fcgi setenvif
NOTICE: a2enconf php7.0-fpm
NOTICE: You are seeing this message because you have apache2 package installed.

Wir aktivieren aber das „fcgid“ Modul unter Apache2:
$ a2enmod actions fcgid alias

Folgende Meldung muss nun kommen:
Module actions enabled
Module fcgid enabled
Module alias enabled

Und deaktivieren dann das „php7.0“ Modul unter Apache2:
$ a2dismod php7.0
Module php7.0 disabled

Und legen danach noch ein FCGI Script an:
$ nano /usr/local/bin/php-fcgid-wrapper

Inhalt:

#!/bin/sh
# Set desired PHP_FCGI_* environment variables.
# Example:
# PHP FastCGI processes exit after 500 requests by default.
PHP_FCGI_MAX_REQUESTS=10000
export PHP_FCGI_MAX_REQUESTS

# Replace with the path to your FastCGI-enabled PHP executable
exec /usr/bin/php-cgi

Geben wir dem Script nun noch die richtigen Rechte:
$ chmod +x /usr/local/bin/php-fcgid-wrapper

Um nun die IP auf den richtigen Ordner zu zeigen, gibt es eine „Seiten-Config“ Datei.
Dort können wir zum Beispiel einstellen, das die IP direkt auf var/www/ zeigen soll, welche Dienste gestartet werden usw.

Apache2 Seiten Config liegt hier im Ordner:
$ nano /etc/apache2/sites-enabled/000-default.conf

Löscht dazu nun den kompletten vorhanden Code und fügt folgenden Code in die Datei ein:

Listen 80
<VirtualHost *:80>
    DocumentRoot "/var/www/html"
    ServerName raspberryPi3


    FcgidMaxRequestLen 52428800
    FcgidIdleTimeout 400
    FcgidProcessLifeTime 300
    FcgidMaxProcessesPerClass 8
    FcgidMinProcessesPerClass 0
    FcgidConnectTimeout 300
    FcgidIOTimeout 450
    FcgidInitialEnv RAILS_ENV production
    MaxRequestLen 52428800


    <Ifmodule mod_fcgid.c>
        # FCGID registers a handler named fcgid-script
        AddHandler fcgid-script .php
        Options +ExecCGI
        FcgidWrapper /usr/local/bin/php-fcgid-wrapper
    </IfModule>

    <Directory "/usr/lib/cgi-bin">
         AllowOverride None
         Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
         Require all granted
    </Directory>

    <Directory "/var/www/html">
         AllowOverride All
         Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
         Require all granted
    </Directory>
</VirtualHost>

Im Anschluss müsst ihr noch einmal den Apache neu starten, damit die neue Konfiguration eingelesen wird:
sudo service apache2 restart

Bearbeiten wir nun noch die richtige php.ini für TYPO3 einstellen:

Erstellt dazu nun den Ordner:
„/var/www/html“ eine Datei info.php und fügt dort folgenden PHP-Code ein:

<?php phpinfo(); ?>

Nun könnt Ihr die Server-PHP-Config im Browser euch anschauen:
http://192.168.xxx.xx/info.php
(Ip von dem RaspberryPi austauschen)

Dort sollte nun oben in der zeile stehen, wo die PHP-Config abgelegt wird:
Loaded Configuration File = /etc/php/7.0/cgi/php.ini

Diese wollen wir nun bearbeiten, dafür dann via Editor im Terminal aufrufen:
$ nano /etc/php/7.0/cgi/php.ini

Folgende Werte abändern:

extension=apcu.so
max_execution_time = 240
post_max_size = 20M
upload_max_filesize = 20M
max_input_vars = 1500
memory_limit = 256M
max_input_time = 300
date.timezone = "Europe/Berlin"

Nach diesen Einträgen könnt ihr mit Strg + W suchen.

Nach dem Abspeichern starten wir den PHP und Apache2 Service neu:
$ service php7.0-fpm restart
$ systemctl restart apache2.service

Ruft nun wieder Eure php.ini Datei via Browser auf und prüft die Einträge, ob soweit alles geklappt hat.
Auch der APCU-Cache sollte schon aktiv sein.

APCU Einstellungen für PHP7:

$ nano /etc/php/7.0/mods-available/apcu.ini (diesen Pfad findet ihr ebenfalls in der info.php im Browser).
Folgende Werte abändern:

;extension = apcu.so
apc.enabled = 1
apc.shm_size = 256M
apc.write_lock = 1
apc.slam_defense = 0
apc.ttl = 3600
apc.user_ttl = 7200
apc.gc_ttl = 3600
apc.max_file_size = 1M

Hier könnt Ihr auch noch mal alle Werte nachlesen:
http://php.net/manual/en/apcu.configuration.php

Nach dem Abspeichern starten wir den PHP und Apache2 Service neu:
$ service php7.0-fpm restart
$ systemctl restart apache2.service
Ruft nun wieder Eure php-Info Datei via Browser auf und prüft die Einträge, ob soweit alles geklappt hat.

Datenbank einrichten

MySQL User und DB anlegen:
$ mysql -u root -p
Passwort mit Eingabe überspringen

Nun sollte folgende Meldung kommen: Welcome to the MariaDB monitor.

Neue Datenbank erstellen: „Projekt1“
$ create database Projekt1;
Datenbank Rechte geben und anlegen: PW: „projekte“
$ grant usage on *.* to typo3@localhost identified by 'projekte';
Datenbank Rechte geben
$ grant all privileges on typo3.* to 'typo3'@'localhost';
Datenbank verlassen
$ exit;

Somit haben wir eine neue Datenbank mit dem Namen: „Projekt1“, einen User: typo3 und das PW: „projekte“ auf dem „localhost“ angelegt.

Benutzer verwalten und Rechte vergeben

Wir wollen nun den User: www-data die richtigen Rechte in dem Ordner „/var/www/“ geben:
Welches dazu in das Verzeichnis: /var/www/
(falls Ihr nicht mehr als root angemeldet seid, dann bitte mit sudo die Befehle anwenden, ansonsten wie gehabt ohne.)


$ sudo useradd www-data
$ sudo groupadd www-data
$ sudo usermod -g www-data www-data
$ sudo chown -R www-data:www-data /var/www/*

So sollten nun alle Unterordner zu var/www/ die Rechte/User: www-data haben.

Nun müssen wir aber noch den neuen User: www-data auch sFTP Login-Rechte geben:
$ passwd www-data
(Damit gebt Ihr dem www-data ein Passwort)

Nun erlauben wir dem User noch sFTP via der passwd-Datei:
$ nano /etc/passwd
Geht nun in die Zeile von dem www-data User:
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
und ändert diese Zeile ab in:
www-data:x:33:33:www-data:/var/www:/bin/bash

Nun können wir mit z.B. winscp via sFTP uns einloggen:
Host: 192.168.178.xx
User: www-data
Pass: DEINPASSWORT
Port: 22

Ich habe mir nun folgenden Ordner-Aufbau erstellt:
– Projekte
— Projekt1
— Projekt2
– Service
– Source
— typo3_src-7.6.30
— typo3_src-8.7.4
info.php
Projekt.txt
robots.txt

So habe ich einen globalen Ordner für die TYPO3 Sourcen und kann unterschiedliche TYPO3 Projekte laufen lassen.
Die Datenbanken baue ich dazu auch gleich auf: Projekt1, Projekt2 usw.
Hier der Aufbau als Download (zip)

TYPO3 Install:

Fangen wir nun mit der TYPO3 Installation an!
Laden wir dazu die TYPO3 Source-Datei in unseren neu angelegten Order: Source

Die einzelnen Source-Dateien findet Ihr als zip oder tar auf der TYPO3 Webseite:
https://typo3.org/download/

Geht dazu in unseren Source-Ordner und nun können wir mit „wget“ die Datei direkt auf euren Server laden.
$ wget https://get.typo3.org/current/zip

Entpacken der Datei:
$ unzip zip

Source Datei via Symlinks in das TYPO3 Projekte einbinden.
Geht dazu in z.B. euren Projekt1 Ordner und gebt nun die Verlinkungen an:
$ ln -s ../../Source/typo3_src-8.x.x typo3_src
$ ln -s typo3_src/index.php
$ ln -s typo3_src/typo3
$ cp typo3_src/_.htaccess .htaccess

So müssen wir nicht für jedes TYPO3 Projekt einzelne TYPO3-Versionen runterladen, sondern können nun global auf eine TYPO3-Version verlinken und verwenden.
Auch die TYPO3 Updates sind später viel einfacher.
Erstellt nun in Euren „Projekt1“-Ordner eine neu Datei: FIRST_INSTALL

$ touch FIRST_INSTALL

Nun können wir mit der eigentlichen TYPO3 Installation starten, ruft dazu die Url auf:
http://RASPBERRY-IP/Projekte/Projekt1/
Nun sollte der TYPO3-Install Manager erscheinen. Hier verweise ich einmal auf eine schöne Anleitung mit Bilder:
https://www.debacher.de/wiki/Installation_von_Typo3_8.7

Ich kann gerne in einem anderen Artikel noch mehr auf die Einstellungen von TYPO3 eingehen, falls gewünscht!?!
(In die Kommentare schreiben)

TYPO3 Rechte einstellen:

(sind keine Pflicht-Einstellungen)
Wir können noch gerne die benötigten Rechte umstellen/einstellen. Muss aber nicht, TYPO3 merkt die Rechte im Install-Tool nur an.

Default File permissions (SYS/fileCreateMask)
Recommended: 0660

Default Directory permissions (SYS/folderCreateMask)
Recommended: 2770

Allen Ordner die Rechte 2770 geben:
$ sudo find /var/www -type d -exec chmod 2770 {} \;

Allen Files die Rechte 0660 geben:
$ sudo find /var/www -type f -exec chmod 0660 {} \;

Allen Dateien die Gruppe / User www-data zuweisen:
$ sudo chown -R www-data:www-data /var/www
$ sudo chmod -R g+rwX /var/www

TYPO3 benötigt noch ein Grafik-Tool, ich persönlich verwende mittlerweile Graphicsmagick, da es auf dem neueren Stand ist und wohl auch „schneller“ sei.
Graphicsmagick installieren
$ sudo apt-get update
$ sudo apt-get install graphicsmagick

TYPO3 Konfiguration:

Wenn Ihr Euch nun in das TYPO3 einloggt, könnt Ihr nun alle TYPO3 Einstellungen vornehmen.
Neue Datei in typo3conf/: ENABLE_INSTALL_TOOL erstellen.
In der Datei eintragen: KEEP FILE
(Somit wird die Install-Datei nicht immer gleich gelöscht)

Bis hier sollte nun Eurer TYPO3 System stabil laufen und nun könnt Ihr wie gehabt mit der Programmierung beginnen!

Wie schon oben beschrieben, habe ich in der ZIP-Datei noch ein paar weitere nützliche „Service“ Tools für den PI mit dazu gelegt, hier die Links zu den einzelnen Dateien:

CPU und Speicher Status vom RaspberryPi:
http://www.forum-raspberrypi.de/Thread-php-cpu-sys-infos?page=3
In dem Forum wurde das Script dazu geschrieben und bietet viele Informationen zu dem RaspberryPi an.
Perfekt um zu sehen, ob der Overclock anständig läuft.

$ sudo nano /etc/sudoers
Wenn der Editor geöffnet ist, fügst du am Ende der Datei die folgende Zeile ein:

www-data ALL=NOPASSWD:/opt/vc/bin/vcgencmd
Dieser Eintrag gewährt Nutzern der Gruppe www-data nun Zugriff auf vcgencmd-Befehle, ohne sie mit einem Passwort bestätigen zu müssen.
So könnt Ihr mehr Infos bei dem CPU-Service sehen.

OCP – Opcache Control Panel (aka Zend Optimizer+ Control Panel for PHP)
Mit dem OpCache Service, bekommt Ihr eine schöne Übersicht von dem RaspberryPi Opcache. Hier könnt Ihr zusätzlich auch den Cache löschen usw.
https://gist.github.com/ck-on/4959032

Raspberry Pi 3 Übertakten

Ich habe mit ein paar Werten rumgespielt und getestet. Ich würde bei dem Pi3 nicht über 1350 Mhz CPU gehen. Sonst wird er recht warm und die Haltbarkeit geht ggf. nach unten.
Mit diesen Wert öffnet Ihr die Pi3 Config:
$ sudo nano /boot/config.txt

Folgende Werte könnt Ihr ganz unten einfügen:

  • arm_freq = Die Taktrate des Prozessors (CPU) in MHz
  • core_freq = Die Taktrate des Grafikprozessors (GPU) in MHz
  • sdram_freq = Die Taktfrequenz des Arbeitsspeichers (SDRAM) in MHz
  • over_voltage = Spannung für CPU und GPU, die Erhöhung um 1 erhöht die Spannung um 0,025V

arm_freq=1350
core_freq=500
sdram_freq=500
over_voltage=4

Mit dem cpu.php Tool habe ich immer die CPU Werte und Temperaturen in Sicht. Bitte hier immer mal drauf schauen und prüfen, ob der Raspberry Pi 3 nicht zu heiß wird!

APC Cache Übersicht:
Mit dem APC Service könnt Ihr alle Werte zu dem APCu Cache auslesen und auch löschen.
http://pecl.php.net/package/APCu
In der PHP-Datei habe ich die Login-Daten schon angepasst.

defaults('ADMIN_USERNAME','pi'); // Admin Username
defaults('ADMIN_PASSWORD','raspberry'); // Admin Password - CHANGE THIS TO ENABLE!!!

Könnt Ihr gerne abändern.

Mögliche Fehler:

MySQL Fehler: error.log
[Warning] Buffered warning: Changed limits: max_open_files: 1024
http://stackoverflow.com/a/33464069/3923134

Errors:
$ php -i | grep apc.shm_size
oder:
$ php -v
oder:
$ php -m

PHP Warning: Module ‚apcu‘ already loaded in Unknown on line 0

Abhilfe:
– APC wird doppelt geladen, ggf. in der apcu.ini die erste Line: ;extension=apcu.so (auskommentieren)

Ich werde gerne noch weiter an der Anleitung schreiben und gewisse Themen ausführlicher beschreiben falls noch nicht alles klar ist. Dafür benötige ich dann aber Eurer Feedback in den Kommentaren.
Sollte es zu Fehler oder Problemen kommen, gerne auch schreiben.
Wie schon oben geschrieben, bin ich leider keine Serveradmin, daher habt etwas Rücksicht 😉
Vielen Dank an codingworld.io für die Hilfe und Aufbau vom Apache2 Dienst.

Eure Meinung zu dem Artikel ist gefragt! Schreibt mir ein Kommentar

Hat Euch der Artikel weitergeholfen oder gefallen?
Ich freue mich auf einen Blick auf meine Amazon-Wunschliste. Vielen Dank!

Hat Euch der Artikel weitergeholfen oder gefallen? Ich freue mich auf einen Blick auf meine Amazon-Wunschliste. Vielen Dank!Ich bin freiberuflicher TYPO3-Entwickler, Web-Entwickler und Frontend-Entwickler. Ich arbeite im und für das Web etwas mehr als 12 Jahre. Mehr Infos zu der TYPO3 Internetagentur - INGENIUMDESIGN.

Leave a Reply

1 Kommentar

Next ArticleTYPO3 - sys-category via typoscript und Fluid viewhelper auslesen