Case study: Solaris operatatsioonisüsteemi liigutamine füüsilise ja peegeldatud seadme vahel

Allikas: Kuutõrvaja

Eesmärk

Operatsioonisüsteem Solarise juurfailisüsteem ning kõik muud failisüsteemid ning swap võivad asuda nii otse füüsilisel seadmel kui ka metaseadmel (nt peeglil (ingl. k. mirror) ehk RAID1 seadmel). Seda asjaolu saab kasutada juhuks, kui süsteemis on tarvis teha muudatusi, kusjuures on vaja tagada hõlbus muudatuse eelsele seisule tagasipöördumise võimalus. Tegevuse algoritm võiks olla nt selline, eeldame näites esituse lühiduse nimel, et kasutusel on vaid üks juurfailisüsteem ning swap

  1. Tegevuste alguses töötab operatsioonisüsteemi juurfailisüsteem seadmel /dev/dsk/d10 ning swap seadmel /dev/dsk/d20. d10 ja d20 koosnevad vastavalt alampeeglitest d11 ja d12 ning d21 ja d22. Alampeeglitele vastavad füüsilised partitsioonid, Solarise volume managementi mõistes on tegu RAID0 skeemidega.
  2. Enne muudatuste algust ühendame juurfailisüsteemile d10 vastavast peeglist lahti alampeegli d12, ja kasutame teada praktiliselt süsteemi backupina.
  3. Sooritame muudatused
  4. Kui muudatused õnnestusid, siis ühendame alampeegli d12 tagasi.
  5. Kui muudatused ebaõnnestusid, siis saab kasutada juurfailisüsteemina alampeeglis d12 säilinud seisu ning rekonstrukeerida peegli lähtudes d12'st.

Peegli lahtiühendamine

Selleks et andmed oleksid lahtiühendatud alampeeglis kooskõlalised tuleks tegevust sooritada single user mode'is

 # init s

Peeglist d10 alampeegli d12 lahtiühendamiseks tuleb öelda mõni kord sync ning

 # metadetach d10 d12

Seejärel tuleks liikuda tagasi multiuser mode'i käsuga

 # init 3

ning valmistada d12 vastav juurfailisüsteem ette, et sellelt saaks vajadusel arvutit bootida. Ühendage failisüsteem külge

 # mount /dev/dsk/c7t3d0s0 /mnt

ning muutke ära juurfailisüsteemi rida selliseks

 /dev/dsk/c7t3d0s0 /dev/rdsk/c7t3d0s0   /  ufs   1  no -

Igaks juhuks võiks veenduda, et arvuti on võimeline lahtiühendatud peegli poolelt töötama. Selleks tuleb OBP promptist öelda

 {0} ok boot /sbus@7,0/QLGC,isp@0,10000/sd@3,0

Muudatuste tegemine

Kui varuks kasutatav alampeegel toimib, siis tuleks bootida arvuti üles tavapärases töörezhiimis, juurfailisüsteem asub metaseadmel /dev/md/dsk/d10 ning sooritada muudatused.

Muudatused olid edukad

Kui muudatused õnnestusid, siis tuleks ühendada lahtiühendatud alampeegel tagasi peegli koosseisu, mille käigus toimub andmete sünkroniseerimine

 # metattach d10 d12

Käsuga metastat on võimalik seejärel jälgida kuidas sünkroniseerimine edeneb.

Muudatused ei olnud edukad

Kui muudatused ei õnnestunud, tuleb bootida varem äraproovitud moel arvuti kasutades juurfailisüsteemina lahtiühendatud alampeeglit.

Märkused

Võimalik on talitada ka vastupidi, rakendades parandused lahtiühendatud peeglile, kasutades selleks paketihaldusvahendite juures nn -R võtit, mille abil saab näidata millist kataloogi kasutada juurfailisüsteemina, mille suhtes paketihaldusvahendid töötavad.