今天遇到了一个有我疑惑的服务器的情况。 这是一个场景: 系统日志显示: 内核:EXT3-fs警告(设备sdb2):ext3_dx_add_entry:目录索引已满! 发现罪魁祸首是一个有910万个文件的目录。 我知道这是900万个文件,因为我用它来删除它们: perl -e 'my $i=0;for(<*>){$i++;((stat)[9]<(unlink))} print "Files deleted: $i\n"' 完成后,我跑了ls – 大约花了3分钟,并返回了1个文件。 几分钟后,一批新的 – 又有910万个文件出现在同一个目录中,syslog再次显示: 内核:EXT3-fs警告(设备sdb2):ext3_dx_add_entry:目录索引已满! 我再次运行删除,完全相同的情况重演。 几分钟后,新一批超过900万的文件。 刚刚出现的文件是旧的(约3个月大)。 有人可以确认这是否是ext3的预期行为? 目录索引满了,当它已满时 新文件允许创build,但不能添加到索引 新文件被caching“某处” 一旦槽被释放,新的文件被添加到索引(因此将显示与例如ls) 我怀疑这是怎么回事,但我目前没有任何证据。 任何反馈赞赏! 请注意这个问题不是关于如何解决这个问题,而是关于理解这里发生的事情。
有没有办法在CentOS / RHEL 5.3下更改ext3文件系统上的stride和stripe-width选项? 在我看到的安装过程中,没有办法通过anaconda来指定它,而当我看到在Ubuntu下可用的tune2fs的-E选项时,在CentOS的手册页中没有看到它。 我曾尝试在CentOS上使用-E标志,如果我尝试使用它,它会拒绝标志为unknown。 任何人都有办法做到这一点重新安装吗?
我有一个500GB的外部驱动器。 它有两个分区,每个分区大约250GB。 我删除了第一个分区。 我想把第二个移到左边,所以它消耗了100%的驱动器。 如何在没有任何GUI工具的情况下完成这个工作(仅限CLI)? FDISK Disk /dev/sdd: 500.1 GB, 500107862016 bytes 255 heads, 63 sectors/track, 60801 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0xc80b1f3d Device Boot Start End Blocks Id System /dev/sdd2 29374 60801 252445410 83 Linux 分手 Model: ST350032 0AS (scsi) Disk /dev/sdd: 500GB Sector size (logical/physical): […]
我有一个Ext3文件系统坐在LVM卷组上。 分区在格式化之前在线resize是默认启用的。 是否有可能在事实之后打开这个function,比如日志logging,还是必须从一开始就存在?
我试图用e2fsck修复一个9TB的文件系统,但是大约10%左右的扫描总是失败,出现以下错误: Error storing directory block information: … Memory allocation failed e2fsck: aborted 该机器运行Ubuntu 10(64位),并具有4 GB的内存。 我注意到,在检查期间,尽pipetop只报告了应用程序的22%的使用,并且内存可以被drop_caches回收,但是在检查期间ram几乎耗尽。 交换空间没有被触及。 无论如何,我已经通过给e2fsck一个scratch_files的位置来解决这个问题了。 另外,我还设置了swapon -a ,这也延长了e2fsck的崩溃时间。 如何调整e2fsck,使其不会崩溃? 有没有更好的方法来修复我的FS?
我想从我的ext3文件系统列出已删除的文件。 带-ld选项的debugsfs命令,假设列出已删除的文件,但只列出当前存在的文件和文件夹。 是没有任何第三方工具恢复已删除文件的替代方法。 谢谢
在将文件传送到Amazon S3存储桶之前,我正在使用目录作为文件的暂存区域。 这个暂存目录没有子目录结构/ a / b / c或/ year / month / day …它只是文件/cdn/file1.png /cdn/file2.png等。 我在这个目录中有大约64,000个文件,现在它的大小是2.8GB。 我的问题是,这会打破吗? 我知道这不是最佳的,我正在并行工作来解决这个问题,但这可能需要时间来迁移。 我期待这样的一年,这意味着在一个目录内总共大约40万个文件。 想法? 谢谢。
有谁知道Solaris 11(Sparc版本)是否支持挂载ext3 / ext4甚至更好的Btrfs卷? 我在网上find的大部分主题都是过时的(2006/2007),并且引用了对于面向Linux的FS非常不友好的Solaris版本。 我希望情况发生了变化,所以如果你有任何信息或指针,我会很感激。 感谢每一个进展,
在RedHat 6服务器上,我们遇到了在线调整ext4文件系统的问题。 在只有/ dev / sda的情况下,我们在卷组中有13GB,但在一个36GB的逻辑卷上需要20GB以上的空间。 将/ dev / sdb添加到卷组,并将文件系统扩展(lvextend)并将其大小调整为(resize2fs)为56GB。 在resize期间没有错误消息,操作系统报告了新的大小。 有问题的逻辑卷承载IBM HTTP Server(apache 2.2)的安装,用于一些8个不同的Web服务器的configuration和日志文件。 今天早上文件系统使用增长超过36GB。 首先发生的事情是,Web服务器停止日志logging(发现后),而Web服务器保持运行没有问题。 2.5个小时后,关于日志轮换和其他写入文件系统的事情开始冻结。 含义:networking服务器停止了stream量,所有进程都停留了,试图“挂掉”一个日志文件将挂起,并且不能被中断。 服务器的负载从0.10到4000(是的…) – 主要与iowait有关(看起来)。 解决办法是closuresnetworking服务器 – kill -9是唯一的方法,并重新启动服务器。 卸载文件系统,做了一个fsck(没有错误),然后重新开始。 没有问题,因为。 当磁盘(lv)的使用增长到36GB以前,我们可以用logging停止的时间来精确地计时错误。 其他文件系统上的服务似乎运行良好,其中包括操作系统。 在我们看到的/ var / log / messages中,即: kernel: INFO: task httpd:<pid> blocked for more than 120 seconds. kernel: "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. kernel: […]
多年来,我在Linux,Windows和Mac OS X上调整了许多分区的大小 – 但总是使用GUI。 但是,到了我的数据中心放置在我的服务器上的预设分区大小不合适的时候,我需要调整生产服务器的磁盘大小。 我可以摆弄它,也许还行,但鉴于这是一个生产服务器,我想得到一些正确的方法来做到这一点的build议。 我有KVM over IP访问,所以如果最好让服务器脱机并启动一个救援分区,我可以做到这一点。 root [/var/lib/mysql]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda2 9.9G 2.1G 7.3G 23% / tmpfs 7.8G 0 7.8G 0% /dev/shm /dev/sda1 99M 77M 18M 82% /boot /dev/sda8 884G 463G 376G 56% /home /dev/sda3 9.9G 8.0G 1.5G 85% /usr /dev/sda5 9.9G 9.1G 308M […]