精华内容
下载资源
问答
  • Ubuntu下解压squashfs文件

    万次阅读 2015-10-29 23:48:04
    当我们在刷机之前要对文件系统进行一些修改时,我们则需要先解压squashfs文件,然后再打包,再刷机。 在Ubuntu上我们要解压一个名为openwrt.squashfs文件时可输入一下命令来解压: unsquashfs openwrt.squas

    在刷openwrt时,或者编译openwrt固件时,我们常常会看到squashfs文件,有时从网上下载的固件也是squashfs格式,

    当我们在刷机之前要对文件系统进行一些修改时,我们则需要先解压squashfs文件,然后再打包,再刷机。


    在Ubuntu上我们要解压一个名为openwrt.squashfs文件时可输入一下命令来解压:

    unsquashfs  openwrt.squashfs

    此时,在同级目录边会出现“squashfs-root”文件夹,里面即为我们解压出来的文件。更多选项请输入unsquashfs  --help

    展开全文
  • squashfs文件解压和压缩

    万次阅读 2020-11-05 11:09:21
    解压: unsquashfs file.squashfs(被解压文件名称) 压缩: mksquashfs /被压缩的目录 file.squashfs(压缩后的文件名称)

    解压:

    unsquashfs file.squashfs(被解压的文件名称)

    压缩:

    mksquashfs /被压缩的目录 file.squashfs(压缩后的文件名称)

    展开全文
  • 1.从网站https://sourceforge.net/projects/squashfs/files/squashfs/ 下载 squashfs4.3.tar.gz 或者 ...2.解压 squashfs.tar.gz 3.cd squashfs.4.x 4.cd squashfs-tools 5.修改Makefile 去掉 XZ_SUPPORT 1 这

    1.从网站https://sourceforge.net/projects/squashfs/files/squashfs/ 下载 squashfs4.3.tar.gz 或者 squashfs4.2.tar.gz

    2.解压 squashfs.tar.gz

    3.cd squashfs.4.x

    4.cd squashfs-tools

    5.修改Makefile 去掉 XZ_SUPPORT 1 这一行首的 # 号,保存退出

    6.make clean;make

    7.没什么问题可以得到squashfs unsquashfs这两个工具

    8.执行unsquashfs -h可以看到它支持的信息:

    # ./unsquashfs -h
    SYNTAX: ./unsquashfs [options] filesystem [directories or files to extract]
    -v[ersion] print version, licence and copyright information
    -d[est] <pathname> unsquash to <pathname>, default "squashfs-root"
    -n[o-progress] don't display the progress bar
    -no[-xattrs] don't extract xattrs in file system
    -x[attrs] extract xattrs in file system (default)
    -p[rocessors] <number> use <number> processors.  By default will use
    number of processors available
    -i[nfo] print files as they are unsquashed
    -li[nfo] print files as they are unsquashed with file
    attributes (like ls -l output)
    -l[s] list filesystem, but don't unsquash
    -ll[s] list filesystem with file attributes (like
    ls -l output), but don't unsquash
    -f[orce] if file already exists then overwrite
    -s[tat] display filesystem superblock information
    -e[f] <extract file> list of directories or files to extract.
    One per line
    -da[ta-queue] <size> Set data queue to <size> Mbytes.  Default 256
    Mbytes
    -fr[ag-queue] <size> Set fragment queue to <size> Mbytes.  Default
    256 Mbytes
    -r[egex] treat extract names as POSIX regular expressions
    rather than use the default shell wildcard
    expansion (globbing)


    Decompressors available:
    gzip
    xz


    9.解压指令:

       例如文件rootfs-cpio.squashfs.img

       ./unsquashfs rootfs-cpio.squashfs.img

       执行完毕后会在当前目录下创建squashfs-root目录,东西都在里头


    # ./unsquashfs /tmp/rootfs-cpio.squashfs.img
    Parallel unsquashfs: Using 2 processors
    149 inodes (221 blocks) to write

    [==============================================================================================================================================================/] 221/221 100%
    created 128 files
    created 39 directories
    created 19 symlinks
    created 2 devices
    created 0 fifos
    root#

    展开全文
  • 最近负责将A公司一个比较稳定的代码分支移植到新平台上,...在移植的过程中,编译成功后DUT上电,但是出现解压文件系统失败,串口信息: 0.760000] unlzma 632 [ 0.760000] unlzma 634 [ 0.764000] unlzma 632 [ 0

    最近负责将A公司一个比较稳定的代码分支移植到新平台上,新平台中包含了M公司和B公司的代码,这样的一个代码架构方便以后不同公司芯片方案的添加和开发。

    在移植的过程中,编译成功后DUT上电,但是出现解压文件系统失败,串口信息:

    0.760000] unlzma 632
    [    0.760000] unlzma 634
    [    0.764000] unlzma 632
    [    0.768000] CPU 0 Unable to handle kernel paging request at virtual address c0101f38, epc == 800f02c8, ra == 800f0264
    [    0.776000] Oops[#1]:
    [    0.776000] Cpu 0
    [    0.776000] $ 0   : 00000000 00000000 ffffff38 01000000
    [    0.776000] $ 4   : ff0000e0 000000e0 ff000000 000019e3
    [    0.776000] $ 8   : 802c0000 00000001 00000001 0000000a

    跟进到出错的地方,是kernel中的lib\decompress_unlzma.c中函数unlzma出错,这个函数应该是解压squashfs中的文件。进一步分析原因,发现是制作文件系统使用的压缩方式不一样,在制作文件系统的命令中:

    Creating 4.0 filesystem on ../board/model_qca_qca95xx/images/wpa8730v1/ap143-squashfs, block size 1048576.
    [===========================================================================================================================================================================================================\] 581/581 100%
    Exportable Squashfs 4.0 filesystem, data block size 1048576
            compressed data, compressed metadata, compressed fragments
            duplicates are removed
    Filesystem size 3374.85 Kbytes (3.30 Mbytes)
            26.07% of uncompressed filesystem size (12947.50 Kbytes)
    Inode table size 5519 bytes (5.39 Kbytes)
            20.41% of uncompressed inode table size (27037 bytes)
    Directory table size 8304 bytes (8.11 Kbytes)
            46.53% of uncompressed directory table size (17845 bytes)
    Number of duplicate files found 84
    Number of inodes 823
    Number of files 649
    Number of fragments 12
    Number of symbolic links  99
    Number of device nodes 0
    Number of fifo nodes 0
    Number of socket nodes 0
    Number of directories 75
    Number of ids (unique uids + gids) 1
    Number of uids 1
            root (0)
    Number of gids 1
            root (0)

    从日志中看到,这里使用了squashfs默认的压缩方式gzib,而squashfs使用lzma压缩的话,信息:

    /home/project/plc_platform/board/model_qca_qca95xx/build/../../../util/fakeroot /home/project/plc_platform/board/model_qca_qca95xx/build/../../../util/buildFS_LZ
    Parallel mksquashfs: Using 2 processors
    Creating 4.0 filesystem on /home/project/plc_platform/board/model_qca_qca95xx/build/../images/wpa8730v1/ap135-squashfs, block size 1048576.
    [===========================================================================================================================================================================================================-] 581/581 100%
    Exportable Squashfs 4.0 filesystem, lzma compressed, data block size 1048576
            compressed data, compressed metadata, compressed fragments
            duplicates are removed
    Filesystem size 3374.96 Kbytes (3.30 Mbytes)
            26.07% of uncompressed filesystem size (12946.99 Kbytes)
    Inode table size 5633 bytes (5.50 Kbytes)
            21.26% of uncompressed inode table size (26493 bytes)
    Directory table size 8344 bytes (8.15 Kbytes)
            46.70% of uncompressed directory table size (17869 bytes)
    Number of duplicate files found 16
    Number of inodes 823
    Number of files 581
    Number of fragments 12
    Number of symbolic links  99
    Number of device nodes 68
    Number of fifo nodes 0
    Number of socket nodes 0
    Number of directories 75
    Number of ids (unique uids + gids) 1


    有明显的 lzma compressed标识。

    而在kernel的配置中,指定了rootfs的文件系统类型:

    CONFIG_CMDLINE="console=ttyS0,115200 root=01:00 rd_start=0x802d0000 rd_size=0x800000 init=/sbin/init mem=64m mtdparts=ath-nor0:256k(u-boot),64k(u-boot-env),6336k(rootfs),1408k(uImage),64k(config),64k(radiodata)"

    所以导致kernel在解压文件系时使用了lzma的解压方式去解压一个gzib压缩的文件系统,出错。


    另外一个挂载失败的现象:

    [    0.704000] drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
    [    0.712000] List of all partitions:
    [    0.716000] 1f00             128 mtdblock0 (driver?)
    [    0.720000] 1f01            1024 mtdblock1 (driver?)
    [    0.724000] 1f02            6976 mtdblock2 (driver?)
    [    0.728000] 1f03              64 mtdblock3 (driver?)
    [    0.736000] No filesystem could mount root, tried:  squashfs
    [    0.740000] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(31,3)

    原因是mtd分区参数中,文件系统是第2个分区(分区从0开始计算),如下:

    brw-r--r--    1   31,   0 Mar 28  2016 mtdblock0
    brw-r--r--    1   31,   1 Mar 28  2016 mtdblock1
    brw-r--r--    1   31,   2 Mar 28  2016 mtdblock2

    但是挂载的设备名号 是31:3,错误,应该是31:2.


    解决方法:使用squashfs.lzma工具制作文件系统就可以了。

    调试过程还有很多值得记录的地方,比如kernel的makefile文件,mtd驱动,升级文件的制作流程等,后续补充。



    展开全文
  • .squashfs.img文件修改

    千次阅读 2019-11-29 16:48:45
    文件属于Squashfs filesystem,所以需要先解压,经过百度 unsquashfs openwrt.squashfs 命令 yum search squashfs yum install search的结果 然后 执行解压的命令 修改完成后执行mksquashfs sq...
  • 基于 SquashFS 构建 Linux 可读写文件系统 在当前的嵌入式操作系统开发中,Linux 操作系统通常被压缩成 Image 后存放在 Flash 设备中。在系统启动过程中,这些 Image 被直接挂载到根文件系统, 然而这时的...
  • 在系统启动过程中,这些 Image 被直接挂载到根文件系统, 然而这时的根文件系统是只读的, 用户不能在这个文件系统中进行任何写的操作。 如果把 Image 解压后直接拷贝到内存中,也可以实现写的功能,但是嵌入式系统...
  • squashfs-tools.zip

    2017-06-28 09:09:34
    squashfs:一个无需解压就可以获取文件信息内容的插件
  • 之前用binwalk -Me提取固件中的squashfs,但会生成大量的压缩包等,只提取文件系统的话,可以定位squashfs文件头(hsqs)位置,然后用dd将它分离出来,然后在unsquashfs解压出来。 比如手头上有个路由器固件,...
  • 非标准的SquashFS格式的文件镜像 进行解压并且sasquatch工具也binwalk工具集成的一个功能组件之一。最新版的sasquatch工具是基于squashfs 4.3的源码修改而来的,具体修改那些文件如下,修改的那些内容在sasquatch的...
  • 解压系统镜像文件img并查看内容

    万次阅读 2018-09-14 09:12:54
    首先使用file命令查看文件的格式 [/mnt/android_img]@OS $foo -&gt; file system.raw.img system.raw.img: Squashfs filesystem, little endian, version 4.0, 471060833 bytes, 1605 inodes, blocksize: ...
  • sasquatch工具支持对非标准的SquashFS格式的文件镜像进行解压并且sasquatch工具也binwalk工具集成的一个功能组件之一。最新版的sasquatch工具是基于squashfs 4.3的源码修改而来的,具体修改那些文件如下,修改的那些...
  • 修改 ubnt 路由器固件

    2020-04-03 00:06:06
    我们下载的固件往往是 tar 文件,这个文件其实是个包,直接可以用zip打开,打开后真正的固件所在文件是squashfs.tmp,这个文件才是真正的固件,squashfs 格式的,如果要进行固件修改,我们则需要先解压squashfs文件,...
  • 树莓派的openwrt默认会按最小的大小分配overlay,导致不能占满整个SD卡。...在另一台电脑上(最好是linux,下面都默认按linux处理)插上树莓派的SD卡,把从官网上下载的事先解压好的img文件写入SD卡。(需要事先将SD...
  • Unarchiver是MacOS系统中很好用的压缩、解压工具,支持多种格式,如:RAR、7z、ZIP、XZ、BZIP2、GZIP、RAR、WIM、ARJ、CAB、CHM、CPIO、CramFS、DEB、DMG、FAT、HFS、ISO、LZH、LZMA、MBR、MSI、NSIS、NTFS、RPM、...
  • 7zip解压工具

    2015-04-23 08:40:18
    ◦仅解压缩:ARJ, CAB, CHM, CPIO, CramFS, DEB, DMG, FAT, HFS, ISO, LZH, LZMA, MBR, MSI, NSIS, NTFS, RAR, RPM, SquashFS, UDF, VHD, WIM, XAR, Z •对于 ZIP 及 GZIP 格式,7-Zip 能提供比使用 PKZip 及 ...
  • 第一步,将squashfs文件释放出来 mkdir -p /root/BUILD mv bt4.iso /root/BUILD cd /root/BUILD/ mkdir mnt mount -o loop bt4.iso mnt/ mkdir extract-cd rsync --exclude=/casper/filesystem.squashfs -a mnt/ ...
  • 使用方法:将要解压的固件包放到D盘根目录下面,不管原来是什么格式什么文件名一律都将它改成这个文件名:jiebao.pkg,刷机包解压后放在D盘jiebao文件夹内,解出来的ext4格式的分区文件可以网上下载“ROM助手”进行...
  • 7-zip稳定版于2019-02-21更新,测试版于2020-02-06更新,适用于windows对压缩文件操作,支持格式: 压缩 / 解压缩:7z, XZ, BZIP2, GZIP, TAR, ZIP and WIM 仅解压缩:ARJ, CAB, CHM, CPIO, CramFS, DEB, DMG, FAT,...
  • 对于 ZIP 及 GZIP 格式,7-Zip 能提供比使用 PKZip 及 WinZip 高... 仅解压缩:ARJ, CAB, CHM, CPIO, CramFS, DEB, DMG, FAT, HFS, ISO, LZH, LZMA, MBR, MSI, NSIS, NTFS, RAR, RPM, SquashFS, UDF, VHD, WIM, XAR, Z
  • 7-Zip 自解压软件

    2011-08-27 01:41:15
    仅解压缩:ARJ, CAB, CHM, CPIO, CramFS, DEB, DMG, FAT, HFS, ISO, LZH, LZMA, MBR, MSI, NSIS, NTFS, RAR, RPM, SquashFS, UDF, VHD, WIM, XAR, Z 对于 ZIP 及 GZIP 格式,7-Zip 能提供比使用 PKZip 及 WinZip 高...
  • 1.提取ISO文件中的filesystem.squashfs文件 2.解压压缩文件,删除原始文件,将编译好的kernel拷贝到新文件夹的home目录 sudo unsquashfs ./filesystem.squashfs sudo rm filesystem.squashfs sudo cp your_path...
  • kali下qemu的安装: apt-get install qemu 使用Docker容器进行操作 ...分析某路由器固件包: binwalk -Me bcrm.bin # -M 递归解压看情况可加可不加 -e ...一般固件解压后的文件系统有squashfs和cpio,进入相应的文件夹
  • 仅解压缩:ARJ、CAB、CHM、CPIO、CramFS、DEB、DMG、FAT、HFS、ISO、LZH、LZMA、MBR、MSI、NSIS、NTFS、RAR、RPM、SquashFS、UDF、VHD、WIM、XAR、7Z 对于 ZIP 及 GZIP 格式,7-Zip 能提供比使用 PKZip 及 WinZip ...
  • BUUCTF——firmwork

    2019-08-01 16:54:09
    开始我使用binwallk看得,果然binwalk出了不少的文件,发现有一个Squashfs文件,说明他用了Squashfs 文件系统 但是一直没办法解压,通过查阅大量资料,终于找到解压的办法。 先运行 hexdump -C 1.bin | grep -n ...
  • 1、固件下载下载需要分析的漏洞固件 TEW751DR_FW103B03 注意版本是1.03B032、解压bin文件使用binwalk解压,提取的squashfs-root文件若为空,继续使用firmware-mod-kit中的unsquashfs_all.sh命令继续解压(PS:其中的...

空空如也

空空如也

1 2 3
收藏数 49
精华内容 19
关键字:

解压squashfs文件