Fork me on GitHub

【树莓派】服务配置相关

由于工作实际需要,得给前线生产大量的盒子,涉及到里面的 用户、组、ssh-key、date、application、config.....等。

只好将其写成脚本,作为参考:

1.自动获取并配置网络IP地址:

#!/bin/sh

sIP=`sudo ifconfig eth1 | grep inet | awk 'NR==1{print $2}'| awk -F ':' '{print $2}'`
sBcast=`sudo ifconfig eth1 | grep inet | awk 'NR==1{print $3}'| awk -F ':' '{print $2}'`
sMask=`sudo ifconfig eth1 | grep inet | awk 'NR==1{print $4}'| awk -F ':' '{print $2}'`
sGWP=`sudo ifconfig eth1 | grep inet | awk 'NR==1{print $2}'| awk -F ':' '{print $2}' | cut -d . -f 1-3`
sDomain1="223.5.5.5"
sDomain2="223.6.6.6"
sDomain3="218.30.19.40"
sDomain4="61.134.1.4"

# sudo cp /etc/dhcpcd.conf /etc/dhcpcd.conf.default.bak
echo "IP="$sIP"\n"
echo "sBcast="$sBcast"\n"
echo "sMask="$sMask"\n"
echo "sMask="$sMask"\n"
echo "sMask="$sMask"\n"
echo "sDomain1="$sDomain1"\n"
echo "sDomain2="$sDomain2"\n"
echo "sDomain3="$sDomain3"\n"
echo "sDomain4="$sDomain4"\n"

sudo sed -i '$a interface eth1\n static ip_address='$sIP'/24\n static routers='$sGWP'.1\n #static domain_name_servers='$sDomain1' '$sDomain2'\n static domain_name_servers='$sDomain3' '$sDomain4'' /etc/dhcpcd.conf
# sudo sed -i '$a # static domain_name_servers='$sDomain3'' /etc/dhcpcd.conf
sudo sed -i '/interface eth1/i\\' /etc/dhcpcd.conf

# get info
sudo cat /proc/cpuinfo | grep Serial | awk '{print $3}' > a.txt
sudo ifconfig | grep HWaddr >> a.txt
sudo ifconfig | grep HWaddr | awk '{print $5}' >> a.txt

 

2.用户组相关配置:

#!/bin/sh

# 添加用户与组
sudo groupadd wingspan
sudo useradd -g wingspan -d /home/lifeccp -m lifeccp -p lifeccp
sudo cp /etc/sudoers /etc/sudoers.default.bak
sudo sed -i '21a lifeccp ALL=(ALL:ALL) ALL' /etc/sudoers
sudo passwd lifeccp
#sudo visudo

# 退出,使用lifeccp账户登录
ssh-keygen -t rsa
tar -cvf ssh.tar.gz .ssh
cat .ssh/id_rsa.pub
cat .ssh/id_rsa

# get info
sudo cat /proc/cpuinfo | grep Serial | awk '{print $3}' > a.txt
sudo ifconfig | grep HWaddr >> a.txt
sudo ifconfig | grep HWaddr | awk '{print $5}' >> a.txt

 

3.服务应用相关配置:

#!/bin/sh

mv webapp/ webapp.bak

cd /home/lifeccp
mkdir -p /home/lifeccp/dicom
sudo apt-get install chkconfig


kill -9 `ps aux | grep java |  awk '{print $2}'`
#sudo cp /home/lifeccp/webapp/scripts/osprey /etc/init.d/osprey
#sudo cp /home/lifeccp/webapp/scripts/pandion /etc/init.d/pandion

  sudo cp /home/lifeccp/webapp/pandion/serve /etc/init.d/pandion
  sudo cp /home/lifeccp/webapp/osprey/serve /etc/init.d/osprey


