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:a5-v11 [2022/06/26 23:23]
theexpertnoob Too outdated to maintain.
— (current)
Line 1: Line 1:
-===== Piratebox on the A5-V11 ===== 
-If you liked having Piratebox on the Zsun. I am now bringing it to you now on a device the size of a pack of gum!  ​ 
-After many MONTHS of installing, troubleshooting,​ resetting e.d. I now have a complete working Piratebox installation for the A5-V11.  ​ 
-I would like to share my installation scripts in order to let you install your own.  ​ 
  
-<WRAP center centeralign alert 75%>This tutorial was created with OpenWRT LEDE 18.06.5 using the similar Zsun manual method</​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 for extroot.  ​ 
-NOBODY will take responsibility or be liable for anything you do to your device.  ​ 
-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 Nov 17, 2019 and working with PirateBox v1.1.4. </​WRAP>​ 
-  
-==== 0a. PreSetup A5-V11 from STOCK FIRMWARE ==== 
-You need: 
-  * laptop/PC with Ethernet Port 
-  * telnet client (I use putty) 
-  * Ethernet Cable 
-  * VFAT formatted USB flash drive (might not be empty) 
-Download: 
-  * [[http://​gandalfsax.com/​public/​test-build/​uboot_usb_256_03.img|u-boot 256]] This is version 3 which supports recovery from USB as well as TFTP and serial. 
-  * [[http://​gandalfsax.com/​public/​test-build/​lede-ramips-rt305x-a5-v11-squashfs-factory.bin|My OpenWrt release]] 
-  ​ 
-  * Copy them to USB drive, rename OpenWrt image to firmware.bin 
-  * Connect your laptop/PC to the A5-V11 via Ethernet and power up the A5-V11 
-  * Connect the USB Flash drive to the A5-V11 
-  * Telnet to the A5-V11 with the following command: 
-<​code>​telnet 192.168.100.1</​code>​ 
-  * The username and password are admin 
-  * Mount the USB flash drive with the following command: 
-<​code>​mount /dev/sda1 /​mnt</​code>​ 
-  * Wait a few seconds and verify that you see files 
-<​code>​ls /​mnt</​code>​ 
-  * You should see your files. Do not go further if you do not see files ! 
-  * Upgrade uboot - be careful, do not reset router during and after this operation ! 
-<​code>​mtd_write write  /​mnt/​uboot256.img Bootloader</​code>​ 
-  * You should see on console 
-<​code>​ 
-#Unlocking Bootloader … 
-#Writing from /​mnt/​uboot256.img to Bootloader …  [w] 
-</​code>​ 
-  * Upgrade firmware - do not reset router during this operation! 
-<​code>​ mtd_write write /​mnt/​firmware.bin Kernel</​code>​ 
-  * You should see on console 
-<​code>​ 
-#Unlocking Kernel … 
-#Writing from /​mnt/​firmware.bin to Kernel …  [w] 
-</​code>​ 
-Reboot router with the following command. 
-<​code>​reboot</​code>​ 
- 
-==== 0b. PreSetup A5-V11 from OpenWRT ==== 
-You need: 
-  * laptop/PC with Ethernet Port 
-  * pscp client (windows cli) 
-  * Ethernet Cable 
-Download: 
-  * [[http://​gandalfsax.com/​public/​test-build/​lede-ramips-rt305x-a5-v11-squashfs-sysupgrade.bin|My OpenWrt release]] 
-  * In a command line interface be it bash for linux or CMD for Windows, copy over the sysupgrade using pscp. below is an example. 
-<​code>​ 
-pscp -scp "​C:​\path\to\image\openwrt-ramips-rt305x-a5-v11-squashfs-sysupgrade.bin"​ root@192.168.1.1:/​tmp/​firmware.bin 
-</​code>​ 
-  * Connect to your A5-V11 device via SSH and run 
-  <​code>​ 
-  sysupgrade -n -v /​tmp/​firmware.bin 
-  </​code>​ 
-Your device should reboot once the update is complete. Now, I had an issue with my old uboot not letting it boot due to bad magic. Fortunatly I was able to recover by installing the updated uboot256.img via serial and tftp. 
- 
-==== 1a. Network Debacle ==== 
-I have an issue with my router that ANY device connected to it via static IP wont recieve DNS addresses from the gateway (my router). Here is a simple fix if you cant ping google.com from your A5-V11. 
-<​code>​ 
-uci set network.lan.proto='​dhcp'​ 
-uci commit 
-service network reload 
-</​code>​ 
-Now try pinging google.com 
-<​code>​ 
-ping google.com 
-</​code>​ 
-if you see success, kill ping with a CTRL+Z 
-  ​ 
-==== 1b. Setup Mounts ==== 
-=== Format USB Drive === 
-  * 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://​gandalfsax.com/​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 device 
-At this point, if you botch anything below, you can pull the USB drive, kill the partitions and start over at step 1b. 
- 
-==== 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. 
-<​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 perl-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>​ 
-You may get an error that it couldn'​t install pearlbase-cgi,​ package is missing. Included perl-cgi and looking into it further. 
-  * Reboot 
-<​code>​ 
-opkg update && opkg install php7-cgi php7-fastcgi unzip minidlna 
-</​code>​ 
-LEDE 18.06 does not have php5 but php7. Lets hope this doesn'​t mess too much up. 
-  * Reboot 
- 
- 
-==== 2-5. Lets set up wifi ==== 
-<​code>​ 
-uci set wireless.radio0.disabled=0 
-uci set wireless.@wifi-iface[0].ssid='​Piratebox - Share Freely'​ 
-uci commit 
-/​etc/​init.d/​network reload && wifi 
-</​code>​ 
- 
- 
-==== 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 
-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 
-sed -i '​s|$SERVER["​socket"​] == "​[::​]:​80"​ {  }||# $SERVER["​socket"​] == "​[::​]:​80"​ {  }|g' /​opt/​piratebox/​conf/​lighttpd/​lighttpd.conf 
-/​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>​ 
-uci set network.lan.proto='​static'​ 
-uci set system.@system[0].hostname='​piratebox'​ 
-uci commit 
-service network reload && /​etc/​init.d/​system reload 
-</​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.