我的笔记本电脑上运行着一台全新的 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,而且由于某种原因,这个文件系统似乎有一个 bug,我不得不重新安装操作系统两次,直到整个 / 都使用 ext4。
然而,总而言之,似乎没有办法进行转换
答案1
我不知道有任何方法可以非破坏性地转换文件系统。这并不意味着它是不可能的,但我认为它的可能性很低。
例如,您可以从 转换ext2
为 而ext3
无需擦除磁盘,也可以从ext3
转换为ext4
。
但是,如果不先将文件复制到另一个分区或外部硬盘,那么从类似jfs
的情况发生似乎极不可能。ext4
/home
即便如此,您仍然希望在系统上创建一个新用户,并在类似的地方创建一个主目录,/tmp/tempuser
或者为您的用户复制配置,通常是将.
主目录中的“点”文件(以 开头的文件)复制到新位置/home
并更新/etc/passwd
以使用新的主目录,这样您就可以在执行此更新时以普通用户身份登录。
然后,备份您的文件,/home
使用您计划使用的任何工具卸载并格式化它/sbin/mkfs.ext4
。安装新的分区/home
并将您的文件复制回来。
此外,我还会推荐一些“智能”方法,比如rsync
复制您的文件,以确保您保留您的权限和所有内容。
答案2
函数变换在 ext2、ext3、ext4、jfs、minix、xfs 和 reiserfs 之间转换。
我在 Debian 存储库中看到了它,所以它可能也在其他基于 Debian 的发行版中可用。
答案3
你可以试试http://tzukanov.narod.ru/convertfs/当我几年前使用它时,它在一种情况下有效,但在另一种情况下却破坏了文件系统。