sudo chmod
+x /etc/init.d/osprey sudo chmod +x /etc/init.d/pandion sudo chmod +x /home/lifeccp/webapp/osprey/osprey* sudo chmod +x /home/lifeccp/webapp/pandion/pandion* sudo chkconfig --add osprey sudo chkconfig --add pandion sudo chkconfig --add nginx sudo chkconfig --level 2345 nginx on chmod +x /home/lifeccp/webapp/osprey/startup chmod +x /home/lifeccp/webapp/osprey/serve chmod +x /home/lifeccp/webapp/osprey/osprey-*.jar chmod +x /home/lifeccp/webapp/pandion/pandion chmod +x /home/lifeccp/webapp/pandion/pandion_serve chmod +x /home/lifeccp/webapp/pandion/pandion-*.jar chmod +x /home/lifeccp/webapp/scripts/osprey chmod +x /home/lifeccp/webapp/scripts/pandion #sudo sed -i '$a deb http://mirrors.ustc.edu.cn/raspbian/raspbian/ wheezy main contrib non-free rpi' /etc/apt/sources.list #sudo apt-get update sudo apt-get install nginx -y sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak sudo cp /home/lifeccp/webapp/nginx-conf/osprey.conf /etc/nginx/conf.d/osprey.conf sudo cp /home/lifeccp/webapp/nginx-conf/nginx.conf /etc/nginx/nginx.conf sudo sed -i '$d' /etc/rc.local sudo cp /etc/rc.local /etc/rc.local.default sudo sed -i '19a ntpd -s -d \n/etc/init.d/ntp restart' /etc/rc.local # sudo sed -i '19a ntpd -s -d \n/etc/init.d/ntp restart\n/etc/init.d/nginx restart' /etc/rc.local sudo sed -i '$a exit 0' /etc/rc.local sudo sed -i '$a Welcome!You can send Email to nianhuaiju@qq.com,If the computer malfunctions.' /etc/motd

# ubuntu env
# sudo sed -i '$a Welcome!You can send Email to nianhuaiju@qq.com,If the computer malfunctions.' /etc/issue
# 删除pi sudo userdel
-rf pi sudo groupdel pi # 改密码 sudo passwd lifeccp sudo reboot sudo shutdown -h now

 其他补充

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Welcome!You can send Email to nianhuaiju@qq.com,If the computer malfunctions.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.

 

4.修复与增补

(1)版本号修改采用软链接方式,如下:

#ln -s osprey-1.0.15.release.jar osprey.release.jar
ln -s /home/lifeccp/webapp/osprey/osprey-*.release.jar /home/lifeccp/webapp/osprey/osprey.release.jar

sed -i 8d /home/lifeccp/webapp/osprey/startup 

sed -i '8i MAIN_JAR=osprey.release.jar' /home/lifeccp/webapp/osprey/startup

 

(2)nginx增加stream,如下:

testenv:

# 修改hosts文件,末尾添加解析信息
sudo cp /etc/hosts /etc/hosts.bak
sudo sed -i '$a 101.201.197.212    test.lifeccp.com' /etc/hosts
# 首行增加stream sudo sed
-i '1i upstream ef.lifeccp.com { \n server 101.201.197.212:80 max_fails=2 fail_timeout=30s ; \n } ' /etc/nginx/conf.d/osprey.conf

 

prodenv:

# 修改hosts文件,末尾添加解析信息
sudo cp /etc/hosts /etc/hosts.bak
sudo sed -i '$a 59.110.47.149     ef.lifeccp.com' /etc/hosts

# 首行增加stream
sudo cp
/etc/nginx/conf.d/osprey.conf /etc/nginx/conf.d/osprey.conf.bak
sudo sed -i '1i upstream ef.lifeccp.com { \n server 59.110.47.149:80 max_fails=2 fail_timeout=30s ; \n } ' /etc/nginx/conf.d/osprey.conf

 

5.增加远程访问

sudo apt-get install xrdp -y

 

 

6.其他配置:

网络配置

sudo vi /etc/dhcpcd.conf

interface eth1
static ip_address=192.168.21.214/24
static routers=192.168.21.1
static domain_name_servers=223.5.5.5 223.6.6.6
static domain_name_servers=218.30.19.40 61.134.1.4

 

7.升级更新服务:

scp boxagent@smith.lifeccp.com:/home/boxagent/boxrelease/osprey/gateway-v1.0.19.release.zip .
scp boxagent@smith.lifeccp.com:/home/boxagent/boxrelease/pandion/pandion.zip .

UPDATE @ 2017-06-28

 

 补充部分路由相关配置:

# 查看当前路由
>route 
#删除默认网关
>sudo route del default  
#添加默认网关为外网网关。这里外网网关是外网IP对应的网关,例如外网IP为192.168.2.123, 则对应网关是192.168.2.1
>sudo route add default gw 外网网关  

 

待续...

 清除默认配置的IP信息

sudo sed -i '43,47d' /etc/dhcpcd.conf

 

 

 其他:http://www.cnblogs.com/haochuang/p/7071075.html

待补充,暂略

posted @ 2017-01-24 15:05  念槐聚  阅读(526)  评论(0编辑  收藏  举报

IT技术&应用开发&研究 - 创建于 2008年05月12日

这是一位IT工程师的个人站,内容主要是网站开发方面的技术文章,大部分来自学习或工作,部分来源于网络,希望对大家有所帮助。

致力于软件学习&研究工作,涉及Linux与软件开发出、测试、产品、行业相关知识,关注互联网前沿技术与与创业趋势等。


博客园 | Github | W3C

返回顶部