李臻20242817_安全文件传输系统项目报告_第6周

安全文件传输系统项目报告(第 1 周)

1. 代码链接

Gitee 仓库地址:https://gitee.com/li-zhen1215/homework/tree/master/Secure-file

代码结构说明:

plaintext 复制代码
project-root/
 ├── src/ # 源代码目录
 │ ├── main.c # 主程序入口
 │ ├── db/ # 数据库操作
 │ ├── gui/ # 图形界面
 │ └── utils/ # 工具函数模块
 ├── include/ # 头文件
 ├── lib/ # 动态库静态库
 ├── docs/ # 文档目录
 ├── Makefile # 自动编译
 └── README.md # 项目说明

2. 环境搭建

步骤1:Visual Studio Code

  • 安装过程
    打开terminal终端并输入如下命令
c 复制代码
sudo snap install --classic code

执行完毕后Visual Studio Code就已经安装成功

步骤2:QT

  • 安装过程
  1. 安装一些必要的依赖项
c 复制代码
sudo apt-get update
sudo apt-get install -y libgl1-mesa-dev libgles2-mesa-dev libegl1-mesa-dev libdbus-1-dev libfontconfig1-dev libfreetype6-dev libicu-dev libinput-dev libxkbcommon-dev libsqlite3-dev libssl-dev libpng-dev libjpeg-turbo8-dev libglib2.0-dev
  1. 安装QT的开发工具和qtcreator
c 复制代码
sudo apt-get install qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools
sudo apt-get install qtcreator
  1. 安装QT
c 复制代码
sudo apt-get install qt5*

安装完毕

  1. 关联VSCode
    在VSCode中安装相关插件

我的qt安装路径为:/usr/lib/x86_64-linux-gnu/qt5/bin

安装完成后按f1,选择qt New Project创建新项目

项目创建成功

功能3:Mysql

  • 安装过程
  1. 安装最新版本的mysql
c 复制代码
sudo apt install -y mysql-server
  1. 自动启动MySQL服务并设置为开机自启动
c 复制代码
sudo systemctl start mysql
sudo systemctl enable mysql
  1. 检查MySQL状态,是否正在运行
c 复制代码
sudo systemctl status mysql
  1. 修改密码、权限
c 复制代码
# 登录mysql,在默认安装时如果没有让我们设置密码,则直接回车就能登录成功。
sudo mysql -uroot -p
# 设置密码 mysql8.0
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
# 刷新缓存
flush privileges;

3. 遇到的问题及解决方式

问题1:Qt与VSCode关联路径问题

  • 现象:在VSCode中,Qt无法正常启动。
  • 原因:没有设置Qt及其套件的路径。
  • 解决 :找到这些套件安装的路径,并在VSCode中进行正确设置。

问题2:数据库安装后找不到root

  • 现象:使用mysql时,报错:ERROR 1698 (28000): Access denied for user 'root'@'localhost'
  • 原因:MySQL安装的时候,系统自动分配了一个user和password
  • 解决
    查看缓存文件,记下系统默认分配的账号密码并使用
c 复制代码
sudo cat /etc/mysql/debian.cnf

启动mysql,输入如下指令:

c 复制代码
use mysql;
select user,plugin from user;
update user set plugin='mysql_native_password' where user='root'; # 修改其密码格式
select user,plugin from user; # 查询其用户

刷新权限

c 复制代码
flush privileges;

新增root密码并再次刷新权限

c 复制代码
alter user 'root'@'localhost' identified by '123456';
flush privileges;
exit

重启mysql服务

c 复制代码
service mysql restart

root登录

c 复制代码
mysql -u root -p

4. 提交报告文档要求

Markdown 文档

  • 本报告使用 Markdown 编写,文件名为 姓名学号_项目名称_第 XX 周.md
  • 包含代码块、图片链接、列表等标准语法。

转换为 PDF

  • 工具:使用 VS Code 插件 Markdown PDF 或在线工具 Pandoc。

  • 步骤

    bash 复制代码
    # 命令行转换示例
    pandoc project-report.md -o project-report.pdf --pdf-engine=xelatex
相关推荐
乐橙开放平台1 小时前
一周上线校园透明化:listDeviceDetailsByPage 台账 + getKitToken + ImouPlayer 多路墙
后端·物联网·安全·音视频·智能家居
不爱土豆唯爱马铃薯1 小时前
升级 AiPy Pro 2.0 后,我把安全中心这几项挨个打开了数据安全、沙盒权限、工作空间隔离——这些 2.0 新功能对科研协作场景的实际影响
网络·安全·php
Delite8024 小时前
磷酸酯抗燃油矿物油检测技术及多行业应用场景解析
网络·安全
SLD_Allen4 小时前
基于 eBPF + Cilium 的 Kubernetes 网络可观测与安全治理实践
网络·安全·kubernetes
Bruce_Liuxiaowei4 小时前
多模态AI在网络安全监控中的创新应用
人工智能·安全·web安全
小绫网络安全5 小时前
2026 年网络安全新手入门实战路线
网络·安全·web安全
七夜zippoe5 小时前
OpenClaw + 隐私计算实战:联邦学习场景下的 Agent 数据隔离与安全协作
安全·agent·联邦学习·隐私计算·数据隔离·openclaw
天行健,君子而铎5 小时前
场景化适配+合规审查+技术突破:运营商AI数据分类分级最优解决方案
大数据·安全
zyplayer-doc13 小时前
VuePress类静态文档站和动态知识库怎么选:两种技术路线的适用场景
javascript·人工智能·后端·安全·智能手机
KKKlucifer14 小时前
拨开接口黑盒迷雾:运营商第三方合作接口安全审计与准入管控落地实践
网络·人工智能·安全