问题标签 [ext3]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
251 浏览

filesystems - ext3 是否以有序模式记录间接/双间接块?

在 ext3 文件系统中,如果是日志模式,间接块、双重间接块和三重间接块是否会被视为元数据块并被记录?

0 投票
2 回答
614 浏览

sqlite - CentOS 6.3 上的 SQLite 写入性能比 MacOSX 10.8.2 慢约 10 倍

摘要:与 MacOSX 10.8.2 相比,CentOS 6.3 上的插入/删除/更新事务花费的时间是 MacOSX 10.8.2 的 10-15 倍

我正在使用 Perl (DBD::SQLite 1.37) 中的 SQLite (3.7.12)。我的应用程序有很多地方在事务中进行多次写入(删除、更新和插入)。

我一直在比较 3 台机器之间的时间:

  • MBP:2010 MacBook Pro 带普通磁盘
  • MBA:2011 年配备 SSD 的 MacBook Air
  • CentOS 6.3 服务器(AMD Opteron 3250,1TB 软件 RAID,4 核,8GB RAM)

与 MBP 和 MBA 相比,CentOS 服务器上的事务花费大约 10 到 15 倍的时间。正如预期的那样,MBA 更快一些,因为它有一个 SSD。如果我关闭 pragma 同步,它就像预期的那样又好又快。

我们每次都运行完全相同的测试序列,并最终得到相同的数据库。在测试运行时,CentOS 机器上几乎没有其他(值得注意的)运行。

以低级磁盘写入性能为基准,CentOS 机器优于其他机器。我接下来应该看哪里?

0 投票
0 回答
526 浏览

linux - 更改 ext4 文件系统上的 ondisk inode

我正在使用libext2fs在磁盘 inode 上进行修改,但它不起作用。我正在安装的文件系统(EXT4)上执行此操作。我尝试e2fsck在已安装的文件系统上运行,它似乎可以工作(尽管它会发出警告)。

以下是我的代码。

它运行没有错误,但是当我对 testfile.txt 进行统计时,我没有看到任何变化。

任何想法 ?或替代品?

0 投票
2 回答
1796 浏览

java - 如何在 Java 中管理 Linux 文件权限?

是否有任何机制来获取和设置文件/目录权限?

例如,我想以 shell 方式显示文件的权限:

是否可以使用 Java 做到这一点?

  • 我知道类中有一些方法File可以知道文件canExecute,canReadcanWrite, 但 AFAIK 此信息仅适用于当前用户。我需要知道整个八进制数,例如 755,所以我需要从用户、组和其他人那里获取它。
  • 我知道 Java7 带来了 Posix 操作,但是如何使用更小的 JRE 来做到这一点?
  • 我不想使用ls, 或之类的命令chmod
0 投票
1 回答
209 浏览

filesystems - EXT3 文件操作

我正在尝试了解 Linux 如何处理 EXT3 文件。我正在查看fs/ext3/file.c存在处理文件的文件操作的位置:

例如,我怎样才能找到 .open 何时被函数“dquot_file_open”替换?我应该遵循以下定义的系统调用fs/open.c

还是我应该看看其他功能?

我正在为用户模式 ​​Linux 开发 Linux 3.7.6

0 投票
2 回答
214 浏览

permissions - 如何在不同的机器上安装一个 ext3 格式的 pendrive?

我在两台不同的机器上安装 pendrive 时遇到问题(一台使用 Lubuntu 13.04,另一台使用 Lubuntu 12.04,如果相关的话)。我必须一直 chown -R,例如,在家里我将数据复制到,然后如果我想在工作中使用它,我必须在那台机器上 chown -R 才能在上面写,然后当我把它带回家,我必须再次 chown -R 才能在上面写字。

0 投票
2 回答
2171 浏览

c - 如何在 C 中快速创建大文件?

我正在研究文件系统性能,但我对如何在 C 中快速创建一个非常大的文件感到困惑。基本上,我试图通过获取这些元数据并将其存储到一个文件系统的文件夹和文件中来重新创建一个文件。这是提取过程。稍后,我想使用我之前提取的元数据将这些文件夹和文件恢复到现有的新文件系统(在本例中为 ext3)。

在还原过程中,我已经成功创建了所有文件夹。但是,我对如何立即创建文件有点困惑。对于我要创建的每个文件,我都有一个文件大小和一个文件路径。我只是对如何快速设置文件大小感到困惑。

我使用了truncate,但是从文件系统的角度来看,这似乎不会影响磁盘空间的使用。

谢谢!

0 投票
1 回答
886 浏览

filesystems - 在 linux 中修改文件系统的步骤指南

