为LTO磁带而生的文件系统LTFS|主线任务—夺回"秋雅"

简介: 在LTO第一代到第四代,如果我们想要访问LTO磁带的内容,都需要厂商提供的特殊软件来支持,软件需要全部加在整个磁带的内容,才能展示你要查找的文件,保存文件的过程也需要特有的软件来处理。提供的磁带存储的厂商还有多个这就导致用户在使用磁带过程中,非常的痛苦地面对来回之间复杂的搬运场景。

最近各大官方账号带火了一个梗:

“主线任务-夺回秋雅”

一时间大家满脸问号

秋雅是谁?

为何要夺回?

连国外的网友都热议起来

秋雅是《夏洛特烦恼》中的女神


磁带存储技术也有自己的“秋雅”

本篇文章就看看

LTFS文件系统怎么夺回"秋雅"



《磁带存储技术专题》前情回顾:

1.引言-新时代依然需要古老技术

2.LTO助推磁带大容量存储技术超越磁盘HDD

在LTO第一代到第四代,如果我们想要访问LTO磁带的内容,都需要厂商提供的特殊软件来支持,软件需要全部加在整个磁带的内容,才能展示你要查找的文件,保存文件的过程也需要特有的软件来处理。提供的磁带存储的厂商还有多个这就导致用户在使用磁带过程中,非常的痛苦地面对来回之间复杂的搬运场景。

为了解决这个问题,IBM和HP最先开始这方面的研究,推出了线性磁带文件系统 (LTFS-Linear Tape File System)。最开始在2010,从第五代LTO5使用,并在2012年由IBM主推进入SNIA协会开放规范。

目前LTFS已经成为一种开放文件系统规范标准,最新是2021年发布的LTFS V2.5.1版本。

拥有了LTFS后,对LTO磁带意味着什么?带来了哪些好处呢?

随着 LTFS 的引入,LTO 磁带在系统中显示为一个设备,允许用户将文件拖放到磁带和从磁带拖放文件。简而言之,它允许LTO驱动器接口像普通硬盘驱动器一样工作。这消除了对任何特殊软件的需求,并使用户保存和复制文件更加直观。它还具有使LTO驱动器与所有主要操作系统兼容的额外优势。

因为LTFS是self-describing自描述特性,使得数据管理的复杂度降低了很多。LTFS还简化了跨工作流的数据交换,实现统一的文件共享,不依赖硬件和软件平台,这样会让数据恢复变得更加的容易。因为在传统磁带的数据恢复过程,必须要要求使用数据写入时刻使用的特定软件,而这些特定软件存在系统不兼容或者不更新的问题,使得数据修复变得异常困难。

此外,传统磁带中,如果我们需要访问数据,还需要把数据转移拷贝到硬盘再从系统中访问,在LTFS LTO磁带中,我们只需要直接访问磁带即可,变的是一种很简单的的操作。

既然LTFS这么多的优势,那么,LTFS到底是怎么实现的呢?

LTFS 使用 LTO 第 5、6、7 、 8、9 代提供的分区功能。通过使用分区,磁带被分成两个分区,分别存储index和数据(类似于FAT32文件系统,大家可以感兴趣可以参考之前发布的FAT32文件系统的介绍文章:)

  • 第一个分区partion0:比较小,保存索引index,其中包括文件系统信息和元数据,这些元数据提供有关第二个分区数据块中包含的文件的详细信息(例如名称,大小,创建日期,扩展属性以及哪些数据块属于哪个文件的映射,相当于一个数据存储映射表)。将 LTFS 磁带插入驱动器时,软件可以读取第一个分区并快速显示磁带的内容。
  • 第二个分区partion1:空间很大,为数据存储空间,也就是实际的数据的存储最终归宿。有一点需要注意:在数据分区中,磁带内容仍然通过数据块和文件标记格式进行存储,只是分区信息对外解释为LTFS文件系统,并不是对物理磁带的存储技术本质改变,只是让磁带更加的容易使用。

