标签: ext4

如何找到最大的(在条目中,而不是大小)ext4 目录?

Ubuntu 10.04.3 LTS x86_64,我看到以下内容/var/log/messages

EXT4-fs warning (device sda3): ext4_dx_add_entry: Directory index full!
Run Code Online (Sandbox Code Playgroud)

来自 dumpe2fs 的相关信息:

Filesystem features:      has_journal ext_attr resize_inode dir_index filetype
  needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg
  dir_nlink extra_isize
Filesystem flags:         signed_directory_hash
Free blocks:              165479247
Free inodes:              454382328
Block size:               2048
Inode size:               256
Run Code Online (Sandbox Code Playgroud)

我已经阅读了一些其他问题,例如ext3_dx_add_entry: Directory index full and rm on a directory with Millions files;这些让我觉得在某个地方一定有一个包含大量项目的目录。

由于它是一个相当复杂的目录组织,我有一个基本问题:如何找到生成这些消息的目录?

linux ext4

6
推荐指数
1
解决办法
3157
查看次数

在 81 小时调整大小 2fs 并计数

设置:运行在 MDADM LVM 之上的 RAID6 (MDADM) 加密设置中的 12 个 1TB 驱动器在 LVM 上的加密驱动器 EXT4 上运行

背景:我向 RAID 添加了一个新驱动器(从 11 个驱动器增加到 12 个驱动器),并通过层(MDADM 等)“冒泡”以重新调整 ext4 分区的大小。这台机器用作摄影的集中存储库和备份服务器(适用于 Windows 和 Mac 机器),因此将其关闭以添加驱动器并等待调整大小,一切都不是真正的选择。所以我几天前就开始了resize操作。HTOP 报告 resize2fs 操作现在运行了 81 小时。DMESG 和 syslog 都清晰,驱动器仍然可以访问。resize 命令报告它已开始对分区进行联机调整大小,因此该进程正在运行,并且它正在 100% 地烧毁我的一个核心。

问题:手术持续这么长时间是正常的还是出现了可怕的错误?我该从哪里开始寻找麻烦的迹象?

ubuntu filesystems ext4

6
推荐指数
1
解决办法
5534
查看次数

Centos 6.3 安装 reiserFS 支持

我正在尝试将现有的 ext4 分区更改为 Centos 6.3 64 位中的 reiserFS。

我已将内核更新为 Centos Plus:

首先,我更新了/etc/yum.repos.d/CentOS-Base.repo

然后我跑了yum ypdate,我的内核更新为 Centos Plus:

[root@vappsil disk]# uname -r
2.6.32-279.11.1.el6.centos.plus.x86_64
Run Code Online (Sandbox Code Playgroud)

然后,我已将其添加到 /etc/yum.repos.d/CentOS-Base.repo

但是当尝试执行时:

yum install reiserfs-utils
Run Code Online (Sandbox Code Playgroud)

我得到:

No package reiserfs-utils available.
Run Code Online (Sandbox Code Playgroud)

如何安装 reiserFS-utils 包来创建 reiserFS 分区?

linux ext4 centos yum reiserfs

6
推荐指数
3
解决办法
5474
查看次数

虚拟机上的 Ext4 缓存选项

我正在尝试加速用于开发/自动化测试环境的虚拟机的站立,并希望验证有关磁盘写入缓存的一些假设。

ext4用于 VM 中的根文件系统,我并不真正关心断电情况。如果断电和磁盘损坏,整个机器可以在几分钟内重建。对我来说,这意味着可以安全地应用以下选项,它应该对应用程序没有影响——它们只会影响缓冲数据写入磁盘本身的方式,但缓存的内存表示将始终准确:

  • 无障碍
  • 数据=写回
  • 没有
  • 提交=3600

这样对吗?是否还有其他 ext4 参数我应该查看以提高性能?

virtualization performance ext4

6
推荐指数
1
解决办法
1147
查看次数

ext4 文件系统需要分区吗?

我在 arch wiki 上读到,不建议在磁盘上创建 ZFS 文件系统之前对其进行分区。我搜索但没有找到任何关于 ext4 的声明。

所以我的问题:

  • 我可以将 ext4 文件系统放在磁盘上进行存储(不是系统的根分区)而不对其进行分区吗?
  • 有什么缺点?

linux partition filesystems ext4

6
推荐指数
3
解决办法
3956
查看次数

获取错误:特定文件名的“设备上没有剩余空间”

我有一个 ext4 卷,在特定目录中有很多文件。

每当我尝试在其中创建具有特定名称的文件时,都会收到“设备上没有剩余空间”错误。

$ touch /data/lake/http:____images__br037__319854_366_tp.jpg
touch: cannot touch ‘/data/lake/http:____images__br037__319854_366_tp.jpg’: No space left on device
Run Code Online (Sandbox Code Playgroud)

如果我更改文件名的一个字母,它就可以工作。

