Re: flytte til større harddisk

From: Flemming Jacobsen (none@fj--batmule.dk.lh.bsd-dk.dk)
Date: Sun 15 Jun 2008 - 08:43:33 CEST


Date: Sun, 15 Jun 2008 08:43:33 +0200
From: Flemming Jacobsen <none@fj--batmule.dk.lh.bsd-dk.dk>
To: bsd-dk@bsd-dk.dk
Subject: Re: flytte til større harddisk

Mic J wrote:
> jeg er ved at løbe tør for plads på min lille bærbarserver,
> heldigivis har jeg en harddisk der er 3 gange så stor.
> Men jeg er lige nu travlt optaget på mit studie, men kunne
> godt bruge mere plads til bla. subversion repositorier.
>
> Så jeg tænkte jeg vile flytte mit system over på den større
> harddisk.
  
> Jeg har hørt at en dd ikke er helt perfekt, måske noget med
> "huller i filerne", altså reelt plads forbrug mod block forbrug ?
> Men ihvertfald ikke helt "sikkert" eller noget lyder rygterne :)

Det er noget vrøvl.

> Hvilken måde ville i vælge at flytte jeres system på til en større
> disk (når det ikke er muligt/belejligt at tilslutte en yderligere
> disk)
> Også med hensyn om det skal være robust, eller om det skal gå stærkt.

Køb/lån et USB disk kabinet og tilslut disken der (3.5" og 2.5"
SATA diske har samme stik, PATA diske passer v.hj.a. en lille
adapter).

> En slags automatiseret , halv automatiseret installation ?
> Jeg vil jo gerne undgå at bruge tid på at sætte systemet op igen
> Det er jo sat op engang, og spiller bare !

Start med at kopiere den eksisterende disk over på den nye med
dd. Noget i stil med:
  dd if=/dev/ad0 of=/dev/da0 bs=1m # Skift da0 til det
                                        # disken bliver set som

Nu er starten af den nye disk helt magen til hele den gamle.

På den nye disk er alle filsystemerne dirty (de er blevet klonet
fra et kørende system, og der kan være ting i memory der ikke er
skrevet færdigt).
Dette skal lige fixes med fsck.
Kør df og se første kolonne. Den viser hvad partitionerne på dine
eksisterende filsystemer hedder.
F.eks:
  /dev/ad0s1a 1012974 76104 855834 8% /
Udskift 'ad0' med det disken blev set som (formentlig da0).
  fsck /dev/da0s1a
Gentag for alle partitioner undtagen devfs og procfs.

Sæt den nye disk i laptoppen, og boot på den.
Gem den gamle. Den er backup hvis du skulle fumle noget af det
efterfølgende. Så kan du altid starte forfra indtil du får det
gjort korrekt.

Vi skal skrive på den aktive disk, og det må man ikke per
default:
  sysctl kern.geom.debugflags=16

Ret fdisk informationen så du får en ny fdisk partition der
dækker resten af din disk. Dette gøres nemmest med noget i stil
med:
  sysinstall
  vælg fdisk
  vælg din disk
  add en ny partition der fylder det du ønsker. Husk nummeret (1-4)
  w - for at skrive det rettede ud på disken. Svar OK til warnings
  quit/exit til du er ude igen

Du skal nu lave en BSD label på den nye fdisk partition
  bsdlabel -w ad0sN # Udskift 'N' med fdisk partitions nummeret

Du har nu en bsd partition der fylder hele det nye/ekstra stykke
disk der er i forhold til den gamle.
Det skal have et filsystem på:
  newfs -Ui 65535 /dev/ad0sNa # Udskift 'N' ...

Ovenstående laver et filsystem der er optimeret til at din
gennemsnitlige filstørrelse er 64KB eller mere.
Hvis disken kun skal indeholde små .c og .h filer, så drop 'i
65535' delen, så er default 4KB.

Mount den nye partition:
  mkdir /big
  mount /dev/ad0sNa /big # Udskift 'N' ...
  df -h
  umount /big

Ret /etc/fstab så disken bliver mounted automatisk vet at tilføje
en linje i stil med:
/dev/ad0sNa /big ufs rw 2 2

Test at du skrev det rigtige (så du ikke får problemer i næste
boot)
  mount /big

Reboot og se at det hele gik godt.

Ovenstående er ikke en step by step guide (mangler HW at teste
det på), men det burde være kommenteret nok til at du kan komme
igennem med lidt omtanke.

Du kan evt. tage med på næste Happy Hacking og få nogen til lige
at vejlede dig.

        Hyg'
        Flemming

-- 
Flemming Jacobsen                                  Email: fj@batmule.dk

"A newspaper consists of just the same number of words, whether there be any news in it or not." -- Henry Fielding



This archive was generated by hypermail 2b30 : Mon 30 Jun 2008 - 23:00:07 CEST