我打算对 XFS 文件系统进行一些更改。

是否有关于这样做的步骤的文档?我尝试了谷歌,但没有发现任何用处。我对所涉及的步骤有一个粗略的了解(见下文),但我正在寻找详细的描述,以免我陷入简单的事情。

我脑海中的步骤:

  1. 确保我的操作系统当前没有使用 XFS(没有格式化为 XFS 的目录)
  2. 为我的内核版本下载 XFS 的源代码
  3. 更改源文件
  4. 编译修改后的源代码(这一步需要一些conf文件,我不知道从哪里得到)
  5. rmmod xfs 模块,然后 insmod xfs 模块,以便在系统中反映更改。
  6. 创建一个新分区,使用 XFS 对其进行格式化并测试我的更改后是否一切正常。

期待一些有用的指点。

如果指针适用于 ext3 或 4 等其他 FS,则可以,因为我相信细节不会因 FS 而异。

谢谢

0 投票
2 回答
5040 浏览

hadoop - hadoop中什么样的JBOD?和 COW 与 hadoop?

hadoop新手,只设置了3个debian服务器集群进行练习。

我正在研究 hadoop 的最佳实践并遇到:JBOD no RAID Filesystem: ext3, ext4, xfs - 你在 zfs 和 btrfs 中看到的那些花哨的 COW 东西都没有

所以我提出这些问题...


我在任何地方读到 JBOD 都比 hadoop 中的 RAID 好,最好的文件系统是 xfs 和 ext3 和 ext4。除了文件系统的东西,这完全有道理,为什么那些是最好的......你如何实现这个 JBOD?如果你自己进行谷歌搜索,你会看到我的困惑,JBOD 暗示了一个线性附件或只是一堆磁盘的组合,有点像逻辑卷,至少有些人是这样解释的,但 hadoop 似乎想要一个不结合的 JBOD。没有身体在上面展开……

  • 问题 1)hadoop 世界中的每个人都对 JBOD 意味着什么,你如何实现它?
  • 问题2)是否就像将每个磁盘安装到不同的目录一样简单?
  • 问题 3) 这是否意味着 hadoop 在 JBOD 上运行得最好,其中每个磁盘都简单地挂载到不同的目录?
  • 问题 4)然后您只需将 hadoop 指向那些 data.dirs 吗?

  • Question5) 我看到 JBODS 有两种方式,每个磁盘单独挂载,或者磁盘的线性连接,可以通过 mdadm --linear 模式完成,或者 lvm 我打赌也可以,所以我看不到大处理那个......如果是这种情况,可以使用 mdadm --linear 或 lvm 因为JBOD人们指的是磁盘的连接,那么这是“JBOD”或线性连接磁盘的最佳方式Hadoop?


这是题外话,但是有人可以验证这是否正确吗?使用cow,写时复制的文件系统,如zfs和btrfs只会减慢hadoop,但不仅cow实现对hadoop来说是浪费。

  • 问题 6) 为什么 COW 和 RAID 之类的东西在 hadoop 上是一种浪费?我认为好像您的系统崩溃了,并且您使用 if 来恢复它,当您恢复系统时,hdfs 已经发生了很多变化,它可能只会认为那台机器有故障,最好从头开始重新加入它(将它作为一个新的数据节点启动)......或者hadoop系统将如何看到旧的数据节点?我的猜测是它不会认为它是旧的或新的,甚至是数据节点,它只会将其视为垃圾...... Idk......

  • 问题 7)如果 hadoop 发现一个数据节点从集群中掉下来,然后数据节点又恢复在线,数据稍微旧一点,会发生什么?数据必须有多旧?这个题目怎么样?


重新提出问题 1 至 4

  • 我刚刚意识到我的问题很简单,但我很难解释它,我不得不把它分成 4 个问题,但我仍然没有从听起来很聪明的人那里得到我正在寻找的答案,所以我必须以不同的方式重新问..

  • 在纸上我可以很容易地或用图画...我会再次尝试用文字..

  • 如果对我在 JBOD 问题中所问的内容感到困惑......

  • ** 只是想知道大家在 hadoop 世界中一直提到的 JBOD 是什么 **

  • JBOD 与 hadoop 的定义不同,然后在正常世界中,我想知道如何实现 hadoop 的最佳方法是在 jbods 的 concat(sda+sdb+sdc+sdd) 上,或者只保留磁盘(sda,sdb,sdc ,sdd)

  • 我认为下面的图形表示解释了我最好的要求

