coffeesystem.sh 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  1. #!/bin/bash
  2. #Item1 Common Command
  3. step1_t1=$(date +"%S")
  4. sudo apt-get install dialog -y
  5. sudo apt-get install python3.8 -y
  6. sudo apt-get install python3-pip -y
  7. sudo pip3 install cryptography==3.3.2
  8. sudo -H pip3 install --upgrade pip
  9. sudo apt-get install grep -y
  10. sudo apt-get install git -y
  11. sudo pip3 install gitpython
  12. sudo apt-get install python3-tk -y
  13. sudo apt-get install wget -y
  14. sudo apt-get install python3-dev default-libmysqlclient-dev build-essential -y
  15. step1_t2=$(date +"%S")
  16. echo 'Item1 Common Command 安裝時間:' $((step1_t2-step1_t1)) '秒' >>/home/使用者/test.log
  17. #Item2 LAMP
  18. step2_t1=$(date +"%S")
  19. echo "start install LAMP"
  20. sudo apt-get install tasksel -y
  21. sudo DEBIAN_FRONTEND=noninteractive tasksel install lamp-server
  22. echo "install phpmyadmin"
  23. cd /tmp/;pwd;sudo wget https://files.phpmyadmin.net/phpMyAdmin/5.1.0/phpMyAdmin-5.1.0-all-languages.tar.gz -q;tar -zxvf phpMyAdmin-5.1.0-all-languages.tar.gz;sudo rm phpMyAdmin-5.1.0-all-languages.tar.gz;sudo mv phpMyAdmin-5.1.0-all-languages /var/www/html/phpmyadmin
  24. cd /var/www/html/phpmyadmin;pwd;mkdir tmp;
  25. cd;pwd;
  26. echo "install phpmyadmin done"
  27. sudo apt-get install openssl -y
  28. sudo apt-get install php-common -y
  29. sudo apt-get install php-curl -y
  30. sudo apt-get install php-json -y
  31. sudo apt-get install php-mbstring -y
  32. sudo apt-get install php-mysql -y
  33. sudo apt-get install php-xml -y
  34. sudo apt-get install php-zip -y
  35. #php version
  36. sudo apt-get install php7.2-mbstring -y
  37. sudo apt-get install php7.2-xml -y
  38. sudo apt-get install php7.2-mysql -y
  39. sudo apt-get install php7.2-common -y
  40. sudo apt-get install php7.2-curl -y
  41. sudo apt-get install php7.2-json -y
  42. sudo apt-get install php7.2-zip -y
  43. echo "open apache2 "
  44. sudo service apache2 start
  45. echo "setting mysql pass"
  46. sudo mysql -u root -e "ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Gold@53743001';"
  47. #user='root'
  48. #ip='localhost'
  49. #pwd='Gold@53743001'
  50. #sudo mysql -u root -e "ALTER USER $user@$ip IDENTIFIED WITH mysql_native_password BY $pwd;"
  51. step2_t2=$(date +"%S")
  52. echo 'Item2 LAMP 安裝時間:' $((step2_t2-step2_t1)) '秒' >>/home/使用者/test.log
  53. echo "setting mysql done"
  54. #Item3 MQTT
  55. # install&setting mqtt server
  56. step3_t1=$(date +"%S")
  57. sudo -H pip3 install paho-mqtt
  58. sudo apt-get install mosquitto -y
  59. sudo systemctl start mosquitto
  60. sudo ufw allow 1883/tcp
  61. sudo ufw allow 8080/tcp
  62. # get mqtt server file mosquitto.conf
  63. # get mqtt server file passwd.conf
  64. cd /home/使用者;pwd;sudo git clone -b mosquitto --single-branch http://60.250.156.230:3000/fatwolf/mqtt_server_setting.git /home/使用者/mosquitto/;sudo git clone -b passwd --single-branch http://60.250.156.230:3000/fatwolf/mqtt_server_setting.git /home/使用者/passwd/;sudo mv /home/使用者/mosquitto/mosquitto.conf /etc/mosquitto/;sudo mv /home/使用者/passwd/passwd /etc/mosquitto/;sudo rm -rf /home/使用者/mosquitto/;sudo rm -rf /home/使用者/passwd/;pwd
  65. sudo systemctl restart mosquitto
  66. step3_t2=$(date +"%S")
  67. echo 'Item3 MQTT 安裝時間:' $((step3_t2-step3_t1)) '秒' >>/home/使用者/test.log
  68. echo "mqtt server file done"
  69. # install&setting mqtt client
  70. # to be confirm packegs
  71. #cd /usr/sbin/
  72. # get mqtt client file aisky.mqttd
  73. #git clone http://60.250.156.230:3000/fatwolf/mqtt_server_setting.git
  74. #Item4 Watchdog
  75. # get watchdog file proc-wdtd.conf
  76. # get watchdog file proc-wdtd
  77. # get watchdog file rc.local
  78. step4_t1=$(date +"%S")
  79. cd /home/使用者;pwd;sudo git clone -b procwdtdconf --single-branch http://60.250.156.230:3000/fatwolf/proc.git /home/使用者/procwdtdconf/;sudo git clone -b procwdtd --single-branch http://60.250.156.230:3000/fatwolf/proc.git /home/使用者/procwdtd/;sudo git clone -b rclocal --single-branch http://60.250.156.230:3000/fatwolf/proc.git /home/使用者/rclocal/;sudo mv /home/使用者/procwdtdconf/proc-wdtd.conf /etc/;sudo mv /home/使用者/procwdtd/proc-wdtd /usr/sbin/;sudo mv /home/使用者/rclocal/rc.local /etc/;sudo rm -rf /home/使用者/procwdtdconf/;sudo rm -rf /home/使用者/procwdtd/;sudo rm -rf /home/使用者/rclocal/
  80. sudo chmod +x /usr/sbin/proc-wdtd
  81. sudo chmod +x /etc/rc.local
  82. sudo systemctl restart rc-local.service
  83. step4_t2=$(date +"%S")
  84. echo 'Item4 Watchdog 安裝時間:' $((step4_t2-step4_t1)) '秒' >>/home/使用者/test.log
  85. echo "watchdog file done"
  86. #Item5 Git Server
  87. step5_t1=$(date +"%S")
  88. sudo apt-get install golang -y
  89. cd /home/使用者;pwd;git clone http://60.250.156.230:3000/fatwolf/gogsfile.git /home/使用者/gogs;sudo mv /home/使用者/gogs/gogs_0.12.3_linux_amd64.tar.gz /home/使用者/;sudo rm -rf /home/使用者/gogs/;tar -C /home/使用者 -zxvf gogs_0.12.3_linux_amd64.tar.gz
  90. step5_t2=$(date +"%S")
  91. echo 'Item5 Git Server 安裝時間:' $((step5_t2-step5_t1)) '秒' >>/home/使用者/test.log
  92. echo "Git Server done"
  93. # ./gogs web
  94. #Item6 Python packegs Library
  95. step6_t1=$(date +"%S")
  96. cd /home/使用者;pwd;git clone -b package --single-branch http://60.250.156.230:3000/Automatic_build_system/Automatically_install_files.git;cd Automatically_install_files/;pwd;sudo pip3 install -r requirements.txt
  97. step6_t2=$(date +"%S")
  98. echo 'Item6 Python packegs Library 安裝時間:' $((step6_t2-step6_t1)) '秒' >>/home/使用者/test.log
  99. #Item7 AP(WebPage)
  100. step7_t1=$(date +"%S")
  101. cd /home/使用者;pwd;sudo git clone http://60.250.156.230:3000/rita/CoffeeProject.git /home/使用者/CoffeeProject/
  102. username=使用者;sudo echo 'coffee_manage.py = "sudo python3 /home/'$username'/CoffeeProject/coffee_manage.py"'>>/etc/proc-wdtd
  103. step7_t2=$(date +"%S")
  104. echo 'Item7 AP(WebPage) 安裝時間:' $((step7_t2-step7_t1)) '秒' >>/home/使用者/test.log
  105. echo "AP done"
  106. #Item8 ROS ubuntu 18.04 melodic
  107. #ROS It should be install in user not install in root
  108. #install
  109. step8_t1=$(date +"%S")
  110. sudo apt-get install -y chrony ntpdate
  111. sudo ntpdate -q ntp.ubuntu.com
  112. #var="deb http://packages.ros.org/ros/ubuntu \$(lsb_release -sc) main"
  113. sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
  114. #sudo sh -c "echo $var > /etc/apt/sources.list.d/ros-latest.list"
  115. sudo apt-key adv --keyserver "hkp://keyserver.ubuntu.com:80" --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
  116. echo "deb ros packages and keyserver"
  117. sudo apt-get update -y
  118. #sudo apt-get upgrade -y
  119. sudo apt install ros-melodic-desktop-full -y
  120. sudo apt-get install ros-melodic-rqt* -y
  121. sudo apt-get install python-rosdep -y
  122. sudo rosdep init
  123. rosdep update
  124. sudo apt-get install python-rosinstall -y
  125. sudo apt-get install python-rosinstall-generator -y
  126. sudo apt-get install python-wstool -y
  127. #setup
  128. source /opt/ros/melodic/setup.bash
  129. echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
  130. source ~/.bashrc
  131. #Create Ros Workspace
  132. cd /home/使用者;pwd;mkdir -p ~/catkin_ws/src;pwd;cd /home/使用者/catkin_ws/;pwd;catkin_make
  133. #Setup
  134. source /home/使用者/catkin_ws/devel/setup.bash
  135. echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
  136. source ~/.bashrc
  137. # need user name
  138. echo $ROS_PACKAGE_PATH /home/使用者/catkin_ws/src:/opt/ros/melodic/share
  139. source ~/.bashrc
  140. printenv | grep ROS
  141. step8_t2=$(date +"%S")
  142. echo 'Item8 ROS ubuntu 18.04 melodic 安裝時間:' $((step8_t2-step8_t1)) '秒' >>/home/使用者/test.log
  143. echo "ROS done"