Bądź: Wyszukaj na stronie z użyciem Google
reklama:

piątek, 24 kwietnia 2009

Konwersja partycji z ext3 na ext4

Autor: , 09:42, piątek, 24 kwietnia 2009


Po aktualizacji systemu do najnowszej wersji Ubuntu ciągle nie pracuje jeszcze tak szybko, jak by mogło. Wszystko za sprawą tego, że używa starszego systemu plików ext3, podczas gdy możliwe jest już skorzystanie z ext4. Pokażę, jak skonwertować system plików bez utraty zawartych na partycji danych.

Uwaga: Pomimo że w znacznej większości przypadków nie powinny występować błędy, to jednak zachęcam do wykonania kopii ważnych plików, gdyż zawsze takie operacje wiążą się z pewnym ryzykiem utraty danych.

Do całej operacji będzie nam potrzebna płyta z Ubuntu Jaunty Jackalope. Uruchamiamy z niej system w trybie Live CD, a następnie włączamy konsolę.

W tym przykładzie na system plików ext4 konwertować będziemy partycję /dev/sda2. Cała procedura sprowadza się do wykonania poleceń:
sudo bash
tune2fs -O extents,uninit_bg,dir_index /dev/sda2
e2fsck -pf /dev/sda1

Partycja została skonwertowana. Możemy ją już zamontować i koniecznie zmieniamy wpisy w pliku fstab, by była ona w przyszłości montowana jako ext4.
sudo bash
mount -t ext4 /dev/sda2 /mnt
Edytujemy plik fstab:
sudo gedit /mnt/etc/fstab
Przy skonwertowanej partycji zamieniamy ext3 na ext4. Np:
# /dev/sda2
UUID=XXXXXXXXXXXXXXXXXXXXXXXXXX / ext4 relatime,errors=remount-ro 0 1
Na koniec, aby GRUB poprawnie wykrył partycję nakazujemy mu przebudowanie listy:
sudo grub-install /dev/sda --root-directory=/mnt --recheck

źródło: www.ubuntu-inside.me
Komentarze 18 comments
Anonimowy pisze...

Niby łatwe, niby proste. Jednak pozostanę na 3, przynajmniej do czasu kiedy będzie to można wykonać naprawdę bez większego ryzyka.

kasia

Anonimowy pisze...

Polecam lekturę problemów znalezionych w ostatnich fazach wydawania Ubuntu 9.04 dotyczących ext4:
http://www.ubuntu.com/getubuntu/releasenotes/904
Skłaniają one do pozostania przy ext3, oczywiście na razie.

Cytuję:
1. LOCK-UPS WHEN DELETING FILES FROM EXT4 FILESYSTEMS
In some cases, deleting files from an ext4 filesystem is reported to cause soft lock-ups in the kernel (330824). Investigation of this problem is ongoing, and it is expected that a fix for this problem will be made available as a post-release update. To avoid this problem, users may wish to install using the default ext3 filesystem and convert their filesystem to ext4 (as documented on the ext4 wiki) once a fix is available.

SWITCHING TO EXT4 REQUIRES MANUALLY UPDATING GRUB
If you choose to upgrade your / or /boot filesystem in place from ext2 or ext3 to ext4 (as documented on the ext4 wiki), then you must also use the grub-install command after upgrading to Ubuntu 9.04 to reinstall your boot loader. If you do not do this, then the version of GRUB installed in your boot sector will not be able to read the kernel from the ext4 filesystem and your system will fail to boot.

POSSIBLE DATA-LOSS PROBLEMS RESIZING EXT4
The resize2fs tool may cause data loss when growing or shrinking ext4 filesystems off-line. See this mail from the upstream maintainer for more details. Unfortunately we became aware of this too late to fix it in Ubuntu 9.04. If you wish to resize an ext4 filesystem using the tools in Ubuntu 9.04, you may be able to work around these problems by first disabling the flex_bg and uninit_bg features (do not attempt this on a mounted filesystem!):
tune2fs -O ^flex_bg,^uninit_bg /dev/DEVICE_NAME
e2fsck /dev/DEVICE_NAME
However, we still strongly recommend taking significantly more care with backups than usual before attempting to resize an ext4 filesystem.

QkiZ pisze...

Jednak zostane przy trójce jeszcze dopóki nie będzie naprawiony błąd z tym kasowaniem plików i gubieniem danych.

Anonimowy pisze...

piszesz: e2fsck -pf /dev/sda1
a chyba ma byc e2fsck -pf /dev/sda2

Nathan pisze...

Choć system świeży i danych żadnych na dyskach nie ma, to jakoś nie śpieszno mi do nowego formatu. Choć mam jeszcze kilka dni na decyzję, zanim zacznę dane z pieca przenosić...

Anonimowy pisze...

