插件窝 干货文章 配置Linux系统以支持边缘智能和智慧城市开发

配置Linux系统以支持边缘智能和智慧城市开发

sudo 安装 install Mosquitto 1016    来源:    2025-04-16

Linux系统配置指南:边缘智能与智慧城市开发

1. 系统选择与基础配置

推荐Linux发行版

  • Ubuntu Server LTS (20.04/22.04):长期支持,社区资源丰富
  • Debian:稳定性高,适合生产环境
  • Fedora IoT:专为物联网优化的版本

基础配置建议

# 更新系统
sudo apt update && sudo apt upgrade -y

# 安装基础开发工具
sudo apt install -y build-essential git curl wget

# 设置时区(亚洲/上海)
sudo timedatectl set-timezone Asia/Shanghai

# 启用自动安全更新
sudo apt install -y unattended-upgrades
sudo dpkg-reconfigure -plow unattended-upgrades

2. 边缘计算环境配置

容器化支持

# 安装Docker
sudo apt install -y docker.io
sudo systemctl enable --now docker

# 安装Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

# 安装Kubernetes (可选)
sudo apt install -y kubeadm kubelet kubectl

边缘AI框架

# 安装TensorFlow Lite
pip install tflite-runtime

# 安装ONNX Runtime
pip install onnxruntime

# 安装PyTorch Mobile (根据硬件选择合适版本)
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cpu

3. 物联网协议栈配置

MQTT Broker (Mosquitto)

sudo apt install -y mosquitto mosquitto-clients
sudo systemctl enable --now mosquitto

# 配置示例 (编辑/etc/mosquitto/mosquitto.conf)
listener 1883
allow_anonymous true

CoAP支持

# 安装CoAP服务器
sudo apt install -y libcoap2-bin

OPC UA服务器 (可选)

docker run -it -p 4840:4840 --name opcua open62541/open62541

4. 数据处理与分析工具

时序数据库

# 安装InfluxDB
wget -qO- https://repos.influxdata.com/influxdb.key | sudo apt-key add -
echo "deb https://repos.influxdata.com/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
sudo apt update && sudo apt install -y influxdb
sudo systemctl enable --now influxdb

# 安装Grafana (可视化)
sudo apt install -y grafana
sudo systemctl enable --now grafana-server

流处理框架

# 安装Apache Kafka
wget https://downloads.apache.org/kafka/3.3.1/kafka_2.13-3.3.1.tgz
tar -xzf kafka_2.13-3.3.1.tgz
cd kafka_2.13-3.3.1

# 启动Zookeeper和Kafka服务
bin/zookeeper-server-start.sh config/zookeeper.properties &
bin/kafka-server-start.sh config/server.properties &

5. 安全配置

基础安全加固

# 安装防火墙
sudo apt install -y ufw
sudo ufw enable
sudo ufw allow ssh
sudo ufw allow 1883  # MQTT
sudo ufw allow 5683  # CoAP

# 安装fail2ban防暴力破解
sudo apt install -y fail2ban
sudo systemctl enable --now fail2ban

加密通信

# 为MQTT配置TLS (示例)
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/mosquitto/certs/mosquitto.key -out /etc/mosquitto/certs/mosquitto.crt

# 然后在mosquitto.conf中添加:
listener 8883
certfile /etc/mosquitto/certs/mosquitto.crt
keyfile /etc/mosquitto/certs/mosquitto.key

6. 边缘设备管理

远程管理工具

# 安装Ansible
sudo apt install -y ansible

# 安装Balena (边缘设备管理平台)
curl -sfL https://balena.io/install.sh | sudo sh

设备监控

# 安装Prometheus
wget https://github.com/prometheus/prometheus/releases/download/v2.37.0/prometheus-2.37.0.linux-amd64.tar.gz
tar xvfz prometheus-*.tar.gz
cd prometheus-*

# 配置并启动
./prometheus --config.file=prometheus.yml &

7. 智慧城市开发工具

地理信息系统(GIS)支持

# 安装PostgreSQL with PostGIS
sudo apt install -y postgresql postgresql-contrib postgis

# 安装GDAL (地理数据处理库)
sudo apt install -y gdal-bin python3-gdal

城市数字孪生工具

# 安装Three.js (WebGL框架)
npm install three

# 安装CesiumJS (地理可视化)
npm install cesium

8. 性能优化

实时内核 (可选)

# Ubuntu安装实时内核
sudo apt install -y linux-image-rt linux-headers-rt

资源限制配置

# 编辑/etc/security/limits.conf添加:
* soft nofile 65535
* hard nofile 65535
* soft nproc 65535
* hard nproc 65535

9. 开发环境建议

Python环境

# 安装Miniconda
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh

# 创建专用环境
conda create -n edgeai python=3.9
conda activate edgeai
pip install numpy pandas scikit-learn matplotlib

边缘AI开发工具包

# 安装Edge Impulse CLI
npm install -g edge-impulse-cli

# 安装OpenVINO工具包
wget https://apt.repos.intel.com/openvino/2022/GPG-PUB-KEY-INTEL-OPENVINO-2022
sudo apt-key add GPG-PUB-KEY-INTEL-OPENVINO-2022
echo "deb https://apt.repos.intel.com/openvino/2022 all main" | sudo tee /etc/apt/sources.list.d/intel-openvino-2022.list
sudo apt update
sudo apt install -y openvino

10. 持续集成/持续部署(CI/CD)

GitHub Actions Runner (自托管)

mkdir actions-runner && cd actions-runner
curl -o actions-runner-linux-x64-2.303.0.tar.gz -L https://github.com/actions/runner/releases/download/v2.303.0/actions-runner-linux-x64-2.303.0.tar.gz
tar xzf ./actions-runner-linux-x64-2.303.0.tar.gz
./config.sh --url https://github.com/your-repo --token your-token
./run.sh

Jenkins 安装

wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
sudo sh -c 'echo deb https://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt update
sudo apt install -y jenkins
sudo systemctl enable --now jenkins

以上配置为边缘智能和智慧城市开发提供了全面的Linux环境支持。根据具体项目需求,可以进一步定制和扩展这些配置。建议在部署到生产环境前进行充分测试,并根据实际硬件条件调整参数。