对比 LTFS 出现之前存在的一些弊端,从LTFS出现后就改变了:

  • 磁带仅按照顺序记录数据块和文件标记,没有用于查找特定文件的目录,所有的映射关系(哪些块属于哪些文件的映射)都是由外部应用程序(如备份和归档存储管理软件)维护和管理。如果映射关系丢失,磁带上的数据虽然还在,但是很难被识别和使用了。这个也是LTFS文件系统提供的最大好处。
  • 由于磁带的串行性质,没有固有的“就地”更新功能。如果重写了某个块,则所有后续块也必须重写。在磁带的当前端更新文件标记是不切实际的,因为每次添加数据时,文件标记都会移动到新的物理位置。但是对于 LTFS,磁带没有这种限制,可以根据需要修改索引分区,而不会影响数据分区。

在LTFS文件规范文档中,定义了数据存储的格式,下面是一个完整的LTFS文件格式示例:

针对上图有一些关键的信息点,小编总结如下:

  • 如上文提到,一个完整的LTFS逻辑卷包括两个分区:Index Partition和Data Partition。
  • 每个分区包括Lable Construct标记结构和Content Area内容区域。其中,Lable Construct标记结构由VOL1 Lable逻辑卷标记和LTFS Lable文件标记组成,中间有File Mark间隔。Content Area内容区域则包含index索引和后续的连续数据块组成,中间也有File Mark间隔。

上面说了这么多LTFS的好处和实现原理,还有一个很容易让人误解的地方,需要提醒下。

基于前面的信息,你会不会觉得LTO磁带+LTFS就可以真的像HDD硬盘一样使用了?其实不然,这个也是最容易误解的地方。

HDD硬盘或者叫做磁盘,是随机访问的介质;而磁带不是,在数据分区内部还是要求顺序写入的数据。如果在LTO磁盘格式化成LTFS文件系统后,如果直接当作HDD磁盘执行随机访问,可能会出现IO严重慢的情况。

整体来说,LTFS 是一项重大突破,可以让磁带像磁盘一样使用方便,这里重点是“像”,但它并不能取代磁盘读写能力和介质特性。客观对待就好!

最后,如果大家想了解LTFS文件系统的代码,可以参考开源的github链接https://github.com/LinearTapeFileSystem/ltfs

根据github的开源内容,有条件的话还可以动手尝试:

采用ltfs -o device_list命令,可以查看磁带的LTFS文件系统格式化后盘符,类似下图示例,看到三个磁带的字符设备:/dev/sg43, /dev/sg38, /dev/sg37,LTFS文件系统的版本是2.4.0

使用# mkltfs -d 9A700L0077命令可以执行磁带的格式化,

格式化完整后,还可以使用ltfs -o devname=9A700L0077 /ltfs完成文件目录的挂载。这些操作跟linux系统下其他的文件系统操作方式也类似,只是命令不同。

相关文章
|
4天前
|
存储 索引
操作系统基础:文件系统基础【上】
操作系统基础:文件系统基础【上】
|
4天前
|
数据安全/隐私保护 索引 Windows
操作系统基础:文件系统基础【下】
操作系统基础:文件系统基础【下】
|
4天前
|
存储 Unix 程序员
非常详细!操作系统基础【文件系统实现】
非常详细!操作系统基础【文件系统实现】
140 0
|
4天前
|
存储 块存储 索引
建议收藏!操作系统基础:文件系统实现【下】
建议收藏!操作系统基础:文件系统实现【下】
|
4天前
|
存储 Unix 程序员
建议收藏!操作系统基础:文件系统实现【上】
建议收藏!操作系统基础:文件系统实现【上】
|
4天前
|
存储
文件系统设计与实现中
文件系统设计与实现中
23 0
|
4天前
|
存储 文件存储
文件系统设计与实现上
文件系统设计与实现上
54 6
文件系统设计与实现上
|
安全 Unix Linux
关于嵌入式Linux系统flash分区设计及文件系统格式选择的一些浅见
嵌入式系统应用程序升级是比较频繁的,对于flash的合理划分与文件系统选型就显得尤为关键。
271 0
|
存储 缓存 Linux
工作多年,Linux文件系统还不太了解?
我们作为“码农”,每天都在接触编程,接触linux系统,那么常见的Linux目录和文件都有哪些,它们又有什么作用呢?
工作多年,Linux文件系统还不太了解?
|
Linux
下一代Linux文件系统Btrfs走向成熟
从Linux内核2.6.29版开始,Btrfs文件系统正式落户Linux系统。最近,科技专栏作家Sean Michael Kerner撰文认为,作为下一代Linux文件系统,Btrfs已经逐渐成熟,或许会慢慢取代目前流行的缺省文件系统Ext3和Ext4等。
1063 0