@Nathan
Cóż za dojrzałość. Jestem podobnie ostrożna. 9 testuję na wubi i livecd, zobaczę co to za licho.Jak na razie nic mnie nie zaskoczyło, to co nie działało nie działa... A etx4 niech troszkę dopieszczą to zobaczymy :)))

kasia

bLiNd pisze...

Fajny poradnik, good job. Na pewno wielu osobom się przyda, bo ostatnio dość często pada pytanie jak przekonwertować EXT3 na EXT4. Ja sam instalowałem betę 9.04 od razu na EXT4 na początku kwietnia i nie mam żadnych problemów. Wszystko wydaje się działać szybko i stabilnie, więc polecam. :)

Plichu pisze...

@kasia
nie wydaje mi się by nawet z czasem ktoś wynalazł w 100% pewny sposób na bezbolesne przejście z ext3 na 4.
BTW to co tu Adrian napisał wcale nie jest skomplikowane i aż tak bardzo niebezpieczne więc śmiało :)

Anonimowy pisze...

@Pilchu, czekam na gparted :)

kasia

Anonimowy pisze...

Od wydania 9.04 sformatowałem sobie partycje na typ ext4 i nie mam jak narazie z nia problemów. W porownaniu do ext3 system naprawde wstaje szybciej. U mnie roznica szybkosci jest zauważalna gołym okiem. Jestem zadowolony.Polecem

Anonimowy pisze...

Ja mam ubuntu 8.04 juz troche skonfigurowane!! i nie oplaca mi sie instalowac nowej wersji. Czesc pakietow z ktorych kozystam sam aktualizawalem.
Teraz ma XFCE-4.6 OpenOffice 3.0 Sambe , ftp, mythtv, postfix 2.51 , Virtulbox 2.2, Ati Driver catalyst 9.3, Mono 2.4 itp.Boje się ze jak przekonwertuje(ex3 ->ex4) system bez aktualizacji do 9.04 to system mi sie rozleci.. A wlozylem w niego lacznie miecha konfiguracji ...
Robil ktos konwersje na wersji nizszej niz 9.04 ta konwersje?

Piotr pisze...

Huh właśnie straciłem gruba już myślałem że powaliłem system, musiałem gruba przeinstalowywać. Możliwe że wynikało to z tego iż zmieniałem partycję na ext4 z konta root własnego systemu. Instalowałem JJ usuwając partycję / starej instalacji (/home na osobnej partycji) jak na razie przyspieszenia nie czuję. Było na początku gdy to partycja systemowa dostała ext4, zmiana home nie dała zbyt wiele. Popracuję zobaczymy.

Złoty

Asgard pisze...

Dzisiaj przyszła płytka od Canonicala, więc właśnie skonwertowałem na ext4 wg powyższego opisu (mam Jaunty "dźwigniętego" updatem z Interpida). Wszystko bezboleśnie (w moim przypadku konwertowałem partycję sda1, więc musiałem nieznacznie dopasować komendy/ścieżki zamieniając wszędzie sda2 na sda1). System zauważalnie bardziej responsywny i ogólnie zdecydowanie szybciej zapisuje i odczytuje pliki. Podziękowania dla Adriana.

Anonimowy pisze...

no to w koncu ktora wersja jest poprawna w tym wypadku?
e2fsck -pf /dev/sda1
czy
e2fsck -pf /dev/sda2

Asgard pisze...

Wszystko zależy od tego, która partycja u Ciebie jest w ext3 (to ta partycja, którą właśnie zamierzasz przekonwertować na ext4). Bardzo to łatwo sprawdzić odpalając LiveCD od Jaunty i wybierając w System > Administracja > Edytor partycji (lub jakoś tak podobnie; sorry, mój Gnome jest w niemieckiej wersji), gdzie możesz sprawdzić, która partycja (sda1 czy sda2) jest u Ciebie akurat jako ext3. Jeśli to będzie sda1, to we WSZYSTKICH komendach podanych przez Adriana zamieniasz sda2 na sda1 i powinno wszystko się przekonwertować bezproblemowo. Niech mnie ktoś poprawi, jeśli namotałem, ale właśnie taką metodą przekonwertowałem sobie ext3 na ext4.

Anonimowy pisze...

Adam! Popraw te sciezki do /dev/sda zeby bylye jednakowe a nie raz /dev/sda1 a raz /dev/sda2. Ktos to wklepie tak jak jest i bedzie mial pretensje.

Anonimowy pisze...

mount -t ext4 /dev/sda10 /mnt/deb
mount: wrong fs type, bad option, bad superblock on /dev/sda10,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so

Anonimowy pisze...

e2fsck -pf /dev/sda10
debian: One or more block group descriptor checksums are invalid. FIXED.
debian: Group descriptor 0 checksum is invalid.

debian: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
(i.e., without -a or -p options)

Prześlij komentarz


Popularne posty

Etykiety