我有一个带有 320GB ext4 分区的 400GB 磁盘。我想扩大 ext4 分区以使用左侧空间(80GB 的可用空间)。
+--------------------------------+--------+
| ext4 | Free |
+--------------------------------+--------+
Run Code Online (Sandbox Code Playgroud)
我怎么能这样做?
我见过有人在使用,resize2fs但我不明白它是否会调整分区大小。
另一种解决方案是使用fdisk但我不想删除我的分区和松散的数据。如何在不丢失任何文件的情况下简单地扩展分区?
注意:我说的是一个没有 LVM 的未挂载的数据分区,我有备份,但我想避免花一些时间在恢复上。
今天我在我的机器上用 OpenSUSE 12.3(内核 3.7)尝试了这个:
# resize2fs /dev/mapper/system-srv 2G
resize2fs 1.42.6 (21-Sep-2012)
Filesystem at /dev/mapper/system-srv is mounted on /srv; on-line resizing required
resize2fs: On-line shrinking not supported
Run Code Online (Sandbox Code Playgroud)
/dev/mapper/system-srv 是 EXT4 卷。
它真的不受支持还是我遗漏了什么?
鉴于 Ubuntu 上 ext4 文件系统上目录条目的当前结构,文件系统可以包含的最大文件数是多少?
计算文件系统可以包含的最大文件数的一般方法是什么?
我的用例:我在 M.2 SSD 上安装了 Ubuntu Server 18.04。我有一个 4TB 硬盘,我想添加为存储。由于它主要用于大型媒体文件和备份,因此不会经常写入。
您认为哪种文件系统最适合此用例?
我的主要候选者是 Ext3/4、XFS、Btrfs 和 ZFS(随意争论另一个)。
我不是在问“什么是最好的文件系统?”——没有“最好的”这样的东西。 我只是问人们哪个文件系统可能最适合这个用例。请尝试包括:
谢谢你的建议。
我的理解是,rm在文件上运行只是取消链接,将文件系统中的空间标记为空闲。然后应该遵循的是,删除一个文件总是需要大致相同的时间(即删除速度与文件数量成正比,而不是文件大小)。
那么为什么删除一个 15 GB 的文件会花费一分钟的时间rm file.tar.gz呢?
在 Windows 中,使用 NTFS 格式化非常快。我有一台低功耗的 Linux 机器,内存很少。将 2TB 卷格式化为 ext4 需要很长时间。
我可以做些什么来加快格式?我无法想象什么需要这么长时间?(什么需要这么长时间)
我正在尝试使用 ext4 文件系统测试需要压缩存储的项目,因为我使用的应用程序依赖于 ext4 功能。
是否有任何用于在 ext4 上进行透明压缩的生产/稳定解决方案?
我尝试过的:
启用压缩的ZFS 卷上的Ext4。这实际上产生了不利影响。我尝试创建一个启用 lz4 压缩的 ZFS 卷,并在 /dev/zvol/... 上创建一个 ext4 文件系统,但 zfs 卷显示实际使用量翻了一番,压缩似乎没有任何效果。
# du -hs /mnt/test
**1.1T** /mnt/test
# zfs list
NAME USED AVAIL REFER MOUNTPOINT
pool 15.2T 2.70G 290K /pool
pool/test 15.2T 13.1T **2.14T** -
Run Code Online (Sandbox Code Playgroud)
ZFS 创建命令
zpool create pool raidz2 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde2 /dev/sdf1 /dev/sdg1 /dev/sdh2 /dev/sdi1
zfs set recordsize=128k pool
zfs create -p -V15100GB pool/test
zfs set compression=lz4 pool/test
mkfs.ext4 -m1 -O 64bit,has_journal,extents,huge_file,flex_bg,uninit_bg,dir_nlink …Run Code Online (Sandbox Code Playgroud) 我运行一个网站,其中大约 1000 万个文件(书籍封面)存储在 3 个级别的子目录中,范围为 [0-f]:
0/0/0/
0/0/1/
...
f/f/f/
Run Code Online (Sandbox Code Playgroud)
这导致每个目录大约有 2400 个文件,这在我们需要检索一个文件时非常快。这也是许多问题建议的做法。
但是,当我需要备份这些文件时,仅浏览包含 10m 文件的 4k 目录就需要很多天。
所以我想知道我是否可以将这些文件存储在一个容器(或 4k 容器)中,每个文件系统都完全像一个文件系统(某种安装的 ext3/4 容器?)。我想这几乎与直接访问文件系统中的文件一样有效,并且这将具有非常有效地复制到另一台服务器的巨大优势。
关于如何做到最好的任何建议?或者任何可行的替代方案(noSQL,...)?
我有一个带有许多 2 TB 磁盘的 Linux 服务器,目前都在一个 LVM 中,导致大约 10 TB 的空间。我在 ext4 分区上使用了所有这些空间,目前有大约 8.8 TB 的数据。
问题是,我的磁盘经常出现错误,即使我更换(也就是说,我用 dd 将旧磁盘复制到新磁盘,然后我将新磁盘放入服务器),一旦出现错误,它们,我经常会收到大约 100 MB 的损坏数据。这使得 e2fsck 每次都变得疯狂,并且通常需要一周时间才能让 ext4 文件系统再次处于正常状态。
所以问题是:您建议我将什么用作 LVM 上的文件系统? 或者你会推荐我做什么(我真的不需要 LVM)?
我的文件系统的配置文件:
主要问题是磁盘故障。我可以丢失一些文件,但我不能同时丢失所有文件。
如果我继续使用 ext4,我听说我最好尝试制作更小的文件系统并以某种方式“合并”它们,但我不知道如何。
我听说 btrfs 会很好,但我找不到任何关于它如何在不复制数据(mkfs.btrfs -d single?)时丢失磁盘的一部分(或整个磁盘)的线索。
欢迎任何有关该问题的建议,提前致谢!
当我尝试导出 /home/user/share (ext4) 时,'exportfs -r' 向我返回此错误:
exportfs:警告:/home/user/share 不支持 NFS 导出。
/etc/出口:
/home/user/share 192.168.1.3 (rw,no_subtree_check)
系统是带有 nfs-kernel-server 包的 Ubuntu 10.04。任何想法为什么会发生这种情况?是因为ext4吗?
ext4 ×10
filesystems ×7
linux ×6
btrfs ×2
lvm ×2
zfs ×2
centos ×1
compression ×1
directory ×1
export ×1
ext3 ×1
hard-drive ×1
nfs ×1
partition ×1
storage ×1
xfs ×1
zfsonlinux ×1