Devaux
Well-Known Member
- Joined
- Feb 5, 2006
- Messages
- 2,080
- Age
- 44
- Location
- ~/
- Website
- macmini.devaux.li
- ICQ
- 73632818
- WEBSITE
- http://macmini.devaux.li
- LOCATION
- ~/
Hi, ich moechte Euch kurz ein kleines Howto praesentieren wie ich die Filme von meinem File-Server auf dem GP2X abspiele.
Vorausgegangen ist die Tatsache, dass mein Server ca. 3m von meinem Bett entfernt ist und ich meine Fernbedienung zum TV irgendwie verlorengegangen ist. So kann ich bequem von meinem Bett aus auf dem kleinen Schirmchen auch mal ein Filmchen gucken.
Der Ansatz kann natuerlich auch fuer andere Dateien (grosse ROMs, ScummVM-Dateien...) verwendet werden.
Meine Infrastruktur:
- 2m USB-Verlaengerungskabel (war bei irgend nem Stick dabei)
- GP2X-USB-Kabel (bei jedem GP2X dabei)
- GP2X mit min. Firmware 2.0 (natuerlich von ED
- Macmini als SAMBA-Server (PPC Debian unstable)
Parameter die ich verwende:
$IP_SERVER: (USB-)IP meines SAMBA-Servers (192.168.0.1)
$IP_GP2X: (USB-)IP des GP2X (192.168.0.2)
$SMB_USER: Username des SAMBA-Users
$SMB_PASS: Passwort des SAMBA-Users
$SMB_SHARE: Freigabe des SAMBA-Servers
1. SAMBA-Server einrichten
===================
Darauf moechte ich nicht naeher eingehen. Es gibt tausende von Howtos im Internet. Die wichtigsten Punkte der Config-Datei '/etc/samba/smb.conf' moechte ich Euch aber nicht vorenthalten:
[global]
bind interfaces only = no #Noetig, damit auch ueber USB zugegriffen werden kann
interfaces = 192.168.0.0/16 #Da das "normale" Netz ein anderes Subnet ist
[$SMB_SHARE]
comment = Daten
browseable = yes
path = /data # Ordner der auf dem Server freigegeben werden soll
public = yes
writable = yes
Mit 'smbpasswd $SMB_USER' richte ich das Passwort $SMB_PASS ein.
2. Hotplug auf SAMBA-Server einrichten
============================
Die Problematik ist, dass hotplug zwar beim Erkennen eines am USB-Port angeschlossenen Geraetes das Device automatisch up bringt, dieses aber nicht automatisch konfiguriert ($IP_SERVER).
Abhilfe schaffen 2 kleine Scripts, welche dem Device (usb0) beim Connect automatisch eine IP zuweist:
(letzten 2 Zeile routen mir den Verkehr beim Server ins Internet => eth0 hat die WAN-IP. Somit waeren auch Live-Streams moeglich)
Dies schreibt man in die Dateien '/etc/hotplug/usb/usbnet.hotplug' und '/etc/hotplug/usb/cdc_ether.hotplug' Je nach Hardware koennen diese aber variieren. Dateien muessen natuerlich noch mit:
'sudo chmod 755 /etc/hotplug/usb/cdc_ether.hotplug && sudo chmod 755 /etc/hotplug/usb/usbnet.hotplug' ausfuehrbar gemacht werden.
3. SAMBA-Client auf dem GP2X installieren
==============================
Download gibt es hier.
Installation ist einfach. Man entpackt das ganze Archiv und kopiert alle Dateien ins NAND (Verzeichnisstruktur muss natuerlich beibehalten werden.
4. g_ether Modul auf dem GP2X austauschen
================================
Ansonsten klappt TCP/IP ueber USB nicht (jedenfalls unter Linux. Keine Ahnung obs mit Windows geht). Hierzu habe ich g_ether.o ins root-Verzeichnis der SD-Card kopiert.
Danach eine Datei mit dem Namen 'patch_gether.gpe' und dem Inhalt
auf die Karte kopiert. Diese kann man dann unter "Games" im Menue ausfuehren. Nun ist der GP2X bereit fuer TCP/IP over USB.
Die beiden Dateien auf der SD-Karte koennen danach natuerlich geloescht werden.
5. Konfiguration des GP2X
===================
Hierzu erstelle ich einen Mountpoint auf meiner SD-Karte: 'mkdir /mnt/sd/smb' (alternativ kann man auch mit 'mkdir /mnt/ext' den Mountpoint direkt auf EXT binden. Dann ists im Menue ueber EXT anwaehlbar. Der Mountbefehl muss dann aber natuerlich angepasst werden)
Jetzt braucht man nur noch ein kleines Scriptchen, welches mir das Netzwerk des GP2X aufbereitet und mein SAMBA-Share laedt
=> /mnt/sd/smbmount.gpe
Nun kann ich jederzeit ins Bett liegen, USB einstoepseln im Menue auf "Games" gehen und da das "smbmount.gpe" anwaehlen, worauf ich direkt im mplayer lande und ueber den Ordner "smb" auf der SD-Karte Zugriff auf meine komplette Daten-Sammlung habe.
Vorausgegangen ist die Tatsache, dass mein Server ca. 3m von meinem Bett entfernt ist und ich meine Fernbedienung zum TV irgendwie verlorengegangen ist. So kann ich bequem von meinem Bett aus auf dem kleinen Schirmchen auch mal ein Filmchen gucken.
Der Ansatz kann natuerlich auch fuer andere Dateien (grosse ROMs, ScummVM-Dateien...) verwendet werden.
Meine Infrastruktur:
- 2m USB-Verlaengerungskabel (war bei irgend nem Stick dabei)
- GP2X-USB-Kabel (bei jedem GP2X dabei)
- GP2X mit min. Firmware 2.0 (natuerlich von ED
- Macmini als SAMBA-Server (PPC Debian unstable)
Parameter die ich verwende:
$IP_SERVER: (USB-)IP meines SAMBA-Servers (192.168.0.1)
$IP_GP2X: (USB-)IP des GP2X (192.168.0.2)
$SMB_USER: Username des SAMBA-Users
$SMB_PASS: Passwort des SAMBA-Users
$SMB_SHARE: Freigabe des SAMBA-Servers
1. SAMBA-Server einrichten
===================
Darauf moechte ich nicht naeher eingehen. Es gibt tausende von Howtos im Internet. Die wichtigsten Punkte der Config-Datei '/etc/samba/smb.conf' moechte ich Euch aber nicht vorenthalten:
[global]
bind interfaces only = no #Noetig, damit auch ueber USB zugegriffen werden kann
interfaces = 192.168.0.0/16 #Da das "normale" Netz ein anderes Subnet ist
[$SMB_SHARE]
comment = Daten
browseable = yes
path = /data # Ordner der auf dem Server freigegeben werden soll
public = yes
writable = yes
Mit 'smbpasswd $SMB_USER' richte ich das Passwort $SMB_PASS ein.
2. Hotplug auf SAMBA-Server einrichten
============================
Die Problematik ist, dass hotplug zwar beim Erkennen eines am USB-Port angeschlossenen Geraetes das Device automatisch up bringt, dieses aber nicht automatisch konfiguriert ($IP_SERVER).
Abhilfe schaffen 2 kleine Scripts, welche dem Device (usb0) beim Connect automatisch eine IP zuweist:
Code:
#! /bin/bash
typeset -i num
num=`ifconfig | grep usb0 | wc -l`
if [ $num -eq 0 ] ; then
ifconfig usb0 192.168.0.1
fi
echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Dies schreibt man in die Dateien '/etc/hotplug/usb/usbnet.hotplug' und '/etc/hotplug/usb/cdc_ether.hotplug' Je nach Hardware koennen diese aber variieren. Dateien muessen natuerlich noch mit:
'sudo chmod 755 /etc/hotplug/usb/cdc_ether.hotplug && sudo chmod 755 /etc/hotplug/usb/usbnet.hotplug' ausfuehrbar gemacht werden.
3. SAMBA-Client auf dem GP2X installieren
==============================
Download gibt es hier.
Installation ist einfach. Man entpackt das ganze Archiv und kopiert alle Dateien ins NAND (Verzeichnisstruktur muss natuerlich beibehalten werden.
4. g_ether Modul auf dem GP2X austauschen
================================
Ansonsten klappt TCP/IP ueber USB nicht (jedenfalls unter Linux. Keine Ahnung obs mit Windows geht). Hierzu habe ich g_ether.o ins root-Verzeichnis der SD-Card kopiert.
Danach eine Datei mit dem Namen 'patch_gether.gpe' und dem Inhalt
Code:
cp /mnt/sd/g_ether.o /lib/modules/2.4.25/kernel/drivers/usb/gadget/g_ether.o
Die beiden Dateien auf der SD-Karte koennen danach natuerlich geloescht werden.
5. Konfiguration des GP2X
===================
Hierzu erstelle ich einen Mountpoint auf meiner SD-Karte: 'mkdir /mnt/sd/smb' (alternativ kann man auch mit 'mkdir /mnt/ext' den Mountpoint direkt auf EXT binden. Dann ists im Menue ueber EXT anwaehlbar. Der Mountbefehl muss dann aber natuerlich angepasst werden)
Jetzt braucht man nur noch ein kleines Scriptchen, welches mir das Netzwerk des GP2X aufbereitet und mein SAMBA-Share laedt
=> /mnt/sd/smbmount.gpe
Code:
modprobe smbfs
modprobe net2272
modprobe g_ether
# Kommentar wegnehmen um telnet zu aktivieren
# /etc/init.d/inet start
# Netzwerk inkl. Internet
ifconfig usb0 $IP_GP2X
route add default gw $IP_SERVER
echo nameserver 195.186.1.111 > /etc/resolv.conf
# SAMBA mounten
smbmount //$IP_SERVER/$SMB_SHARE /mnt/sd/smb/ -o username=$SMB_USER,password=$SMB_PASS
# MPlayer starten
cd /usr/gp2x/
./mplayer /mnt/sd/smb
# Zurueck ins Menue
cd /usr/gp2x
./gp2xmenu
Nun kann ich jederzeit ins Bett liegen, USB einstoepseln im Menue auf "Games" gehen und da das "smbmount.gpe" anwaehlen, worauf ich direkt im mplayer lande und ueber den Ordner "smb" auf der SD-Karte Zugriff auf meine komplette Daten-Sammlung habe.