squashfs 解开和压制

本文详细介绍了如何使用Squashfs工具进行文件系统的解压、添加自定义文件以及重新压缩的过程。包括安装所需软件、解压Squashfs文件、将文件添加至解压后的目录、重新压缩修改后的文件系统,并提供GZIP压缩选项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

squashfs具体的解释就多废话了,这里记录一下squashfs文件的解开,加入自己的文件,再压制。

先 yum install squashfs-tools

 

1、cpio -idv < /tmp/newroot.squashfs.cpio

2、unsquashfs -p 4 -n newroot.squashfs 

    // 这里需要安装一下squashfs

        2.1 wget http://sourceforge.net/projects/squashfs/files/latest/download?source=files

        2.2 tar zxvf squashfs4.2.tar.gz

        2.3 make & make install

3、会有一个新的目录(这里是squashfs-root),该目录就是newroot.squashfs里面的文件系统,将自己的文件复制到这个文件系统里

4、mksquashfs squashfs-root newroot.squashfs

5、ls newroot.squashfs | cpio -oc > newroot.squashfs.cpio

如果需要gzip,就再压一下。这样就完毕了。

### SquashFS系统简介 SquashFS 是一种高度压缩的只读文系统,专为 Linux 设计。它通过使用高效的压缩算法来减少存储空间需求,同时保持良好的性能表现[^1]。该文系统的典型应用场景包括嵌入式设备、现场安装介质以及任何需要高效利用磁盘空间的地方。 #### 创建 SquashFS 镜像的方法 要创建一个 SquashFS 压缩镜像文,可以使用 `mksquashfs` 工具。例如,假设有一个名为 `squashfs-root` 的文夹,可以通过以下命令将其打包成 `.sqsh` 格式的镜像文,并指定使用 XZ 压缩算法: ```bash mksquashfs squashfs-root squashfs-root.sqsh -comp xz ``` 此操作会将目标目录中的所有数据压缩并写入到一个新的镜像文中[^1]。 #### 解压 SquashFS 镜像的内容 当需要从已有的 SquashFS系统中提取文时,可借助 `unsquashfs` 工具完成解包过程。基本语法如下所示: ```bash unsquashfs squashfs-root.sqsh ``` 执行后,默认会在当前工作路径下生成一个名为 `squashfs-root` 的新目录,其中包含了原始的数据结构[^2]。 #### 编译内核支持与工具链配置 为了能够在特定平台上正常运行基于 SquashFS 构建的应用程序或者操作系统,则需确保所使用的 Linux 内核已经启用了对该类文系统的原生支持功能模块。具体步骤涉及重新编译定制化版本的核心代码库,激活相关选项如启用对XZ格式的支持等设置项[^4]: ```plaintext File systems ---> [*] Miscellaneous filesystems ---> <*> SquashFS 4.0 - Squashed file system support [*] Include support for XZ compressed file systems ``` 之后按照常规流程构建整个项目环境即可获得兼容性的成果物。 #### 挂载 SquashFS 到临时目录 一旦成功制作好所需的 SquashFS 映射文档以后,下一步就是把它连接至主机的操作体系内部当作普通的子卷看待。这通常涉及到调用标准mount指令加上相应的参数描述符来进行实际关联动作: ```bash sudo mount -t squashfs -o loop squashfs-root.sqsh /mnt/temp_dir/ ``` 如果希望开机自启动加载某个固定的映射位置的话,则应该修改 `/etc/fstab` 文或者是初始化服务脚本里边加入对应的定义语句[^3]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值