Seb*_*Seb 35 command-line filesystems partition debian
我有一个具有这种配置的驱动器:
fdisk -l
Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x000f1b8b
Device Boot Start End Blocks Id System
/dev/sda1 * 1 2612 20971520 83 Linux
/dev/sda3 60736 60801 525312 82 Linux swap / Solaris
Run Code Online (Sandbox Code Playgroud)
有 478GB 未分配空间,我如何在/dev/sda1不丢失当前数据的情况下添加此空间/dev/sda1?(文件系统是 ext4)。
注意:它是一个只有 SSH 的服务器,没有用于运行 gparted 之类的东西的 GUI。
Sté*_*las 53
放大分区:fdisk -u /dev/sda。
p 要打印分区表,请记下 sda1 的编号、开始、结束和类型。
删除它d::
使用n相同编号 (1) 的命令重新创建它,开始并键入但结尾更大(注意不要与其他分区重叠)。尝试在用于end的兆字节边界上对齐事物,使其成为 2048 减 1 的倍数。如果需要,更改类型t(对于包含extX或btrfs文件系统的分区,默认值83很好)。
然后w写和q退出。
分区表将被修改,但内核将无法将其考虑在内,因为某些分区已安装。
但是,如果使用中的分区只是扩大了,你应该能够强制内核采用新的布局:
partx /dev/sda
Run Code Online (Sandbox Code Playgroud)
如果失败,则需要重新启动。系统应该可以正常启动。
然后,调整文件系统的大小,使其扩展到扩大分区的范围:
resize2fs /dev/sda1
Run Code Online (Sandbox Code Playgroud)
ext4即使在实时 FS 上,哪个 for也能正常工作。
挂载分区时您无法安全地执行此操作,这意味着您需要引导其他某个分区并从那里执行此操作。
gparted是一个很好的、简单的 GUI 用于此目的。在我们删除的评论交流中,您提到它不会启动,因为“无法访问显示”——这意味着您不在 X 中;因为它是一个 GUI,没有它就无法工作。
当然,如果您没有其他分区可以使用,您将需要一张 live CD 或其他东西——我认为它们通常带有 gparted。您最好的选择可能是实际的gparted live CD,它看起来有一个相当新的最新稳定版本(并且可以放在CD 上,这很好,因为“live CD”正在迅速变成“live DVD”)。
我从来没有让 gparted 造成问题,但当然首先要支持你的重要tish。
我知道这是一个非常古老的问题,但很多人都在寻找解决方案。
对于本示例,您有以下典型情况。开头是单个分区,最后是交换分区。这不好,因为交换可能会很重,并且旋转磁盘的末端是其中最慢的部分。我的建议是什么?
但是这种情况怎么办?我不建议扩展 sda1。我建议在 sda1 和 sda2 之后创建其他分区,挂载为/home和/usr。在该目录上存储了最多的用户和系统数据,并且可以安全地将数据从该目录移动到新分区。
但。(第二个“但是”)如果您仍想保留当前结构,则应首先删除交换分区。你应该做交换,在/etc/fstab. 如果 swapon 告诉您(参见 man)没有使用交换,您可以通过分区工具(fdisk 或类似工具)将其删除。
当你没有这个分区时,你可以放大你的sda1。使用fdisk你应该首先打印分区。它是为了记住它从哪里开始。其次使用“d”键删除分区。不要惊慌,什么都没有写入硬盘驱动器:)。打印后您看到,磁盘上不存在分区。
接下来创建新分区,但要小心。查看原始分区启动的扇区。写出相同的数字。在那之后看最后。fdisk提示您输入最后一个可用扇区。使用计算器并在脑海中指定您需要多少交换(以千字节为单位)。乘以 2,然后从 fdisk 提示的最后一个扇区号中减去这个数字。创建分区。打印这个(它仍然在 fdisk 临时内存中),看起来一切正常。
按下“w”键后,这会将新分区写入驱动器。您将看到信息全部同步,或同步失败。如果失败,您可以调用命令 partx /dev/sda 进行同步。如果仍然失败,您应该重新启动系统。重新启动后,您准备了更大的分区,但其上的文件系统仍然较小。你应该种植它。EXT4 可即时增长 :),resize2fs /dev/sda1用于 do it。
您不需要重新安装重新启动等。最后,您应该恢复交换分区。只需再次使用 fdisk,创建新分区作为交换分区。写入'w'后,设备sda2将被恢复。使用它准备交换结构mkswap /dev/sda2,删除交换注释/etc/fstab,最后做swapon -a。使用 swapon 或 top 命令查看,swap 被激活。
我知道,这是很长的解释。我希望它可以用于任何人。注意,在我看来 xfs 文件系统要好得多,不幸的是,这个 fs 不支持收缩而不临时复制到备用位置,但很少使用收缩。很好,xfs 为他自己的元数据占据了极少的位置,并且与 ext4 相比在很多方面都更快。
另一个提示,最好使用一些 LVM 作为分区的中间层。之后,任何调整大小都容易得多。性能不相上下,当然可以混合使用HDD管理。您可以在常见的原始分区和 LVM 中使用。
小智 5
使用growpart扩展 ext4 分区非常容易。
sfdisk -d /dev/sdb > sdb_partition_bak.dmp
成长部分 -N /dev/sdb 1
成长部分 /dev/sdb 1
resize2fs /dev/sdb1
df -h
| 归档时间: |
|
| 查看次数: |
184876 次 |
| 最近记录: |