李臻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
相关推荐
岁岁的O泡奶17 小时前
DVWA_Vulnerability: Command Injection
经验分享·安全·web安全
羑悻的小杀马特18 小时前
轻量跨云·掌控无界:Portainer CE + cpolar 让远程容器运维像点外卖一样简单——免复杂配置,安全直达对应集群
运维·网络·安全·docker·cpolar
我不是QI19 小时前
周志华《机器学习—西瓜书》二
人工智能·安全·机器学习
简道云平台19 小时前
缺货预警到底怎么做?终于有人把“安全库存”这件事讲清楚了
安全
AI绘画小3321 小时前
Web 安全核心真相:别太相信任何人!40 个漏洞挖掘实战清单,直接套用!
前端·数据库·测试工具·安全·web安全·网络安全·黑客
北京耐用通信1 天前
告别“牵一发而动全身”:耐达讯自动化Profibus PA分线器为石化流量计网络构筑安全屏障
人工智能·网络协议·安全·自动化·信息与通信
galaxylove1 天前
Gartner发布2025年人工智能和网络安全技术成熟度曲线:网络安全领域对AI的期望值达到顶峰
人工智能·安全·web安全
galaxylove1 天前
Gartner发布CISO人工智能安全指南:将AI安全治理融入所有网络安全治理体系
人工智能·安全·web安全
小曹要微笑1 天前
MPU (Memory Protection Unit) 详解(嵌入式系统安全与可靠性的核心守护者)
安全·系统安全
414a1 天前
LingJing(灵境):Linux Amd64局域网设备访问靶机教程
linux·安全·web安全·网络安全·lingjing·灵境