Differences

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

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
raspberry_pi:mods:mesh [2017/05/25 21:14]
matthias [Mesh config script]
raspberry_pi:mods:mesh [2018/02/23 16:54] (current)
matthias [Mesh config script] without cd but use homedir
Line 16: Line 16:
    - Create Mesh setup script & make it bootable    - Create Mesh setup script & make it bootable
    - Configure Avahi to announce PirateBox    - Configure Avahi to announce PirateBox
 +
 +===== Prereq. =====
 +Check the internet is working and sudo is active:
 +
 +  sudo touch /​tmp/​sudo_test
 +  sudo rm /​etc/​resolv.conf
 +  sudo sh -c 'echo "​nameserver 8.8.8.8"​ > /​etc/​resolv.conf'​
 +  dig google.de | grep -q -e 192.168.77.1 && echo "​error,​ Internet is not working!"​
 +
  
 ===== Software bridge ===== ===== Software bridge =====
 Create the network configuration file for the bridge: Create the network configuration file for the bridge:
 +  ​
   cat <<EOF > piratebox_bridge   cat <<EOF > piratebox_bridge
   Description="​General bridge interface for PirateBox"​   Description="​General bridge interface for PirateBox"​
Line 88: Line 97:
   sudo sh -c 'echo "​br_netfilter"​ > /​etc/​modules-load.d/​netfilter.conf'​   sudo sh -c 'echo "​br_netfilter"​ > /​etc/​modules-load.d/​netfilter.conf'​
   sudo modprobe br_netfilter   sudo modprobe br_netfilter
 +  sudo pacman -Sy --noconfirm batctl
   wget https://​github.com/​PirateBox-Dev/​PirateBox-Mesh/​releases/​download/​1.1.4/​piratebox-mesh_1.1.4_all_NON_WRT.sh   wget https://​github.com/​PirateBox-Dev/​PirateBox-Mesh/​releases/​download/​1.1.4/​piratebox-mesh_1.1.4_all_NON_WRT.sh
   chmod a+x piratebox-mesh_1.1.4_all_NON_WRT.sh   chmod a+x piratebox-mesh_1.1.4_all_NON_WRT.sh
   sudo mv piratebox-mesh_1.1.4_all_NON_WRT.sh /​bin/​piratebox-mesh.sh   sudo mv piratebox-mesh_1.1.4_all_NON_WRT.sh /​bin/​piratebox-mesh.sh
   sudo sed -i -e '​s|phy0|phy1|g' ​ \   sudo sed -i -e '​s|phy0|phy1|g' ​ \
-     -e '​s|MESH_CHANNEL=0|MESH_CHANNEL=6| \+     -e '​s|MESH_CHANNEL=0|MESH_CHANNEL=6|' ​\
      -e '​s|EXCHANGE_MAC="​yes"​|EXCHANGE_MAC="​no"​|'​ \      -e '​s|EXCHANGE_MAC="​yes"​|EXCHANGE_MAC="​no"​|'​ \
      /​bin/​piratebox-mesh.sh      /​bin/​piratebox-mesh.sh
   ​   ​
 +Create a start/stop script:
 +
 +  cat <<EOF > ~/​mesh.service
 +  [Unit]
 +  Description=PirateBox Mesh Service
 +  PartOf=netctl@piratebox_bridge.service ​
 +  ​
 +  [Service]
 +  Type=idle
 +  RemainAfterExit=yes
 +  ExecStart=/​bin/​piratebox-mesh.sh start 
 +  ExecStop=/​bin/​piratebox-mesh.sh stop
 +  ​
 +  [Install]
 +  WantedBy=multi-user.target
 +  EOF
 +  sudo mv ~/​mesh.service /​etc/​systemd/​system
 +  sudo systemctl daemon-reload
 +  sudo systemctl start mesh.service ​
 +  sudo systemctl enable mesh.service ​
 +
 +===== AVAHI =====
 +
 +  sudo mv /etc/avahi /​etc/​avahi.old
 +  sudo ln -s /​opt/​piratebox/​conf/​avahi/​ /etc/avahi
 +  sudo systemctl start avahi-daemon
 +  sudo systemctl enable ​ avahi-daemon
 +  ​
 +===== Finalize =====
 +At the end you should do a reboot
 +
 +  sudo reboot
 +