LAMP源码编译安装——CentOS7
文章目录
- LAMP是什么
- LAMP软件组件
- Linux
- Apache
- MySQL
- PHP
- 源码安装Apache
- 一、准备工作
- 二、安装环境依赖包
- 三、配置软件模块
- 四、编译及安装
- 五、优化配置文件路径
- 六、添加httpd系统服务(有两种方法)
- 方法一:
- 方法二:
- 七、修改httpd 服务配置文件
- 八、浏览器访问验证
- 源码安装mysql
- 一、准备工作
- 二、安装环境依赖包
- 三、配置软件模块
- 四、编译及安装
- 五、修改mysql 配置文件
- 六、优化mysql
- 七、初始化数据库
- 八、启动mysql
- 源码安装php
- 一、准备工作
- 二、安装环境依赖包
- 三、配置软件模块
- 四、编译与安装
- 五、优化PHP
- 六、修改httpd 服务的配置文件
- 七、验证PHP测试页
LAMP是什么

LAMP(Linux、Apache、MySQL、Perl / PHP / Python)是Web上最流行的应用程序最常用的软件堆栈之一的首字母缩写词。其通用软件堆栈模型具有大量可互换的组件。
该首字母缩略词中的每个字母代表其四个开源基石之一:
- Linux操作系统
- HTTP服务器
- 关系数据库管理系统:MySQL
- 编程语言:Perl、 PHP或Python
LAMP 堆栈的组件存在于大多数Linux 发行版的软件存储库中。
LAMP软件组件
Linux
Linux 是一种类 Unix计算机操作系统,采用自由开源软件开发和分发模式组装而成。大多数Linux 发行版都是基于Linux 内核并通常基于包管理系统的软件集合,通过其软件包提供完整的 LAMP 设置。
Apache
LAMP 的 Web 服务器角色传统上由 Apache 提供,后来还包括其他 Web 服务器,例如Nginx。
Apache是根据Apache 许可证发布的开源软件。它支持各种各样的功能,其中许多功能都是作为编译 模块实现的,这些模块扩展了 Apache 的核心功能。这些功能包括服务器端编程语言支持和身份验证。
MySQL
MySQL 最初作为 LAMP 的关系数据库管理系统,后来被其他系统交替使用,例如PostgreSQL、MariaDB(由 MySQL 的原始开发人员开发的社区开发的分支)甚至MongoDB等NoSQL数据库。
PHP
PHP 是一种服务器端脚本语言,专为Web开发而设计,但也可用作通用编程语言。 Web 服务器通过 PHP 处理器模块解释PHP 代码,并生成结果网页。 PHP 命令可以选择直接嵌入到HTML源文档中,而不必调用外部文件来处理数据。 它还发展到包含命令行界面功能,可用于独立的图形应用程序。 PHP 是根据PHP 许可证条款发布的免费软件,由于 PHP 许可证对术语PHP的使用有所限制,因此与GNU 通用公共许可证(GPL)不兼容。
源码安装Apache
一、准备工作
- 将安装Apache所需软件包传到/opt/apache目录下并解压
systemctl disable firewalld --now
setenforce 0
vim /etc/selinux/config SELINUX=0cd /opt
mkdir apache
tar xf apr-1.6.2.tar.gz
tar xf apr-util-1.6.0.tar.gz
tar xf httpd-2.4.29.tar.bz2




使用xftp上传Apache所需软件包
二、安装环境依赖包
命令
yum -y install gcc gcc-c++ make pcre pcre-devel expat-devel perl
解析
yum -y install \
gcc \ #C语言的编译器
gcc-c++ \ #C++的编译器
make \ #源代码编译器(源代码转换成二进制文件)
pcre \ #pcre是一个Perl函数库,包括perl 兼容的正则表达式库
pcre-devel \ #perl的接口开发包
expat-devel \ #用于支持网站解析HTML、XML文件
perl #perl语言编译器

三、配置软件模块
mv apr-1.6.2 httpd-2.4.29/srclib/aprmv apr-util-1.6.0 httpd-2.4.29/srclib/apr-utilcd httpd-2.4.29/./configure \
--prefix=/usr/local/httpd \
--enable-so \
--enable-rewrite \
--enable-charset-lite \
--enable-cgi


四、编译及安装
make -j 3 #表示开3核同时进行编译make install


