Uwaga:
Oryginalna wersja tego artykułu została opublikowana w IBM developerWorks i
jest własnością Westtech Information Services. Poniższy dokument jest
poprawioną przez zespół GDP wersją oryginalnego tekstu i nie jest już
aktualizowany.
|
Dzielenie dysku na partycje, przenosiny /home
1.
Przenoszenie /home
Wprowadzenie
Partycja /home jest jedną z najczęściej przenoszonych partycji.
Czasami cała przestrzeń w /home zostaje wykorzystana i wymagany
jest dodatkowy dysk twardy. Innym razem /home jest ustawiony jako
część partycji głównego systemu plików i może być konieczne przeniesienie go,
aby zwiększyć wydajność lub ułatwić stworzenie kopii zapasowej. W którymkolwiek
z tych przypadków pokażę jak przenieść /home bezpiecznie i
wydajnie.
Ostrzeżenie:
Omawiana technika opisuje sposób przeniesienia partycji. Jest ona tak
zaprojektowana, aby użytkownik mógł wycofać się w każdym momencie, ale
nie chroni ona przed błędem użytkownika. Innymi słowy w dowolnym momencie,
kiedy formatujemy partycje lub kopiujemy duże ilości plików, istnieje
możliwość, że wpiszemy złe polecenie, powodując tym samym zniszczenie
dużej ilości danych. Z tego powodu gorąco się zaleca, aby podjąć
odpowiednie kroki i przed przejściem dalej stworzyć kopię zapasową wszystkich
niezbędnych plików.
|
Teraz jesteśmy gotowi, aby zacząć przenosiny
/home. Konkretne kroki zależą od tego czy obecnie
/home znajduje się na osobnej partycji lub czy jest umieszczony
na partycji głównego systemu plików. Należy mieć to na uwadze kiedy będziemy
wykonywali odpowiednie kroki (zwrócę uwagę gdzie będzie trzeba). Teraz, jeśli
przenosimy /home na nowy dysk twardy, to powinien on być
zainstalowany w komputerze.
Jeśli przenosimy /home na istniejącą partycję (nie musi to być
ext2, pod warunkiem, że istnieje docelowa partycja główna lub rozszerzona), to
możemy przejść do kroku 2.
Jeśli konieczne, tworzymy nową partycję
Jeśli nowa partycja jeszcze ne istnieje, wtedy należy ją stworzyć za pomocą
cfdisk (zalecane) lub fdisk. Jeśli partycja nie znajduje się
na pierwszym dysku, należy pamiętać, aby podać nazwę odpowiedniego urządzenia
jako pierwszy argument w poleceniu cfdisk lub fdisk. Po
stworzeniu odpowiednich partycji, należy uruchomić ponownie komputer, aby
tablica partycji mogła być poprawnie odczytana. To jest jedyny moment kiedy
będziemy musieli uruchomić komputer ponownie.
2.
Tworzenie systemu plików na nowej partycji
Aby stworzyć system plików na nowej partycji, należy najpierw się upewnić,
że znamy dokładną nazwę urządzenia na którym znajduje się ta partycja (na
przykład, /dev/sda5). Jeśli nie jesteśmy pewni jak się ona
nazywa, wtedy należy zatrzymać się w tym miejscu, aby to sprawdzić i to
dwukrotnie! Po czym wpisujemy jako root:
Listing 2.1: Tworzenie systemu plików |
# mkfs.ext2 /dev/???
|
W powyższym poleceniu, ??? powinno być zastąpione nazwą docelowej
partycji. Po wykonaniu tego polecenia, partycja docelowa będzie zawierała
pusty system plików ext2.
3.
Montowanie nowego sysetmu plików w /mnt
Tworzymy katalog o nazwie /mnt/nowapart, a następnie montujemy
tam naszą nową partycję:
Listing 3.1: Montowanie partycji |
# mount /dev/??? /mnt/nowapart
|
4.
Przejście do trybu single-user
Opóźniałem wykonanie tego kroku tak długo jak to było możliwe, aby
zmaksymalizować dostępność systemu. Teraz musimy przejść do trybu single-user
i skopiować pliki z katalogu /home do /mnt/nowapart.
Nie powinniśmy mieć żadnych otwartych plików w /home, wejście do
trybu single-user eliminuje tę możliwość:
Listing 4.1: Wejście do trybu single-user |
# init 1
|
Jeśli konieczne, wpisujemy hasło roota. Teraz powinniśmy znajdować się w
powłoce roota.
5.
Zmieniamy katalog na /home i kopiujemy pliki
Wpisujemy:
Listing 5.1: Kopiowanie plików |
# cd /home
# cp -ax * /mnt/nowapart
|
Polecenie cp -ax kopiuje rekurencyjnie zawartość /home do
/mnt/nowapart, zachowując wszytkie atrybuty plików i nie
przecinając żadnych punktów montowania. Po czym polecenie kończy pracę,
katalog /mnt/nowapart będzie zawierać dokładną kopię wszystkich
plików i katalogów obecnych w /home. Jeśli stary
/home znajdował się na osobnej partycji (wypisany w osobnej linii
w /etc/fstab), to przechodzimy do kroku
6a. W innym wypadku, przechdzimy do kroku 6b.
6.
Użycie nowej partycji
6a: /home na własnej partycji
Uwaga:
Te instrukcje są dla systemów gdzie stary katalog /home znajdował
się już na osobnej partycji. W przeciwnym wypadku przechodzimy do kroku 6b.
|
Odmontowujemy starą partycję wpisując:
Listing 6.1: Odmontowywanie |
# cd /
# umount /home
|
Następnie, odmontowywujemy i ponownie montujemy nową partycję:
Listing 6.2: Ponowne montowanie partycji |
# umount /mnt/nowapart
# mount /dev/??? /home
|
Teraz nowa partycja jest dostępna w /home i jest gotowa do użycia. Kilka
ostatnich kroków wykonujemy trybie multiuser. Wychodzimy z trybu single-user,
uruchamiając ponownie system, poprzez wciśnięcie CTRL-D.
Ważne:
Po uruchomieniu systemu, logujemy się jako root i edytujemy
/etc/fstab, żeby /dev/??? był montowany
automatycznie w /home zamiast starej partycji. Na przykład,
zmieniamy tę linię:
|
Listing 6.3: Stary fstab |
/dev/hda3 /home ext2 defaults 1 2
|
na taką:
Listing 6.4: Nowy fstab |
/dev/??? /home ext2 defaults 1 2
|
6b: /home na wspólnej partycji
Uwaga:
Te instrukcje są dla systemów gdzie stary katalog /home znajduje
się na wspólnej partycji.
|
Listing 6.5: Przenoszenie katalogu |
# cd /
# mv /home /home.old
# mkdir /home
# mount /dev/??? /home
|
Ważne:
Opuszczamy tryb single user, poprzez wciśnięcie CTRL-D. Kiedy
system się uruchomi, edytujemy /etc/fstab dodając
nastepującą linię:
|
Listing 6.6: Edycja fstab |
/dev/??? /home ext2 defaults 1 2
|
Tym sposobem nowa partycja zostanie poprawnie zamontowana po ponownym
uruchomieniu systemu.
7.
Zakończenie
Celowo zostawiliśmy stary katalog/partycję /home, na wypadek
gdyby kopiowanie plików się nie powiodło. Po sprawdzeniu, że system działa
płynnie, możemy albo wykorzystać starą partycję /home w jakimś
innym celu albo usunąć katalog /home.old.
Gratulacje, właśnie przenieśliśmy katalog /home! W mojej
następnej wskazówce ponownie skonfigurujemy system tak, aby /tmp
i /var znajdowały się na osobnej partycji. Do zobaczenia.
Zasoby
|