安装记录

  1. 下载CentOS-6.7-x86_64-netinstall.iso,默认安装,时区设置为Asia/Shanghai
  2. 禁止selinux
    运行vi /etc/sysconfig/selinux


SELINUX=enforcing
修改为
SELINUX=disabled

  1. 更新系统
    运行 yum update
  2. 安装需要的软件包
    运行:

yum install httpd php php-mysql mysql-server git screen gcc mysql-devel telnet ntpdate

http://he.fi/aprsc/INSTALLING.html
curl -o /etc/yum.repos.d/aprsc.repo http://he.fi/aprsc/down/aprsc-centos.repo
yum install aprsc

  1. 修改包过滤防火墙配置文件
    运行 vi /etc/sysconfig/iptables 修改以下内容(注意下面22端口的是允许远程登录的IP,请根据自己情况修改)

-A INPUT -m tcp -p tcp --dport 22 -j ACCEPT -s
-A INPUT -m tcp -p tcp --dport 22 -j ACCEPT -s
-A INPUT -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m tcp -p tcp --dport 14501 -j ACCEPT
-A INPUT -m tcp -p tcp --dport 14580 -j ACCEPT
-A INPUT -m udp -p udp --dport 14580 -j ACCEPT

  1. 修改aprsc配置文件
  2. /etc/sysconfig/aprsc

STARTAPRSC="yes"

vi /opt/aprsc/etc/aprsc.conf
修改ServerID,管理员mail
下面两行前加#注释:

Listen "UDP submit"

MagicBadness 42.7

  1. 下载源码、编译
  2. /usr/src

git clone https://github.com/bg6cq/aprs

cd /usr/src/aprs
make

  1. 修改web文件
  2. /var/www/

mv html html.old
ln -s /usr/src/aprs/web html

  1. 启动数据库,创建表
  2. /etc/my.cnf

在[mysqld]下添加
default-character-set=utf8

增加
[client]
default-character-set=utf8

保存

运行service mysqld start
执行mysql 输入以下命令
create database aprs;
use aprs;
CREATE TABLE aprspacket (
tm timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
call varchar(16) NOT NULL,
datatype char(1) NOT NULL,
lat char(11) NOT NULL,
lon char(12) NOT NULL,
table char(1) NOT NULL,
symbol char(1) NOT NULL,
msg varchar(200) NOT NULL,
raw varchar(250) NOT NULL,
KEY tm (tm),
KEY tm_call (tm,call),
KEY call_tm (call,tm)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

CREATE TABLE posaprspacket (
tm timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
call varchar(16) NOT NULL,
datatype char(1) NOT NULL,
lat char(11) NOT NULL,
lon char(12) NOT NULL,
table char(1) NOT NULL,
symbol char(1) NOT NULL,
msg varchar(200) NOT NULL,
KEY tm (tm),
KEY tm_call (tm,call),
KEY call_tm (call,tm)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

CREATE TABLE lastpacket (
call varchar(16) NOT NULL,
tm timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
datatype char(1) NOT NULL,
lat char(11) NOT NULL,
lon char(12) NOT NULL,
table char(1) NOT NULL,
symbol char(1) NOT NULL,
msg varchar(200) NOT NULL,
path varchar(200) default "",
PRIMARY KEY (call)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

CREATE TABLE packetstats (
day date NOT NULL DEFAULT '0000-00-00',
packets int(10) DEFAULT NULL,
PRIMARY KEY (day)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

CREATE TABLE aprspackethourcount (
tm timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
call varchar(16) NOT NULL,
pkts int(10) DEFAULT NULL,
PRIMARY KEY (tm,call)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

CREATE TABLE color (
rgb char(6) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
INSERT INTO color VALUES ('FF0000'),('0000FF'),('FF00FF'),('FF6666'),('CC66CC'),('FFFF00'),('66ffff'),('00ff00'),('6495ED'),('BDB76B'),('00CED1'),('ADFF2F'),('20B2AA'),('00FA9A'),('808000'),('9ACD32');

  1. 设置开机启动
    执行

chkconfig mysqld on
chkconfig httpd on
chkconfig aprsc on

vi /etc/rc.local
增加
/usr/src/aprs/udptomysql
/usr/src/aprs/local.toudp 127.0.0.1 BG6CQ

(上面的BG6CQ可以用自己的呼号,是登录127.0.0.1 14580取数据的)

  1. 设置服务器自动对时
    执行crontab -e

0 /usr/sbin/ntpdate 192.168.0.210 >/dev/null 2>/dev/null
请根据实际情况修改ntp服务器ip

  1. 重启
  2. 重启

使用
启动后
http://x.x.x.x:14501/可以看到aprsc状态
http://x.x.x.x/可以看到地图
tcp 14580可以接收标准aprs客户端连接

注:
各程序功能:

  1. aprsc aprs服务端
  2. udptomysql 从UDP接收数据包,存到mysql数据库
  3. local.toudp 连接到127.0.0.1:14580,获取呼号数据发给udptomysql
Last modification:March 9, 2020
如果觉得我的文章对你有用,请随意赞赏