设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 创业者 手机 数据
当前位置: 首页 > 服务器 > 系统 > 正文

带领你写一个Linux下的打包软件 Tar

发布时间:2021-10-27 12:53 所属栏目:52 来源:互联网
导读:trace-cmd 是一个易于使用,且特性众多、可用来追踪内核函数的命令。 在 之前的文章 里,我介绍了如何利用 ftrace 来追踪内核函数。通过写入和读出文件来使用 ftrace 会变得很枯燥,所以我对它做了一个封装来运行带有选项的命令,以启用和禁用追踪、设置过滤
trace-cmd 是一个易于使用,且特性众多、可用来追踪内核函数的命令。
 
在 之前的文章 里,我介绍了如何利用 ftrace 来追踪内核函数。通过写入和读出文件来使用 ftrace 会变得很枯燥,所以我对它做了一个封装来运行带有选项的命令,以启用和禁用追踪、设置过滤器、查看输出、清除输出等等。
 
trace-cmd 命令是一个可以帮助你做到这一点的工具。在这篇文章中,我使用 trace-cmd 来执行我在 ftrace 文章中所做的相同任务。由于会经常参考那篇文章,建议在阅读这篇文章之前先阅读它。
 
安装 trace-cmd
本文中所有的命令都运行在 root 用户下。
 
因为 ftrace 机制被内置于内核中,因此你可以使用下面的命令进行验证它是否启用:
 
# mount | grep tracefs
none on /sys/kernel/tracing type tracefs (rw,relatime,seclabel)
不过,你需要手动尝试安装 trace-cmd 命令相信你对 linux 的 .tar.gz 有点熟悉,这就是先 tar 打包(.tar 后缀),再对此 tar 文件用 gzip 压缩(.tar.gz)的后缀名。
 
值得注意的是, tar 不是压缩软件,它只做把一堆文件/文件夹打包到一个文件(tar 文件)里的事情,而文件联系,文件权限,相对的路径等都会给你保存好。
 
一开始设计是 tar 跟 gzip 只做一件事情,各司其事,后来发现太麻烦了,于是就把压缩功能整合到 tar 里了。
 
- Create a gzipped archive: 
    tar czf target.tar.gz file1 file2 file3 
最近学习 OS 时写了一个类似 tar 的项目,那么今天就趁热打铁简单说一下如何写一个打包软件,这个软件会将重复的文件内容通过 md5 比较,复用旧的内容。
 
 
 
基本单位 block
block 可以理解为文件系统的最小单位,分别有以下类型:
 
directory block,文件夹 block,存储文件夹 meta 信息;
file block,文件 block,存储文件 meta 信息;
data block,只用来存文件内容;
Directory block,注意的是 entry 里要有 fileindex 来存储重复文件的 name 的下标。
 
同时,给 项目一个 root dir。

(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读