五、优化配置文件路径
把httpd服务的可执行程序文件放入路径环境变量的目录中便于系统识别
ln -s /usr/local/httpd/conf/httpd.conf /etc/ln -s /usr/local/httpd/bin/* /usr/local/bin/

六、添加httpd系统服务(有两种方法)
方法一:
```bash
cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd #用于service服务管理
chmod +x /etc/init.d/httpd
vi /etc/init.d/httpd#!/bin/bash #在第一行前插入新行,添加此三行内容# chkconfig: 35 85 21 #35级别自动运行 第85个启动 第21个关闭# description: Apache is a World Wide Web serverchkconfig --add httpd #将httpd服务加入到service管理器systemctl start httpd.service
```



方法二:
```bash
vim /usr/lib/systemd/system/httpd.service[Unit] #服务的说明Description=The Apache HTTP Server #描述服务After=network.target #依赖,当依赖的服务启动之后再启动自定义的服务[Service] #服务运行参数的设置Type=forking #后台运行方式PIDFile=/usr/local/httpd/logs/httpd.pid #PID文件位置ExecStart=/usr/local/bin/apachectl $OPTIONS #服务的运行命令ExecReload=/bin/kill -HUP $MAINPID #根据PID重载配置[Install] #服务安装的相关设置WantedBy=multi-user.target #设置为多用户systemctl start httpd.service
systemctl enable httpd.service```
七、修改httpd 服务配置文件
vim /etc/httpd.conf#--52行--修改Listen 192.198.80.10:80 #<serverIP>:80#--197行--取消注释,修改ServerName www.wl.com:80 #自定义域名#可以不修改#--221行--默认首页存放路径DocumentRoot "/usr/local/httpd/htdocs"#--255行--默认首页文件名设置DirectoryIndex index.html
httpd -t 或 apachectl -t #检查配置文件的配置项是否有误cat /usr/local/httpd/htdocs/index.htmlsystemctl restart httpd.service



八、浏览器访问验证
netstat -anpt | grep 80
echo "10.190.33.40 www.wl.com" >> /etc/hosts


源码安装mysql
一、准备工作
将安装mysql 所需软件包传到/opt目录下并解压,卸载mariadb
cd /opt
mkdir mysql
cd mysql
tar xf mysql-boost-5.7.44.tar.gz
yum remove -y mariadb* #卸载mariadb相关内容



二、安装环境依赖包
yum -y install \
gcc \
gcc-c++ \
ncurses \ #字符终端下图形互动功能的动态库
ncurses-devel \ #ncurses开发包
bison \ #语法分析器
cmake #mysql需要用cmake编译安装

三、配置软件模块
cd mysql-5.7.44/cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #指定mysql的安装路径
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ #指定mysql进程监听套接字文件(数据库连接文件)的存储路径
-DSYSCONFDIR=/etc \ #指定配置文件的存储路径
-DSYSTEMD_PID_DIR=/usr/local/mysql \ #指定进程文件的存储路径
-DDEFAULT_CHARSET=utf8 \ #指定默认使用的字符集编码,如 utf8
-DDEFAULT_COLLATION=utf8_general_ci \ #指定默认使用的字符集校对规则
-DWITH_EXTRA_CHARSETS=all \ #指定支持其他字符集编码
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ #安装INNOBASE存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \ #安装ARCHIVE存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ #安装BLACKHOLE存储引擎
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \ #安装FEDERATED存储引擎
-DMYSQL_DATADIR=/usr/local/mysql/data \ #指定数据库文件的存储路径
-DWITH_BOOST=/usr/local/boost \ #指定boost的路径,若使用mysql-boost集成包安装则-DWITH_BOOST=boost
-DWITH_SYSTEMD=1 #生成便于systemctl管理的文件
如果在CMAKE的过程中有报错,当报错解决后,需要把源码目录中的CMakeCache.txt文件删除,然后再重新CMAKE,否则错误依旧

四、编译及安装
make -j 3 && make install
时间较长,请耐心等待

五、修改mysql 配置文件
useradd -M -s /sbin/nologin mysql #创建mysql用户
vim /etc/my.cnf #删除原配置项,再重新添加下面内容[client] #客户端设置port = 3306socket = /usr/local/mysql/mysql.sock #开启自动补全功能[mysqld] #服务全局设置user = mysql #设置管理用户basedir=/usr/local/mysql #指定数据库的安装目录datadir=/usr/local/mysql/data #指定数据库文件的存储路径port = 3306 #指定端口character-set-server=utf8 #设置服务器字符集编码格式为utf8pid-file = /usr/local/mysql/mysqld.pid #指定pid 进程文件路径socket=/usr/local/mysql/mysql.sock #指定数据库连接文件bind-address = 0.0.0.0 #设置监听地址,0.0.0.0代表允许所有,如允许多个IP需空格隔开skip-name-resolve #禁止域名解析,包括主机名,所以授权的时候要使用 IP 地址max_connections=4096 #设置mysql的最大连接数default-storage-engine=INNODB #指定默认存储引擎max_allowed_packet=32M #设置在网络传输中一次消息传输量的最大值。系统默认值为 1MB,最大值是 1GB,必须设置 1024 的倍数。server-id = 1 #指定服务ID号sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES


六、优化mysql
更改mysql安装目录和配置文件的属主属组
chown -R mysql:mysql /usr/local/mysql/chown mysql:mysql /etc/my.cnf

设置路径环境变量
echo 'export PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile
source /etc/profile

七、初始化数据库
cd /usr/local/mysql/bin/./mysqld \
--initialize-insecure \ #生成初始化密码为空
--user=mysql \ #指定管理用户
--basedir=/usr/local/mysql \ #指定数据库的安装目录
--datadir=/usr/local/mysql/data #指定数据库文件的存储路径

八、启动mysql
添加mysqld系统服务
cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/ #用于systemctl服务管理
systemctl daemon-reload #刷新识别
systemctl start mysqld.service #开启服务
systemctl enable mysqld #开机自启动
netstat -anpt | grep 3306 #查看端口

修改mysql 的登录密码
mysqladmin -u root password "abc123" #给root账号设置密码为abc123,原始密码为空

授权远程登录
mysql -u root -p
grant all privileges on *.* to 'root'@'%' identified by 'abc123';
#授予root用户可以在所有终端远程登录,使用的密码是abc123,并对所有数据库和所有表有操作权限show databases; #查看当前已有的数据库

源码安装php
一、准备工作
cd /opt/
mkdir php
cd php
tar xf php-7.1.10.tar.bz2



二、安装环境依赖包
yum -y install \
gd \
libjpeg libjpeg-devel \
libpng libpng-devel \
freetype freetype-devel \
libxml2 libxml2-devel \
zlib zlib-devel \
curl curl-devel \
openssl openssl-devel

三、配置软件模块
cd php-7.1.10/./configure \
--prefix=/usr/local/php \ #指定将 PHP 程序的安装路径
--with-apxs2=/usr/local/httpd/bin/apxs \ #指定Apache httpd服务提供的apxs 模块支持程序的文件位置
--with-mysql-sock=/usr/local/mysql/mysql.sock \ #指定mysql 数据库连接文件的存储路径
--with-config-file-path=/usr/local/php/lib #设置 PHP 的配置文件 php.ini 将要存放的位置
--with-mysqli \ #添加 MySQL 扩展支持,mysqli扩展技术不仅可以调用MySQL的存储过程、处理MySQL事务,而且还可以使访问数据库工作变得更加稳定
--with-zlib \ #支持zlib功能,提供数据压缩
--with-curl \ #开启curl扩展功能,实现HTTP的Get下载和Post请求的方法
--with-gd \ #激活gd 库的支持
--with-jpeg-dir \ #激活jpeg 的支持
--with-png-dir \ #激活png 的支持
--with-freetype-dir \
--with-openssl \
--enable-mbstring \ #启用多字节字符串功能,以便支持中文等代码
--enable-xml \ #开启扩展性标记语言模块
--enable-session \ #会话
--enable-ftp \ #文本传输协议
--enable-pdo \ #函数库
--enable-tokenizer \ #令牌解释器
--enable-zip #ZIP压缩格式

四、编译与安装
make -j 3&& make install

五、优化PHP
优化把PHP 的可执行程序文件放入路径环境变量的目录中便于系统识别
ln -s /usr/local/php/bin/* /usr/local/bin/
php -m #查看PHP 加载了哪些模块

复制模版文件作为PHP 的主配置文件,并进行修改
php --ini
cp php.ini-development /usr/local/php/lib/php.ini
#在测试环境时使用php.ini-development文件,而在生产环境时使用php.ini-production文件
vim /usr/local/php/lib/php.ini#--1170行--修改mysqli.default_socket = /usr/local/mysql/mysql.sock#--939行--取消注释,修改date.timezone = Asia/Shanghai



六、修改httpd 服务的配置文件
vim /etc/httpd.conf
#--395行--插入以下内容
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
#--259行--修改首页文件名设置
DirectoryIndex index.html index.php#---检查支持php7的模块是否存在------
#使用反斜杠搜索
LoadModule php7_module modules/libphp7.so




七、验证PHP测试页
rm -rf /usr/local/httpd/htdocs/index.html
vim /usr/local/httpd/htdocs/index.php
<?php
phpinfo();
?>systemctl restart httpd.service



相关文章:
LAMP源码编译安装——CentOS7
文章目录 LAMP是什么LAMP软件组件LinuxApacheMySQLPHP 源码安装Apache一、准备工作二、安装环境依赖包三、配置软件模块四、编译及安装五、优化配置文件路径六、添加httpd系统服务(有两种方法)方法一:方法二: 七、修改httpd 服务配…...
oracle 还原被覆盖的视图
1.现在的视图 select to_lob(text) from SYS.DBA_views where view_nameXXX; 2.查旧数据 --as of timestamp to_date(2024-05-28 10:30:00,yyyy-mm-dd hh24:mi:ss) select to_lob(text) from SYS.DBA_views as of timestamp to_date(2024-05-28 10:30:00,yyyy-mm-dd hh24:mi:s…...
go语言同一包中的同一变量实现不同平台设置不同的默认值 //go:build 编译语法使用示例
在使用go来开发跨平台应用的时候,比如配置文件的路径,我们希望设置一个默认值,windows下的路径是类似 d:\myapp\app.conf 这样的, unix系统中的路径是 /opt/myapp/app.conf 这样的, 而我们在使用的时候需要使用的是同…...
校园周边美食探索及分享平台,基于 SpringBoot+Vue+MySQL 开发的前后端分离的校园周边美食探索及分享平台设计实现
目录 一. 前言 二. 功能模块 2.1. 前台首页功能模块 2.2. 用户功能模块 2.3. 管理员功能模块 三. 部分代码实现 四. 源码下载 一. 前言 美食一直是与人们日常生活息息相关的产业。传统的电话订餐或者到店消费已经不能适应市场发展的需求。随着网络的迅速崛起࿰…...
Discourse 编辑没有办法显示更多的 JS 错误
Priority/Severity: High Platform: 3.3.0.beta3-dev UI bugs Description: 昨天升级的时到最新版本的时候就发现有这个错误,是 JS 的错误。 发了一个帖子到官方的网站上,官方说可能是插件的问题。 但是我们实在是没有安装什么插件呀? 官方…...
CSS实现一个雨滴滑落效果
使用纯CSS来实现一个真实的雨滴滑落效果可能会有些挑战,因为CSS主要关注于静态样式和简单的动画效果。然而,你可以使用CSS动画和keyframes来模拟一个雨滴滑落的简化效果。 以下是一个基本的示例,展示如何使用CSS来模拟雨滴从顶部滑落到底部的…...
vue2+echarts地图下钻+地图遮盖物散点
一、下载工具 npm i echarts echarts-gl axios -S -S是生产依赖默认是-S不写也可以 -D是开发依赖 二、引入工具 import * as echarts from "echarts"; import "echarts-gl"; import axios from "axios"; 三、HTML部分代码 <div class&…...
关于C++的特殊类定制
特殊类定制 在C中,一些特殊性质的类如何设计 类禁止拷贝的对象 C11 使用delete关键字赋值给拷贝构造和赋值C98将拷贝构造和赋值声明在私有里 类只能在堆上创建的对象 将构造函数私有化, 提供一个获取对象堆上创建对象的公有函数将析构函数私有化, 提供一个释放…...
Linux备份脚本
作用 Linux文件备份的作用较多,推荐以下几种: 保护文件:备份可以帮助用户保护文件,防止文件被意外删除或损坏。保证系统安全和应用安全:Linux系统管理人员对系统和业务应用要有一个合理的备份恢复策略,完…...
【Unity】实现轮盘抽奖
简介 示例一:使用协程完成轮盘转动 using System; using System.Collections; using System.Collections.Generic; using UnityEngine;public class Lunpan : MonoBehaviour {[Tooltip("轮盘节点")]public Transform Roulette;[Tooltip("轮盘旋转的…...
面下对象之overload与override
简介 在面向对象编程中,重载(overloading)和重写(overriding)是两个不同的概念。 重载(Overloading)的定义 重载是同一个类中定义多个同名方法,但是这些方法具有不同的参数列表(参数个数、参数类型或参数顺序不同)。 当调用这个方法时,编译器会根据实际传入的参数自动选择对…...
大数据之Hive函数大全
🔧 Hive函数大全 更多大数据学习资料请关注公众号“大数据领航员"免费领取 一、数学函数 1、取整函数: round 1.函数描述 返回值语法结构功能描述doubleround(double a)返回double类型的整数值部分(遵循四舍五入) 2.例程 hive>…...
宝塔下应该用 Memcached 还是 Redis?
明月最近在跟几个使用宝塔面板的客户运维的时候发现不少站长不知道如何选择 Memcached 和 Redis,甚至都说不清楚 Memcached 或者 Redis 具体是用来干啥的?甚至还碰到过一个站长 Memcached 和 Redis 都安装了,但一个都没有用,就那么…...
恢复视频3个攻略:从不同情况下的恢复方法到实践!
随着科技的进步,我们的生活被各种各样的数字内容所包围,其中,视频因其独特的记录性质,承载着许多重要的资料。但不管是自媒体人还是普通人日常生活随手一拍,都会遇到误删视频的情况。为了帮助您找回手机视频࿰…...
从git上拉取项目进行操作
1.Git的概念 Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。它实现多人协作的机制是利用clone命令将项目从远程库拉取到本地库,做完相应的操作后再利用push命令从本地库将项目提交至远程库。 2.Git的工作流程…...
ES升级--01--环境准备和安装
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 Linux 单机1.官网下载 Elasticsearchhttps://www.elastic.co/cn/downloads/past-releases/#elasticsearch 2.解压软件3.创建用户设置用户 es 密码 es赋权ES用户数据…...
Linux 防火墙 firewalld 常用命令
1 防火墙 - firewalld 1.1 开启防火墙 # 临时性开启,服务器重启后会恢复为原来的状态 systemctl start firewalld # 永久性开启(即开机启动),重启服务器后生效 systemctl enable firewalld1.2 关闭防火墙 # 临时性关闭…...
时间|基于SprinBoot+vue的时间管理系统(源码+数据库+文档)
时间管理系统 目录 基于SprinBootvue的时间管理系统 一、前言 二、系统设计 三、系统功能设计 1管理员功能模块 2用户功能模块 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取: 博主介绍:✌️大厂码农…...
C++青少年简明教程:for循环语句
C青少年简明教程:for循环语句 C的for循环语句是一种迭代控制语句,用于重复执行一段代码。 语法格式: for(表达式1;表达式2;表达式3) 循环体 for循环语句执行流程图: 不太好理解,请看下图&am…...
自动驾驶技术现状与需求分析
随着科技的不断进步和智能化浪潮的席卷,自动驾驶技术已成为当今交通领域的热点话题。本文旨在深入探讨自动驾驶技术的当前发展状况,并对其未来的市场需求进行细致分析。首先,我们将回顾自动驾驶技术的起源、发展历程以及当前的技术水平&#…...
铭豹扩展坞 USB转网口 突然无法识别解决方法
当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…...
深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法
深入浅出:JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中,随机数的生成看似简单,却隐藏着许多玄机。无论是生成密码、加密密钥,还是创建安全令牌,随机数的质量直接关系到系统的安全性。Jav…...
MVC 数据库
MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...
Python爬虫(二):爬虫完整流程
爬虫完整流程详解(7大核心步骤实战技巧) 一、爬虫完整工作流程 以下是爬虫开发的完整流程,我将结合具体技术点和实战经验展开说明: 1. 目标分析与前期准备 网站技术分析: 使用浏览器开发者工具(F12&…...
Java 加密常用的各种算法及其选择
在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。 一、对称加密算法…...
【论文阅读28】-CNN-BiLSTM-Attention-(2024)
本文把滑坡位移序列拆开、筛优质因子,再用 CNN-BiLSTM-Attention 来动态预测每个子序列,最后重构出总位移,预测效果超越传统模型。 文章目录 1 引言2 方法2.1 位移时间序列加性模型2.2 变分模态分解 (VMD) 具体步骤2.3.1 样本熵(S…...
力扣-35.搜索插入位置
题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 class Solution {public int searchInsert(int[] nums, …...
Fabric V2.5 通用溯源系统——增加图片上传与下载功能
fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...
【分享】推荐一些办公小工具
1、PDF 在线转换 https://smallpdf.com/cn/pdf-tools 推荐理由:大部分的转换软件需要收费,要么功能不齐全,而开会员又用不了几次浪费钱,借用别人的又不安全。 这个网站它不需要登录或下载安装。而且提供的免费功能就能满足日常…...
多模态图像修复系统:基于深度学习的图片修复实现
多模态图像修复系统:基于深度学习的图片修复实现 1. 系统概述 本系统使用多模态大模型(Stable Diffusion Inpainting)实现图像修复功能,结合文本描述和图片输入,对指定区域进行内容修复。系统包含完整的数据处理、模型训练、推理部署流程。 import torch import numpy …...

