Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
openwrt:manual:zsun [2022/06/26 21:24]
theexpertnoob Too outdated to maintain.
— (current)
Line 1: Line 1:
-===== Piratebox on the Zsun ===== 
-Like many of us have read the [[https://​hardware.slashdot.org/​story/​16/​01/​26/​1430201/​openwrt-turns-a-14-card-reader-into-the-smallest-wireless-ap|article]] on slashdot about the Openwrt capabilities of the Zsun Wifi card Reader. ​ 
-The idea of having PirateBox running on the smallest device yet made me order one from China. ​ 
-After many hours of installing, troubleshooting,​ resetting e.d. I now have a complete working Piratebox installation. ​ 
-I would like to share my installation scripts in order to let you install your own. 
  
-<WRAP center centeralign alert 75%>This tutorial will soon be out of date due to the upcoming PirateBox v1.2. It will be updated once all the bugs are figured out and there is a successful release for this device.</​WRAP>​ 
- 
-<WRAP center centeralign alert 75%>This tutorial is for the technical minded but should be simple to follow until we get a full install package/​script working.  ​ 
-NOBODY will take responsibility or be liable for anything you do to your zsun.  ​ 
-If you brick it trying these procedures, **YOU** are solely responsible for your actions.  ​ 
-**YOU HAVE BEEN WARNED**. However, we can try and help in the forums.  ​ 
-This has been recently tested on Jan 28, 2017 and working with PirateBox v1.1.2. ​ 
-    
-Now testing on LEDE for A5-V11 with latest piratebox. Will create a new wiki page for A5-V11 LEDE setup as well as update this wiki once all testing is complete.</​WRAP>​ 
- 
-==== 0. PreSetup ZSUN ==== 
-  * Having a Zsun running OpenWrt. I've used the [[https://​wiki.hackerspace.pl/​projects:​zsun-wifi-card-reader:​factory-update|hackerspace.pl]] method. ​ 
-  * microSD card (current data will be destroyed) 
-  * Root password [[https://​wiki.openwrt.org/​doc/​howto/​firstlogin|set]]. 
- 
-  * Connect to **OpenWRT** SSID and then connect via SSH to 192.168.1.1 as root 
-  * Bunch of uci commands. Copy and paste each into the command line of the shell prompt. 
-<​code>​ 
-uci set uhttpd.main.listen_http=9080 
-uci set uhttpd.main.listen_https=9443 
-uci commit 
-uci set wireless.radio0.channel=auto 
-uci set wireless.radio0.txpower=18 
-uci set wireless.radio0.country=00 
-uci set wireless.radio0.disabled=0 
-uci add wireless wifi-iface 
-uci set wireless.@wifi-iface[-1].device=radio0 
-uci set wireless.@wifi-iface[-1].ssid='​yourWifiName'​ 
-</​code>​ 
-  * Change "​yourWifiName"​ before pressing enter 
-<​code>​ 
-uci set wireless.@wifi-iface[-1].mode=sta 
-uci set wireless.@wifi-iface[-1].network=wwan 
-uci set wireless.@wifi-iface[-1].encryption=psk2 
-uci set wireless.@wifi-iface[-1].key='​yourSuperSecurePass'​ 
-</​code>​ 
-  * Change "​yourSuperSecurePass"​ before pressing enter 
-<​code>​ 
-uci set wireless.@wifi-iface[-1].disabled=0 
-uci commit 
-uci set wireless.@wifi-iface[0].ssid='​Piratebox - Share Freely'​ 
-uci commit 
-uci set network.wwan=interface 
-uci set network.wwan.proto=dhcp 
-uci commit 
-uci set firewall.@zone[1].network='​wan wan6 wwan' 
-uci commit 
-/​etc/​init.d/​network reload && /​etc/​init.d/​firewall reload && wifi 
-</​code>​ 
-  * Press Enter (you will be disconnected) 
-  * Reconnect to '​Piratebox - Share Freely'​ SSID and back to 192.168.1.1 
-<WRAP center round info 75%> 
-An additional wireless connection with your own WiFi is made in '​sta'​ mode. Because OpenWrt (and PirateBox) are using the IP 192.168.1.1 (sub-netmask /24) the network (WiFi) you are connecting to can't use the same sub-net mask. 
-</​WRAP>​ 
-  * Verify your internet connection using 
-<​code>​ 
-ping google.com 
-opkg update 
-</​code>​ 
- 
- 
-==== 1. Setup Mounts ==== 
-=== Format SD card === 
-  * Copy and paste one line at a time 
-<​code>​ 
-cd /tmp 
-export LD_LIBRARY_PATH='/​lib:/​usr/​lib:/​tmp/​lib:/​tmp/​usr/​lib'​ 
-opkg update && opkg install -d ram e2fsprogs dosfstools fdisk 
-wget http://​druss.org/​public/​parts 
-chmod +x /tmp/parts 
-./parts 
-/​tmp/​usr/​sbin/​mkfs.fat /dev/sda1 
-/​tmp/​usr/​sbin/​mkfs.ext4 /dev/sda2 
-</​code>​ 
- 
-  * copy and paste into command shell 
-<​code>​ 
-mkdir -p /​opt/​piratebox/​share 
-uci add fstab mount 
-uci set fstab.@mount[-1].target=/​opt/​piratebox/​share 
-uci set fstab.@mount[-1].device=/​dev/​sda1 
-uci set fstab.@mount[-1].fstype=vfat 
-uci set fstab.@mount[-1].options=rw,​sync 
-uci set fstab.@mount[-1].enabled=1 
-uci set fstab.@mount[-1].enabled_fsck=0 
-uci commit 
-mkdir /​mnt/​sda2 ​ 
-mount -t ext4 /dev/sda2 /mnt/sda2 
-tar -C /overlay -cvf - . | tar -C /mnt/sda2 -xf - 
-uci add fstab mount 
-uci set fstab.@mount[-1].target=/​overlay 
-uci set fstab.@mount[-1].device=/​dev/​sda2 
-uci set fstab.@mount[-1].fstype=ext4 
-uci set fstab.@mount[-1].options=rw,​sync 
-uci set fstab.@mount[-1].enabled=1 
-uci set fstab.@mount[-1].enabled_fsck=0 
-uci commit 
-reboot 
-</​code>​ 
-  * Reconnect to PirateBox - Share Freely 
-==== 2. Install Packages ==== 
-  * Copy and paste each code block and reboot between installation blocks as noted. Due to "​newer"​ packages, I have been running out of ram and I am having to split them up so the process doesn'​t kill itself while configuring. I will work on an alternate solution soon. (Testing on A5-V11) 
-<​code>​ 
-opkg update && opkg install python lighttpd lighttpd-mod-cgi lighttpd-mod-redirect lighttpd-mod-alias lighttpd-mod-setenv lighttpd-mod-fastcgi 
-</​code>​ 
-  * Reboot 
-<​code>​ 
-opkg update && opkg install perl perlbase-base perlbase-cgi perlbase-essential perlbase-file perlbase-bytes perlbase-config perlbase-data perlbase-db-file perlbase-digest perlbase-encode perlbase-encoding perlbase-fcntl perlbase-gdbm-file perlbase-integer perlbase-socket perlbase-time perlbase-unicode perlbase-unicore perlbase-utf8 perlbase-xsloader 
-</​code>​ 
-  * Reboot 
-<​code>​ 
-opkg update && opkg install php5-cgi php5-fastcgi unzip minidlna 
-</​code>​ 
-  * Reboot 
-==== 3. Set-up Piratebox, Imageboard & MiniDLNA ==== 
-  * Copy and paste each line separately. 
-<​code>​ 
-cd /tmp 
-wget http://​downloads.piratebox.de/​piratebox-ws_current.tar.gz 
-tar xzf piratebox-ws_current.tar.gz 
-cd piratebox 
-mkdir -p /opt 
-cp -rv piratebox /opt 
-cp /​opt/​piratebox/​src/​openwrt.example.minidlna /​etc/​config/​minidlna 
-sed -i '​s|DO_IFCONFIG="​yes"​|DO_IFCONFIG="​no"​|g'​ /​opt/​piratebox/​conf/​piratebox.conf 
-sed -i '​s|USE_APN="​yes"​|USE_APN="​no"​|g'​ /​opt/​piratebox/​conf/​piratebox.conf 
-sed -i '​s|NET=192.168.77|NET=192.168.1|g'​ /​opt/​piratebox/​conf/​piratebox.conf 
-sed -i '​s|DNSMASQ_INTERFACE="​wlan0"​|DNSMASQ_INTERFACE="​br-lan"​|g'​ /​opt/​piratebox/​conf/​piratebox.conf 
-sed -i '​s|DROOPY_CHMOD|#​DROOPY_CHMOD|g'​ /​opt/​piratebox/​conf/​piratebox.conf 
-sed -i '​s|getenv = CDLL("​libc.so.6"​).getenv|getenv = CDLL("​libc.so.0"​).getenv|g'​ /​opt/​piratebox/​bin/​droopy 
-/​etc/​init.d/​lighttpd stop 
-/​etc/​init.d/​lighttpd disable 
-/​opt/​piratebox/​init.d/​piratebox_alt start 
-/​opt/​piratebox/​bin/​install_piratebox.sh /​opt/​piratebox/​conf/​piratebox.conf imageboard 
-/​opt/​piratebox/​bin/​board-autoconf.sh 
-</​code>​ 
-  * Enter in a code for your imageboard. 
-<​code>​ 
-/​opt/​piratebox/​init.d/​piratebox_alt stop 
-uci set wireless.@wifi-iface[1].disabled=1 
-uci commit 
-/​etc/​init.d/​network reload && wifi 
-</​code>​ 
-  * Press Enter (you will be disconnected) 
-  * Reconnect to '​Piratebox - Share Freely'​ SSID and back to 192.168.1.1 
-==== 4. Create piratebox start ==== 
-<​code>​vi /​etc/​init.d/​piratebox</​code>​ 
-  * Copy the below code. In your shell window, press I to insert text then right-click or paste to insert. Be sure **ALL** of it has been pasted. Press ESC, SHIFT+Z, Shift+Z to save. (editor will auto close) 
-<​code>​ 
-#!/bin/sh /​etc/​rc.common 
- 
-NAME=piratebox 
-START=55 
-STOP=20 
- 
-start() { 
-        /​opt/​piratebox/​init.d/​piratebox_alt start 
-} 
- 
-stop() { 
-        /​opt/​piratebox/​init.d/​piratebox_alt stop 
-} 
-</​code>​ 
-==== 5. Finalization ==== 
-  * Copy and paste each line separately. 
-<​code>​ 
-chmod +x /​etc/​init.d/​piratebox 
-/​etc/​init.d/​piratebox start 
-/​etc/​init.d/​piratebox enable 
-reboot 
-</​code>​ 
-==== 6. Options are optional ==== 
-~Sarge, RvB 
-=== 6.1 Enable PHP === 
-<​code>​ 
-sed -i '​s|#​include "/​opt/​piratebox/​conf/​lighttpd/​fastcgi-php.conf"​|include "/​opt/​piratebox/​conf/​lighttpd/​fastcgi-php.conf"​|g'​ /​opt/​piratebox/​conf/​lighttpd/​lighttpd.conf 
- 
-sed -i '​s|doc_root =|;doc_root =|g' /​etc/​php.ini 
- 
-echo "<?​php phpinfo() ?>" > /​opt/​piratebox/​share/​content/​phpinfo.php 
- 
-/​etc/​init.d/​piratebox reload 
-</​code>​ 
-  * test 
-http://​piratebox.lan/​content/​phpinfo.php you should get a long php info page of stuff. 
-If it works, you can delete the phpinfo page with this command. 
-<​code>​ 
-rm /​opt/​piratebox/​share/​content/​phpinfo.php 
-</​code>​ 
-=== 6.2 Enable IRC === 
-  * Copy and past each line 
-<​code>​ 
-sed -i '​s|ENABLE_IRC_SERVER="​no"​|ENABLE_IRC_SERVER="​yes"​|g'​ /​opt/​piratebox/​conf/​piratebox.conf 
-/​etc/​init.d/​piratebox restart 
-</​code>​ 
-=== 6.3 Change Upload Folder === 
-<​code>​ 
-mkdir -p /​opt/​piratebox/​share/​Shared/​Uploaded 
-sed -i '​s|UPLOADFOLDER="​$SHARE_FOLDER/​Shared"​|UPLOADFOLDER="​$SHARE_FOLDER/​Shared/​Uploaded"​|g'​ /​opt/​piratebox/​conf/​piratebox.conf 
-/​etc/​init.d/​piratebox restart 
-</​code>​ 
- 
-==== 7. Fixes ==== 
-  * MiniDLNA 
-Minidlna config points to the wrong path. So we need to fix it 
-<​code>​ 
-vi /​etc/​config/​minidlna 
-</​code>​ 
-Press **I** on the keyboard to get into edit mode\\ 
-change the line that reads **list media_dir '/​mnt/​usb/​PirateBox/​Shared/'​**\\ 
-to **list media_dir '/​opt/​piratebox/​share/​Shared/'​**\\ 
-Press SHIFT+Z, SHIFT+Z on the keyboard ​ to save. 
-<​code>​ 
-/​etc/​init.d/​minidlna reload 
-</​code>​ 
-to save changes 
-==== Credits ==== 
-  * Matthias - for the Piratebox Project and updated code. 
-  * meduza - for the majority of the scripting for the Zsun. 
-  * stylesuxx - for the wifi configuration and troubleshooting. 
-  * TheExpertNoob - for troubleshooting and this wiki guide. 
- 
-If I forgot anyone else, PM me.