(JBOD 方法 1)

  • 正常世界:jbod 是磁盘的串联 - 那么如果您要使用 hadoop,您会将 data.dir(其中 hdfs 虚拟站点)覆盖到此磁盘串联内的目录上,所有磁盘也将显示为 1.. . 所以如果你有 sda 和 sdb 和 sdc 作为你节点中的数据磁盘,你会让 em 显示为某个实体 1(使用主板的硬件或 mdadm 或 lvm),它是 sda 和 sdb 和 sdc 的线性连接. 然后,您可以将此 entity1 挂载到 Unix 命名空间中的文件夹,例如 /mnt/jbod/,然后设置 hadoop 以在其中运行。

  • 文本摘要:如果磁盘 1 和磁盘 2 和磁盘 3 分别为 100gb 和 200gb 和 300gb,那么这个 jbod 将是 600gb 大,并且来自这个节点的 hadoop 将获得 600gb 的容量

* TEXTO-GRAPHICAL OF LINEAR CONCAT OF DISKS BEING A JBOD: * disk1 2 and 3 used for datanode for hadoop * disk1 is sda 100gb * disk2 is sdb 200gb * disk3 is sdc 300gb * sda + sdb + sdc = jbod of name entity1 * JBOD MADE ANYWAY - WHO CARES - THATS NOT MY QUESTION: maybe we made the jbod of entity1 with lvm, or mdadm using linear concat, or hardware jbod drivers which combine disks and show them to the operating system as entity1, it doesn't matter, either way its still a jbod * This is the type of JBOD I am used to and I keep coming across when I google search JBOD * cat /proc/partitions would show sda,sdb,sdc and entity1 OR if we used hardware jbod maybe sda and sdb and sdc would not show and only entity1 would show, again who cares how it shows * mount entity1 to /mnt/entity1 * running "df" would show that entity1 is 100+200+300=600gb big * we then setup hadoop to run its datanodes on /mnt/entity1 so that datadir property points at /mnt/entity1 and the cluster just gained 600gb of capacity

..另一个观点是这个..

(JBOD 方法 2)

  • 在 hadoop 中,在我看来,他们希望每个磁盘都是分开的。因此,我会将 unix 命名空间中的磁盘 sda 和 sdb 和 sdc 挂载到 /mnt/a 和 /mnt/b 和 /mnt/c ......从网上阅读看来,许多 hadoop 专家将 jbods 归类为只是一个一堆磁盘,所以对于 unix,它们看起来像磁盘而不是磁盘的连接......然后当然我可以结合逻辑卷管理器(lvm)或 mdadm(以突袭或线性方式)成为一个实体, jbod 首选线性)......但是......不,我们不要将它们组合起来,因为在 hadoop 世界中,jbod 似乎只是它们自己坐在一堆磁盘......

  • 如果磁盘 1 和磁盘 2 和磁盘 3 分别为 100gb 和 200gb 和 300gb,则每个挂载 disk1->/mnt/a 和 disk2->/mnt/b 和 disk3->/mnt/c 将分别为 100gb 和 200gb 并且分别为 300gb 大,来自该节点的 hadoop 将获得 600gb 容量

TEXTO-GRAPHICAL OF LINEAR CONCAT OF DISKS BEING A JBOD * disk1 2 and 3 used for datanode for hadoop * disk1 is sda 100gb * disk2 is sdb 200gb * disk3 is sdc 300gb * WE DO NOT COMBINE THEM TO APPEAR AS ONE * sda mounted to /mnt/a * sdb mounted to /mnt/b * sdc mounted to /mnt/c * running a "df" would show that sda and sdb and sdc have the following sizes: 100,200,300 gb respectively * we then setup hadoop via its config files to lay its hdfs on this node on the following "datadirs": /mnt/a and /mnt/b and /mnt/c.. gaining 100gb to the cluster from a, 200gb from b and 300gb from c... for a total gain of 600gb from this node... nobody using the cluster would tell the difference..

问题摘要

** 大家指的哪种方法是hadoop这种组合jbod磁盘分离的最佳实践- 根据在线文档,这仍然是一个jbod?**

  • 这两种情况都会获得hadoop 600gb ...它只是1。看起来像一个concat或一个实体,它是所有磁盘的组合,我一直认为这是一个jbod ...或者它就像每个磁盘的2在系统被挂载到不同的目录时,最终结果与hadoop容量方面的结果都是一样的......只是想知道这是否是提高性能的最佳方式
0 投票
1 回答
959 浏览

filesystems - ext3 journal inode number

I'm trying to understand more about the ext3 filesystem and was going through the source code when I had a doubt. Would it be possible to figure out the journal inode number for a given ext3 disk using any utility that is out there?