DigitalCyberSoft/libyal-copr
GitHub: DigitalCyberSoft/libyal-copr
该项目通过 COPR 为 Fedora 提供打包好的 libyal 数字取证核心库合集,简化了取证工具的依赖安装与构建流程。
Stars: 0 | Forks: 0
# Fedora 的 libyal Bundle COPR
此仓库通过 COPR 为 Fedora 40、41、42 和 rawhide 提供了一系列 libyal 取证库。
## 什么是 libyal?
libyal 是一组用于数字取证和数据恢复的库。这些库被各种取证工具用于:
- 解析文件格式
- 访问加密卷
- 读取磁盘映像
- 分析 Windows 痕迹
- 处理各种数据结构
## 包含的库
此 bundle 包含 11 个具有官方发布版本的核心 libyal 库:
| 库 | 用途 |
|---------|---------|
| **libcerror** | 跨平台错误处理 |
| **libcthreads** | 跨平台线程支持 |
| **libcdata** | 跨平台数据结构(数组、列表、树) |
| **libclocale** | 跨平台 locale 支持 |
| **libcnotify** | 跨平台通知/日志支持 |
| **libuna** | Unicode 和 ASCII 转换支持 |
| **libcfile** | 跨平台文件 I/O |
| **libcpath** | 跨平台路径处理 |
| **libbfio** | 基本文件输入/输出抽象 |
| **libfcache** | 文件数据缓存 |
| **libfguid** | GUID/UUID 支持 |
注意:某些 libyal 库(libcsplit、libfdata、libfvalue)没有独立的发布版本,通常直接打包在其他 libyal 项目中。
## 快速安装
启用 COPR 仓库后:
```
# 启用 COPR repository(将 YOUR_USERNAME 替换为实际用户名)
sudo dnf copr enable YOUR_USERNAME/libyal-bundle
# 安装 bundle
sudo dnf install libyal-bundle
# 用于开发
sudo dnf install libyal-bundle-devel
```
## 为什么使用此 Bundle?
### 优势:
- **单一软件包**:一次性安装所有核心 libyal 库
- **依赖解决**:库按正确的顺序构建
- **取证就绪**:支持 libvhdi、libbde、libewf 等工具
- **定期更新**:根据上游发布自动构建
- **Fedora 原生**:专为 Fedora 40-42 和 rawhide 构建
### 使用场景:
- 数字取证调查
- 数据恢复操作
- 构建依赖 libyal 的取证工具
- 数字取证方面的学术研究
- 安全事件响应
## 本地构建
### 前置条件
```
sudo dnf install -y gcc make autoconf automake libtool \
gettext-devel rpm-build rpmdevtools
```
### 构建过程
```
# Clone 此 repository
git clone https://github.com/YOUR_USERNAME/libyal-copr
cd libyal-copr
# 在本地测试 COPR Makefile
make -f .copr/Makefile srpm outdir=.
# 或者直接构建 RPMs
rpmdev-setuptree
cp *.src.rpm ~/rpmbuild/SRPMS/
rpmbuild --rebuild ~/rpmbuild/SRPMS/libyal-bundle-*.src.rpm
```
## COPR 设置说明
### 1. 推送至 GitHub
```
git remote add origin https://github.com/YOUR_USERNAME/libyal-copr.git
git add -A
git commit -m "Initial commit: libyal bundle for Fedora"
git push -u origin master
```
### 2. 创建 COPR 项目
1. 访问 https://copr.fedorainfracloud.org/
2. 使用 Fedora Account System (FAS) 凭据登录
3. 点击 "New Project"
4. 填写:
- **项目名称:** `libyal-bundle`
- **描述:** `Bundle of libyal forensics libraries for Fedora`
- **主页:** `https://github.com/libyal`
### 3. 添加软件包
1. 转到 "Packages" 标签页
2. 点击 "New Package"
3. 配置:
- **软件包名称:** `libyal-bundle`
- **Clone URL:** `https://github.com/YOUR_USERNAME/libyal-copr.git`
- **类型:** `make srpm`
### 4. 启用构建目标
选择 chroots:
- fedora-40-x86_64
- fedora-41-x86_64
- fedora-42-x86_64
- fedora-rawhide-x86_64
## 与其他工具集成
### 与 libvhdi 一起使用
如果您需要带有独立 libyal 库的 libvhdi:
```
# 首先安装 libyal bundle
sudo dnf install libyal-bundle libyal-bundle-devel
# 然后针对系统 libyal 构建 libvhdi
# (需要修改过的 spec 文件 - 不是 bundled 版本)
```
### 构建其他 libyal 工具
安装此 bundle 后,您可以构建其他 libyal 工具:
```
# 其他可以使用此 bundle 的 libyal 工具示例:
# - libbde (BitLocker Drive Encryption)
# - libewf (Expert Witness Format)
# - libpff (Personal Folder File - Outlook PST)
# - libregf (Windows Registry File)
# - libvshadow (Volume Shadow Snapshots)
```
## 版本信息
当前 bundle 版本:**20240415**
各个库的版本:
- libcerror: 20240413
- libcthreads: 20240413
- libcdata: 20240414
- libclocale: 20240414
- libcnotify: 20240414
- libcsplit: 20240414
- libuna: 20240414
- libcfile: 20240414
- libcpath: 20240414
- libbfio: 20240414
- libfcache: 20240414
- libfdata: 20240414
- libfguid: 20240415
- libfvalue: 20240415
## 故障排除
### 构建失败
如果 COPR 构建失败:
1. 在 COPR Web 界面中检查 build.log
2. 确认所有源 URL 均可访问
3. 确保库版本与可用的发布版本匹配
### 缺少依赖项
此 bundle 是独立的,但需要:
- gcc, make, autoconf, automake, libtool
- gettext-devel(用于国际化)
### 冲突
如果您安装了单独的 libyal 软件包:
```
# 首先移除单个 packages
sudo dnf remove libcerror libcthreads libcdata
# 然后安装 bundle
sudo dnf install libyal-bundle
```
## 许可证
所有 libyal 库均基于 LGPL-3.0-or-later 许可证授权
## 链接
- **上游 libyal**:https://github.com/libyal
- **文档**:https://github.com/libyal/libyal/wiki
- **COPR 项目**:https://copr.fedorainfracloud.org/coprs/YOUR_USERNAME/libyal-bundle/
- **相关项目**:
- [libvhdi-copr](https://github.com/YOUR_USERNAME/libvhdi-copr)
- [dfVFS](https://github.com/log2timeline/dfvfs)
- [Plaso](https://github.com/log2timeline/plaso)
## 支持
- **问题**:在此仓库中提交 issue
- **上游问题**:报告给相应的 libyal/[library] 仓库
- **Fedora COPR**:Libera.Chat IRC 上的 #fedora-buildsys 频道
标签:COPR, Fedora, 打包脚本, 数字取证, 数据恢复, 系统库, 自动化脚本