thay đổi định dạng hệ thống tập tin từ xfs sang ext4 mà không mất dữ liệu


8

Tôi có một Lucid Lynx mới (Ubuntu 10.04) đang chạy trên máy tính xách tay. nơi tôi đã định nghĩa các hệ thống tập tin là:

  • điểm gắn kết / trên ext4 (46 Gb)
  • điểm gắn kết / nhà trên jfs (63 GB)
  • hoán đổi là 3 Gb

Tôi rời máy qua đêm để làm một số nhiệm vụ, không có nguồn điện AC. Ngày hôm sau, tôi thấy nó ở chế độ chờ, nhiệm vụ đã hoàn thành, nhưng hệ thống tập tin không thể truy cập được. nó đã cho tôi lỗi I / O

có vẻ như có vấn đề với jfs và chế độ chờ.

Dù sao, để tránh mọi rắc rối, tôi muốn chuyển điểm gắn kết này từ định dạng jfs sang ext4.

Tôi có thể làm điều này mà không mất dữ liệu và không cần đặt dữ liệu vào vị trí tạm thời cho đến khi chuyển đổi được thực hiện không?

Rất tiếc khi đề cập đến điều đó, nhưng tôi nhớ lại trong những ngày windows, chúng tôi sẽ thay đổi một FAT16 thành FAT32 hoặc FAT32 thành NTFS mà không phải mất dữ liệu. Tôi hy vọng điều này có sẵn trên Linux.

Cập nhật Hệ thống tập tin / home là xfs không phải jfs và có vẻ như có lỗi với hệ thống tập tin này vì một số lý do, tôi đã phải cài đặt lại hệ điều hành hai lần cho đến khi tôi kết thúc với ext4 cho toàn bộ /

Tuy nhiên, như một kết luận, dường như không có cách nào để thực hiện chuyển đổi


3
Tạo một bản sao lưu và khôi phục. Bất kỳ phương pháp nào khác sẽ không được sử dụng đủ phổ biến để được coi là an toàn. Ồ, và đối với bản ghi FAT32-> NTFS không phải lúc nào cũng không có vấn đề.
Zoredache

@Zoredache: (hoặc bất kỳ ai khác có thông tin) Tiện ích sao lưu thích hợp là gì? Tôi nghĩ rằng người ta có thể phải sử dụng tarhoặc một cái gì đó tương tự, vì ấn tượng của tôi dumplà hệ thống tập tin cụ thể.
mpez0

Tôi cần phải chuyển đổi root (/) fs của mình, reiser4, thành ext4 và một người bạn của tôi khuyên bạn nên sử dụng cp hoặc thậm chí tar trên đó. Tôi đã đọc man cpvà tôi sẽ thử sớm, phương pháp được đề xuất là gắn kết fs đích trên một hệ điều hành khác, nếu có thể là trực tiếp, định dạng phân vùng và sau đó chỉ cần trích xuất / sao chép dữ liệu trở lại. Vì bạn không khởi động qua hệ điều hành đó, nên bạn sẽ không gặp khó khăn gì khi sao lưu, vì các tệp nút thiết bị và các tệp đặc biệt khác sẽ không được gắn vào thời điểm đó.
Spidey

Câu trả lời:


5

tôi không biết bất kỳ cách nào để chuyển đổi không phá hủy một hệ thống tập tin. Điều này không có nghĩa là không thể, nhưng tôi sẽ đặt nó ở tỷ lệ rất thấp.

bạn có thể, ví dụ, chuyển đổi từ ext2sang ext3mà không xóa đĩa và từ ext3sang ext4.

nhưng để đi từ một cái gì đó như jfsđể ext4có vẻ như rất không thể xảy ra, mà trước hết không sao chép của bạn /hometập tin sang một phân vùng hoặc ổ đĩa cứng gắn ngoài.

thậm chí sau đó, bạn sẽ muốn tạo một người dùng mới trên hệ thống của mình, với một thư mục chính ở đâu đó như /tmp/tempuserhoặc sao chép cấu hình của bạn cho người dùng của bạn, thường là các tệp 'dot' (tệp bắt đầu bằng .) trong thư mục chính của bạn sang một vị trí mới /homevà cập nhật /etc/passwdđể sử dụng thư mục chính mới, vì vậy bạn có thể đăng nhập như một người dùng bình thường trong khi bạn đang thực hiện cập nhật này.

sau đó, sao lưu các tệp của bạn, ngắt kết nối /homevà định dạng tệp bằng cách sử dụng /sbin/mkfs.ext4hoặc bất kỳ công cụ nào bạn dự định sử dụng. gắn kết phân vùng mới tại /homevà sao chép các tập tin của bạn trở lại.

Ngoài ra, tôi muốn giới thiệu một cái gì đó 'thông minh' muốn rsyncsao chép các tệp của bạn, để đảm bảo bạn giữ quyền của mình và tất cả nhạc jazz đó.


7

fstransform chuyển đổi giữa ext2, ext3, ext4, jfs, minix, xfs, reiserfs.

Tôi thấy nó trong kho Debian, vì vậy có lẽ nó cũng có sẵn trong các bản phân phối dựa trên Debian khác.


2
Có thêm thông tin về dự án này trên github
lockwobr

Nếu bạn là người dùng openSUSE và muốn sử dụng công cụ này, bạn có thể tải về / cài đặt bằng cách sử dụng phương pháp 'một cú nhấp chuột' ở đây: software.opensuse.org/...
seveninstl

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.