BananaPro (Bananian bis 1/2018)
Inhaltsverzeichnis
- 1 Bananian
- 1.1 Download
- 1.2 Infos zur Hardware
- 1.3 Erstanmeldung
- 1.4 WLAN-Modul in Bananian einbinden
- 1.5 WLAN konfigurieren
- 1.6 Blinken von LED1 "abschalten"
- 1.7 Bananian einrichten
- 1.8 Bananian aktualisieren
- 1.9 IR-Eingang auslesen/anzeigen
- 1.10 LIRC einrichten
- 1.11 LAMP installieren
- 1.12 FTP installieren
- 1.13 root für FTP-Zugriff freigeben
- 1.14 TFTP-Server installieren
- 2 Windows-Netzwerkfreigabe mounten
- 3 RPi.GPIO auf Banana Pro einrichten
- 4 Benutzer Rechte auf GPIO gewähren
Bananian
Download
https://www.bananian.org/download
Infos zur Hardware
https://www.bananian.org/hardware
Erstanmeldung
Benutzer:
root
Kennwort:
pi
WLAN-Modul in Bananian einbinden
nano /etc/modules
einfügen:
ap6210
WLAN konfigurieren
nano /etc/network/interfaces
auto wlan0 allow-hotplug wlan0 iface wlan0 inet dhcp wpa-ap-scan 1 wpa-scan-ssid 1 wpa-ssid "NAME-WLAN-NETZWERK" wpa-psk "WLAN-KEY"
shutdown -r now
Blinken von LED1 "abschalten"
nano /etc/rc.local
echo none > /sys/class/leds/green\:ph24\:led1/trigger
shutdown -r now
Bananian einrichten
bananian-config
Bananian aktualisieren
bananian-update apt-get update apt-get upgrade
IR-Eingang auslesen/anzeigen
cat /proc/bus/input/devices
cat /dev/input/event0 cat /dev/input/event0 | hexdump -C
LIRC einrichten
sudo apt-get install lirc evtest
evtest /dev/input/event0
http://forum-bananapi.de/Thread-Infrarot-einfache-Grundlage-mit-lirc-und-python
LAMP installieren
Apache Webserver installieren
apt-get install apache2 make gcc build-essential
Webserver-Test
- im Browser
http://bananapi/
eingeben
Rechte für Apache setzen
chmod g+s /var/www chmod 775 /var/www chown -R www-data:www-data /var/www
PHP5 und Module installieren
apt-get install php5 libapache2-mod-php5
MySQL und PHPMyAdmin installieren
apt-get install mysql-server mysql-client php5-mysql libapache2-mod-auth-mysql
reboot
apt-get install php5-mysql phpmyadmin
- php.ini berabeiten:
nano /etc/php5/apache2/php.ini
- einfügen:
extension=mysql.so
- ändern:
... ;;;;;;;;;;;;;;;;; ; Data Handling ; ;;;;;;;;;;;;;;;;; ...
post_max_size = 128M
... ;;;;;;;;;;;;;;;; ; File Uploads ; ;;;;;;;;;;;;;;;; ...
upload_max_filesize = 128M
service apache2 restart
PHPMyAdmin aufrufen
http://bananapi/phpmyadmin/
FTP installieren
apt-get install proftpd-basic
- Nach Möglichkeit standalone-Betrieb auswählen (nicht per inetd-starten)
- PRO-FTP Konfiguration erzeugen:
nano /etc/proftpd/proftpd.conf
DefaultRoot / AuthOrder mod_auth_file.c mod_auth_unix.c AuthUserFile /etc/proftpd/ftpd.passwd AuthPAM off RequireValidShell off
- Benutzer anlegen:
cd /etc/proftpd/ ftpasswd --passwd --name ftpuser --uid 33 --gid 33 --home /var/www/ --shell /bin/false
- Server neu starten
/etc/init.d/proftpd restart
- Rechte anpassen:
chmod g+s /var/www/ chmod 775 /var/www/ chown -R www-data:www-data /var/www/
root für FTP-Zugriff freigeben
- Datei editieren:
nano /etc/ftpusers
- root auskommentieren:
#root
TFTP-Server installieren
- Server installieren:
apt-get install tftpd-hpa
- Einstelllungen anpassen:
nano /etc/default/tftpd-hpa
Inhalt der Datei wie folgt ändern:
TFTP_USERNAME=”tftp” TFTP_DIRECTORY=”/srv/tftp” TFTP_ADDRESS=”0.0.0.0:69″ TFTP_OPTIONS=”–secure -4”
- Server neu starten:
service tftpd-hpa restart
Hinweis: Dateien in /srv/tftp
ablegen.
Evtl. Rechte anpassen:
chmod g+s /srv/tftp/ chmod 775 /srv/tftp/
Windows-Netzwerkfreigabe mounten
- CIFS-Software installieren
apt-get install cifs-utils
- Verzeichnis erstellen
mkdir /media/nas
- Freigabe mounten (als root):
mount.cifs //<IP-Adresse des Servers>/<Freigabename> /media/nas -o user=<Benutzername>,pass=<Passwort>
[Quelle: http://www.forum-raspberrypi.de/Thread-freigegebenen-ordner-einbinden?pid=41711#pid41711]
BananaPro per Script sichern
- als root Benutzer Pi anlegen:
adduser pi
- sudo installieren
apt-get install sudo
- Benutzer pi als sudoer eintragen:
sudo usermod -aG sudo pi
- als Pi anmelden
- Script downloaden:
wget http://www.linux-tips-and-tricks.de/raspiBackupInstall.sh -O raspiBackupInstall.sh -q && sudo bash raspiBackupInstall.sh
- Script ausführen:
sudo /usr/local/bin/raspiBackup.sh -p /media/nas -t dd -z -v
CGI mit Python nutzen
Common Gateway Interface konfigurieren
- Öffnen Sie die Apache2-Konfigurationsdatei /etc/apache2/sites-available/default mit einem Editor.
pico /etc/apache2/sites-available/default
- Überprüfen ob im Abschnitt /usr/lib/cgi-bin bei der Direktive Options die Option ExecCGI wie im folgenden Beispiel aktiviert ist.
<Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory>
Funktionstest des Common Gateway Interfaces
- Die Python-Skripte welche durch den Apache2 Webserver ausgeführt werden sollen, müssen im Verzeichnis /usr/lib/cgi-bin abgelegt werden. Für einen ersten Funktionstest erstellen Sie die Datei /usr/lib/cgi-bin/test.py.
pico /usr/lib/cgi-bin/test.py
- Fügen Sie in diese Datei das folgende Python-Skript ein.
#!/usr/bin/env python # -*- coding: utf-8 -*-
# enable debugging import cgitb cgitb.enable()
print "Content-Type: text/plain;charset=utf-8" print
print "Funktionstest erfolgreich."
- Nachdem Sie die Datei gespeichert haben, müssen Sie die Zugriffsrechte anpassen damit das Skript ausgeführt werden kann.
chmod 0755 /usr/lib/cgi-bin/test.py
- Öffnen Sie jetzt einen Browser und rufen das Python-Skript auf. Sobald Sie die Ausgabe Funktionstest erfolgreich angezeigt bekommen, funktioniert die Ausführung des Python-Skripts über das Common Gateway Interface von Apache2.
http://<IP-Adresse oder URLs des Webservers>/cgi-bin/test.py
RPi.GPIO auf Banana Pro einrichten
Voraussetzungen: Paket sudo muss instaliert sein.
- GIT installieren:
sudo apt-get update sudo apt-get install git
- Paket herunterladen:
cd /root git clone https://github.com/LeMaker/RPi.GPIO_BP -b bananapro
- Installation:
sudo apt-get update sudo apt-get install python-dev
- Kompilieren und Installieren:
cd RPi.GPIO_BP python setup.py install sudo python setup.py install
Benutzer Rechte auf GPIO gewähren
Enable GPIO access
Interrupts work by monitoring the GPIO pins. You'll need to give the user bananapi access to these by adding the following udev rule (all on one line) to /etc/udev/rules.d/51-gpio.rules::
SUBSYSTEM=="gpio*", PROGRAM=" /bin/sh -c 'chown -R root:gpio /sys/class/gpio && chmod -R 770 /sys/class/gpio; chown -R root:gpio /sys/devices/platform/gpio-sunxi/gpio && chmod -R 770 /sys/devices/platform/gpio-sunxi/gpio'"
with the following command::
$ sudo nano /etc/udev/rules.d/51-gpio.rules
Then create the gpio group and add the user bananapi::
$ sudo groupadd gpio $ sudo gpasswd -a bananapi gpio
You will have to reboot after setting up SPI and GPIO permissions.
- Software installieren
apt-get install samba samba-common-bin
- Benutzer einrichten
smbpasswd -a pi
- Server einstellen
service samba stop nano /etc/samba/smb.conf
- Inhalt der smb.conf
[global] workgroup = WORKGROUP #usershare allow guests = yes #security=share security=user follow symlinks = yes wide links = no unix extensions = no lock directory = /var/cache/samba [Pi] browsable = yes read only = no #guest ok = yes valid users = pi path = /home/pi [devices] browsable = yes read only = no #guest ok = yes valid users = pi path = /media force user = root
- optional:
[MEDIA USB-HDD 1.0 TB] browsable = yes read only = no #guest ok = yes valid users = pi path = /media/usb0
- Server starten
service samba start
NTFS-formatierte USB-HDD mounten
I found the solution:
1.
apt-get install ntfs-3g (necessary for NTFS formatted drives)
2.
apt-get install usbmount
3. edit usbmount.conf on /etc/usbmount with the following parameters:
FILESYSTEMS="vfat ext2 ext3 ext4 hfsplus ntfs" USB_NTFS3G="yes" MOUNTOPTIONS="noexec,nodev,noatime,nodiratime"
Optionally reduce mounting points:
MOUNTPOINTS="/media/usb0 /media/usb1 /media/usb2"
After that, automatically mounting / unmounting work well.
Webseiten "spiegeln"
wget -m -v ftp://username:password@server.net/ --no-host-directories