标签: ext4

ext4 中的磁盘空间开销

我想知道是否有一些规则(或公式)可以用来确定文件系统在 ext4 分区中将使用多少磁盘空间。例如,在 100 GB 的分区中,我实际可以使用多少?它是否取决于其他参数,如 inode 大小等?

linux filesystems ext4 disk-space-utilization inode

9
推荐指数
3
解决办法
1万
查看次数

df 报告 Ext4 分区的可用空间错误

我的系统是 CentOS 6 x86_64,根分区格式为 ext4。 df报告大约 3Gb 为已用空间:

Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/md1              20158260   3433724  15700540  18% /
Run Code Online (Sandbox Code Playgroud)

du -sm -x /声称实际使用的 Gb 少于一个 Gb:

[root@xxxx ~]# du -sm -x /
948     /
Run Code Online (Sandbox Code Playgroud)

我想知道这里发生了什么。重新启动后使用数量立即更改。文件系统声称它是干净的,日志中没有错误。我发现了这个,但它没有解释问题的根源。我应该重新格式化分区吗?有没有办法追踪这种额外的使用情况?

我还执行了以下操作以检查du在非空挂载点上的挂载没有隐藏任何数据:

[root@xxxx ~]# mount -o bind / /mnt/root
[root@xxxx ~]# du -sm /mnt/root/
949     /mnt/root/
[root@xxxx ~]#
Run Code Online (Sandbox Code Playgroud)

不,这不是我的情况。

ext4 centos

9
推荐指数
2
解决办法
2万
查看次数

每天写入 5.5GB 到 1.2GB 根卷 - 是以前水平的 4 倍

问题: 我最近改造了我的一台服务器,它在使用前进行了测试,并且运行良好,但是,几天前,我注意到对根卷的写入量大约是通常的 4 倍。这不是性能问题 - 服务器运行良好。

我的改造相当广泛(完全重建),所以就原因而言,我没有太多事情要做。简而言之,我的变化包括:

  • 升级 Amazon 的 Linux(从 2011.02 到 2011.09) - 这也导致根卷从 ext3 更改为 ext4
  • 从 php-fcgi 迁移到 php-fpm(目前使用 tcp)
  • 从反向代理(nginx -> apache)设置移动到仅 nginx
  • 用纯 ftpd 替换 vsftpd
  • 用 opendkim 替换 dkim-proxy
  • 用 ispconfig 替换 webmin
  • 添加清漆作为动态文件的缓存层(对于这些网站获得的点击量来说太过分了,但这是一个实验)
  • 添加交换分区