这是该卷的磁盘使用情况和 inode 使用情况:

# df -h /dev/xvdf
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvdf       985G  679G  256G  73% /data

# df -i /dev/xvdf
Filesystem       Inodes    IUsed    IFree IUse% Mounted on
/dev/xvdf      65536000 24751661 40784339   38% /data
Run Code Online (Sandbox Code Playgroud)

我还运行了 fsck 以确保它不是磁盘损坏问题。

# e2fsck -y /dev/xvdf
e2fsck 1.42.9 (4-Feb-2014)
/dev/xvdf: clean, 24751661/65536000 files, 182020406/262144000 blocks
Run Code Online (Sandbox Code Playgroud)

有人可以帮助我如何进一步调试它。

linux filesystems ext4 hard-drive

6
推荐指数
1
解决办法
1815
查看次数

df 报告错误的文件系统可用空间 (ext4)

我正面临 .s 报告的 fs 空间错误的问题df

我们谈论的是裸机 Ubuntu 14.04 服务器,/分区由 LVM 管理。

报告df的大小与 fs 超级块报告的大小不同。还从du -skh(在与/分区相关的目录上)计算大小证明df显示的结果不正确。

这是报道的内容df

Filesystem                  Size  Used Avail Use% Mounted on
/dev/mapper/rootvg-lv_root   20G   16G  2.8G  86% /
Run Code Online (Sandbox Code Playgroud)

这是超级块报告的内容(3616906*4096/1024**2=14128 MB free)

Last mounted on:          /
Filesystem magic number:  0xEF53
Filesystem state:         clean
Filesystem OS type:       Linux
Inode count:              1290240
Block count:              5242880 << exactly 20 GB
Reserved block count:     227170
Free blocks:              3616906 …
Run Code Online (Sandbox Code Playgroud)

ubuntu ext4 lvm df

6
推荐指数
1
解决办法
7404
查看次数

Linux KVM 客户端文件系统(BTRFS?)

在我们公司,我们在多台服务器上有很多 kvm 客户端,大多数客户端都运行 ubuntu 16.04 及其主机系统。

选择的文件系统变成了 EXT4,用于客户端和主机。最近我使用 BTRFS 提供的一些很棒的快照功能来设置一个带有增量备份的备份服务器。

一些研究提供了一条线索,KVM 主机从不使用 BTRFS,因为 FS 的碎片会减慢客户端的速度,直到它们最终甚至冻结。

在 KVM 客户端上使用 BTRFS 有什么建议/做/不做吗?

我们正在重新考虑客户端和主机的 FS 选择,使用 XFS 是否比 EXT4(客户端/主机或仅一侧)有优势?

virtualization zfs ext4 btrfs kvm-virtualization

6
推荐指数
1
解决办法
5316
查看次数

使用外部日志时禁用 ext4 写屏障

我目前正在尝试不同的方法来使用快速 NVMe 设备提高 Debian 上相当大的、基于旋转磁盘的软件突袭 (mdadm) 阵列的写入速度。

发现使用一对这样的设备(raid1,镜像)来存储文件系统的日志会产生有趣的性能优势。我用来实现这一点的安装选​​项是noatime,journal_aync_commit,data=journal.

在我的测试中,我还发现添加该barrier=0选项在写入性能方面提供了显着的好处。但是,我不确定在我的特定文件系统配置中使用此选项是否安全。这是内核文档关于 ext4 写屏障的说明:

写屏障强制对日志提交进行适当的磁盘排序,使易失性磁盘写入缓存可以安全使用,但会降低一些性能。如果您的磁盘以一种或另一种方式由电池供电,则禁用屏障可以安全地提高性能。

我使用的特定 NVMe 设备是Intel DC P3700,它具有内置断电保护功能,这意味着在意外关机的情况下,由于储备能量,临时缓冲区中仍然存在的任何数据都可以安全地提交到 NAND 存储贮存。

所以我的问题是,如果日志存储在具有电池后备缓存的设备上,而文件系统的其余部分本身位于没有此功能的磁盘上,我是否可以安全地禁用 ext4 写屏障?

filesystems ext4 mdadm software-raid nvme

6
推荐指数
1
解决办法
1722
查看次数

如何在不写入千兆字节的零的情况下编写稀疏 Linux (EXT4) 磁盘映像?

我有一个 64 GB 的 Linux 磁盘映像,分区中有大约 50 GB 的未使用空间。该文件是稀疏的,因此它只需要大约 14 GB 的磁盘空间。

但是如果我dd是图像,它会写入完整的 64 GB,这需要很长时间。

有什么方法可以对dd if=os.img of=/dev/sdb这个图像做等效的处理,而不必写 50 GB 的零?

是否有足够智能的工具来执行此操作,即具有 EXT4 文件系统意识的成像工具?

linux filesystems ext4 disk-image

6
推荐指数
1
解决办法
1959
查看次数