| #!/bin/bash |
| # vm-setup.sh |
| # |
| # This script installs ONOS dependencies for packet/optical use case. |
| |
| |
| export CURRENT_USER=optical |
| export USER_HOME=/home/${CURRENT_USER} |
| |
| # -------------- Setup keys ------------------- |
| |
| mkdir -p ~/.ssh |
| ssh-keygen -t dsa -P "" -f .ssh/id_dsa |
| cp .ssh/id_dsa.pub .ssh/authorized_keys |
| |
| # -------------- Setup Desktop --------------- |
| |
| DESKTOP=${USER_HOME}/Desktop |
| |
| mkdir -p ${DESKTOP} |
| |
| cat > ${DESKTOP}/ONOS << EOF |
| [Desktop Entry] |
| Encoding=UTF-8 |
| Type=Application |
| Name=ONOS |
| Name[en_US]=ONOS |
| Icon=konsole |
| Exec=/usr/bin/lxterminal -e '/opt/onos/apache-karaf-3.0.2/bin/client -u karaf' |
| Comment[en_US]= |
| EOF |
| |
| # TODO: make large too! |
| cat > "${DESKTOP}/Packet-Optical Mininet Small" << EOF |
| [Desktop Entry] |
| Encoding=UTF-8 |
| Type=Application |
| Name=Packet/Optical Mininet Small |
| Name[en_US]=Packet/Optical Mininet Small |
| Icon=konsole |
| Exec=/usr/bin/lxterminal -e 'sudo /opt/onos/tools/test/topos/opticalTest.py' |
| Comment[en_US]= |
| EOF |
| |
| cat > "${DESKTOP}/Packet-Optical Mininet Large" << EOF |
| [Desktop Entry] |
| Encoding=UTF-8 |
| Type=Application |
| Name=Packet/Optical Mininet Large |
| Name[en_US]=Packet/Optical Mininet Large |
| Icon=konsole |
| Exec=/usr/bin/lxterminal -e 'sudo /opt/onos/tools/test/topos/opticalTestBig.py' |
| Comment[en_US]= |
| EOF |
| |
| cat > ${DESKTOP}/Tutorial << EOF |
| [Desktop Entry] |
| Encoding=UTF-8 |
| Type=Application |
| Name=SDN-IP Tutorial |
| Name[en_US]=SDN-IP Tutorial |
| Icon=internet-web-browser |
| Exec=/usr/bin/chromium-browser https://wiki.onosproject.org/display/ONOS/Packet+Optical+Tutorial |
| Comment[en_US]= |
| EOF |
| |
| cat > ${DESKTOP}/GUI << EOF |
| [Desktop Entry] |
| Encoding=UTF-8 |
| Type=Application |
| Name=ONOS GUI |
| Name[en_US]=ONOS GUI |
| Icon=internet-web-browser |
| Exec=/usr/bin/chromium-browser http://localhost:8181/onos/ui/index.html#topo |
| Comment[en_US]= |
| EOF |
| |
| cat > ${DESKTOP}/Wireshark << EOF |
| [Desktop Entry] |
| Encoding=UTF-8 |
| Type=Application |
| Name=Wireshark |
| Name[en_US]=Wireshark |
| Icon=wireshark |
| Exec=/usr/bin/wireshark |
| Comment[en_US]= |
| EOF |
| |
| cat > ${DESKTOP}/Reset << EOF |
| [Desktop Entry] |
| Encoding=UTF-8 |
| Type=Application |
| Name=Reset |
| Name[en_US]=Reset |
| Icon=konsole |
| Exec=/usr/bin/lxterminal -t 'Resetting; please wait' -e 'sudo service onos restart' |
| Comment[en_US]= |
| EOF |
| |
| # -------------- Setup LINC & dependencies --------------- |
| git clone https://github.com/FlowForwarding/LINC-config-generator.git |
| cd ~/LINC-config-generator |
| git checkout oe-0.4 |
| make |
| cd |
| |
| git clone https://github.com/FlowForwarding/LINC-Switch.git linc-oe |
| cd linc-oe |
| sed -i s/3000/300000/ vm.args |
| cp rel/files/sys.config.orig rel/files/sys.config |
| make rel |
| cd |