基本设置:

  • 我的交换空间安装自己的EBS卷上-在写入到交换卷忽略不计-我已经基本上打折以此为原因(有充足的可用内存-无一不freeiostat显示最小的交换使用)。
  • 我的数据(mysql 数据库、用户文件(网站)、所有日志(来自 /var/log)、邮件和清漆文件在他们自己的 EBS 卷上(使用mount --bind)。底层 EBS 卷安装在/mnt/data
  • 我剩下的文件——操作系统和核心服务器应用程序(例如 nginx、postfix、dovecot 等)——是根卷上唯一的东西——总共 1.2GB。

新设置比旧系统运行“更流畅”(更快、更少内存等),并且已经稳定了 20 天(10 月中旬)——据我所知,提升的写入一直存在.

与我的预期相反,我的读取量很低(我的读取量约占写入量的 1.5%,无论是在我的根卷上的块还是字节数)。在过去的几天里,我没有对根卷(例如新安装等)进行任何更改,但写入量仍然比预期高得多。

目标:确定对根卷的写入增加的原因(本质上,确定它是一个进程(以及哪个进程)、不同的(ext4)文件系统或其他问题(例如内存))。

系统信息:

  • 平台:亚马逊的EC2(t1.micro)
  • O/S:Amazon's Linux 2011.09(CentOS/RHEL衍生)
  • Linux 内核:2.6.35.14-97.44.amzn1.i686
  • 架构:32位/i686
  • 磁盘:3 …

ext4 io amazon-ebs alternative-php-cache

9
推荐指数
1
解决办法
1391
查看次数

在不丢失数据的情况下将文件系统格式从 xfs 更改为 ext4

我在笔记本电脑上运行了一个全新的 Lucid Lynx (Ubuntu 10.04)。我将文件系统定义为:

  • 挂载点 / ext4 (46 Gb)
  • jfs 上的挂载点 /home (63 GB)
  • 交换为 3 Gb

我在没有交流电源的情况下让机器过夜去做一些任务。第二天早上我发现它处于待机状态,任务完成,但无法访问文件系统。它给了我 I/O 错误

看来jfs和standby有问题。

无论如何,为了避免任何麻烦,我想将此挂载点从 jfs 格式移动到 ext4。

我可以在不丢失数据的情况下执行此操作,并且无需在转换完成之前将数据放置在临时位置吗?

很抱歉提到这一点,但我记得在 Windows 时代,我们会将 FAT16 更改为 FAT32 或将 FAT32 更改为 NTFS,而不必丢失数据。我希望这在 Linux 上可用。

更新 /home 文件系统是 xfs 而不是 jfs,而且由于某种原因,这个文件系统似乎有一个错误,我不得不重新安装操作系统两次,直到我最终使用整个 /

但是,作为结论,似乎没有办法进行转换

linux ubuntu xfs ext4 jfs

8
推荐指数
2
解决办法
5万
查看次数

突然大规模文件系统损坏的原因?(“根 inode 不是目录”)

我有一台运行 Maverick 的笔记本电脑(很高兴直到昨天),还有一个 Patriot Torx SSD;整个分区的LUKS加密;一个 lvm 物理卷;然后在 ext4 逻辑卷中 home 和 root。

当我昨天尝试启动它时,它抱怨无法挂载根文件系统。运行fsck,基本上每个inode好像都出错了。主文件系统和根文件系统都显示出类似的问题。检查备份超级块无济于事。

e2fsck 1.41.12 (17-May-2010)
lithe_root was not cleanly unmounted, check forced.
Resize inode not valid.  Recreate? no

Pass 1: Checking inodes, blocks, and sizes
Root inode is not a directory.  Clear? no   
Root inode has dtime set (probably due to old mke2fs).  Fix? no
Inode 2 is in use, but has dtime set.  Fix? no
Inode 2 has a extra size (4730) which is invalid
Fix? no …
Run Code Online (Sandbox Code Playgroud)

linux ext4 ssd corruption fsck

8
推荐指数
2
解决办法
1万
查看次数

在 linux 上,当目录大小为 0 而不是 4096 时,这意味着什么?

这是我以前从未见过的奇怪事情——ls 报告其大小为 0 而不是 4096 的目录,并且我无法在其中创建任何文件。

# ls -ld lib home
drwxr-xr-x.  2 root root    0 Feb  7 03:10 home  <-- it has zero size
dr-xr-xr-x. 11 root root 4096 Feb  4 09:28 lib
# touch home/foo
touch: cannot touch `home/foo': No such file or directory  <-- and I can't create files in it
# rm home
rm: cannot remove `home': Is a directory   <-- look, it really is a dir
Run Code Online (Sandbox Code Playgroud)

那么目录大小为 0 而不是 4096 意味着什么?

文件系统是 fedora core 14 …

linux filesystems ext4 directory

8
推荐指数
1
解决办法
7801
查看次数

您如何在 AWS 的 Linux 上创建大型、可增长的共享文件系统?

在 AWS 上提供大型、可增长的共享存储并作为单个文件系统公开的可接受/合理/最佳方法是什么?

我们目前正在制作 1TB EBS 卷 ~每两周一次,并使用 no_subtree_check 和 nohide 进行 NFS 导出。在此设置中,不同的导出出现在客户端的单个安装下。这种安排不能很好地扩展。

我们考虑过的选项:

  • 带有 ext4 的 LVM2。resize2fs 太慢了。
  • Linux 上的 Btrfs。显然还没有准备好迎接黄金时段。
  • Linux 上的 ZFS。显然还没有准备好迎接黄金时段(尽管 LLNL 使用它)
  • Solaris 上的 ZFS。这个组合的未来(对我来说)是不确定的,混合中的新操作系统
  • glusterfs。听到的大多是好的,但有两个可怕的(也许是旧的?)故事。

理想的解决方案是提供共享、单一 fs 视图、易于扩展、快照和复制。

感谢分享想法和经验。

linux zfs filesystems ext4 amazon-ec2

8
推荐指数
1
解决办法
887
查看次数

无需重启即可重新挂载 root RW

今天我在生产 xen vm 服务器上做了一些愚蠢的事情。我将外部设备映射器安装为只读以制作文件系统的副本。此过程进行得很顺利,但随后 rootfs / 在来宾计算机中变为只读。

/dev/xvda on / type ext4 (ro,relatime,errors=remount-ro,user_xattr,barrier=1,data=ordered)
Run Code Online (Sandbox Code Playgroud)

幸运的是,它上的所有重要服务都使用/home/var分区,因此机器不会停止运行,但现在我无法在不重新启动它的情况下将 /root 重新安装为 RW(这不是一个选项,因为它是生产)。

我试过:

  1. fsck -f /dev/xvda
  2. mount -o rw,remount /
  3. mount -n -o remount,rw /

它不允许将其重新安装为 RW。

[Mon Jul  7 14:59:06 2014] EXT4-fs error (device xvda): ext4_remount:4558: Abort forced by user
[Mon Jul  7 14:59:21 2014] EXT4-fs error (device xvda): ext4_remount:4558: Abort forced by user
[Mon Jul  7 14:59:50 2014] EXT4-fs error (device xvda): ext4_remount:4558: Abort forced by user
[Mon Jul …
Run Code Online (Sandbox Code Playgroud)

filesystems ext4 mount

8
推荐指数
1
解决办法
4万
查看次数

Linux/ext4/sqlite:在写入文件时是否可以触摸文件以导致竞争条件?

对于上下文:我需要能够可靠地更新某些 sqlite DB 文件的时间戳,这些文件在 ext4 文件系统上间歇性更新。

touch写入数据库时​​使用命令(更新最后修改时间)是否会失败,甚至更糟,导致数据丢失?

linux ext4 sqlite

8
推荐指数
1
解决办法
943
查看次数

Ubuntu 服务器 ext4 达到 65000 子目录限制

我有一个 Ubuntu 14.04 服务器,它无法在 65,000 目录之外创建新目录。我已经运行 atune2fs -l并且可以看到该dir_nlink标志已设置。有谁知道还可以检查什么来允许这种情况发生?我有这个服务器配置的许多其他克隆,它们都超过了 65,000 大关并按预期工作。我已经比较了tune2fs -l输出,它们看起来是一样的。我仍然有几百万个空闲的 inode 和块。我已经卸载并重新安装了文件系统,但没有任何改变。

ubuntu filesystems ext4 tune2fs

7
推荐指数
1
解决办法
1197
查看次数