Kloning og backup af en installation

Har du en guide til en funktion eller et program? Har du tips og trick, som du gerne vil dele med andre? Post dem her.
laoshi
Redaktør
Indlæg: 5515
Tilmeldt: 26. apr 2008, 20:52
IRC nickname: laoshi
Geografisk sted: Vejle

Kloning og backup af en installation

Indlæg af laoshi »

Hvis du gerne vil klone en installation til en anden pc, så er her en fremgangsmåde i pkt. 1-5.
Hvis du blot vil lave en regelmæssig backup af listen over installerede pakker kan du gå direkte til pkt. 6

1. Lav en liste over installerede pakkker.
Det gør du med flg. kommando. Listen lægger sig i /home/

Kode: Vælg alt

sudo dpkg --get-selections | grep '[[:space:]]install$' | \awk '{print $1}' > package_list

Hvis du vil se hvad listen indeholder kan du gøre det sådan:

Kode: Vælg alt

cat | less ~/package_list

Du får så en lang liste som du kan bladre igennem med <enter>

2. Kopier denne liste og listen over softwarekilder til en usb-stick:

Kode: Vælg alt

sudo cp ~/package_list /media/DISK/package_list && cp /etc/apt/sources.list /media/DISK/sources.list

hvor du erstatter DISK med navnet på din usb-stick. Du kan finde navnet med

Kode: Vælg alt

ls /media


3. Hvis du geninstallerer på samme Ubuntu-release er sagen enkel. Du erstatter først den eksisterende sources.list med den eksporterede efter først at have lavet en backkup af den oprindelige med navnet sources.list.original:

Kode: Vælg alt

sudo mv /etc/apt/sources.list /etc/apt/sources.list.original && cp /media/DISK/sources.list /etc/apt/sources.list

Hvis du vil være sikker på ikke at miste nogle kilder som findes på den pc som du vil installere på og som ikke findes på den som du installerer fra, så kan du først åbne begge sources.list og sammenligne dem. Brug

Kode: Vælg alt

gksu gedit /etc/apt/sources.list
og

Kode: Vælg alt

gksu gedit /media/DISK/sources.list

Så er det en enkel sag at tilføje kilder fra den ene til den anden liste.
Husk at opdatere listen

Kode: Vælg alt

sudo apt-get update

Hvis du udelukkende har standard-repositories som softwarekilder på begge pc'er er det ikke nødvendigt at lave denne erstatning af den ene liste med den anden

4. Hvis du geninstallerer på en anden Ubuntu-release er det nødvendigt at redigere i den sources.list som du vil importere så softwarekilderne svarer til den rigtige release, f.eks. rette hardy til intrepid eller intrepid til jaunty. Rediger på samme måde som angivet i pkt. 3.
Hvis du udelukkende har standard-repositories som softwarekilder på begge pc'er er det ikke nødvendigt at lave denne erstatning af den ene liste med den anden
Husk at opdatere listen

Kode: Vælg alt

sudo apt-get update


5. Med softewarekilderne på plads kopierer du så package_list til den pc som du vil installere på

Kode: Vælg alt

cp /media/DISK/package_list ~/package_list

Herefter sendes listens indhold til xargs som splitter den op i passende dele som apt-get kan læse.

Kode: Vælg alt

cat package_list | xargs sudo apt-get install -y

Hvis du installerer på samme release som du har hentet listen fra skulle det gå helt af sig selv.
Hvis du vil flytte over til en nyere release kan der komme fejlmeldinger om pakker som ikke længere findes eller andet. Dem må du så tage dig af som foreslået i fejlmeldingen.

6. Du kan også bare vælge at lave en backup af listen over installerede pakker. Den lægger sig i din /home og bliver så automatisk taget med ved din regelmæssige backup af /home.
Det kan du gøre ved at lave flg. script

Kode: Vælg alt

#!/bin/bash
sudo dpkg --get-selections | grep '[[:space:]]install$' | \awk '{print $1}' > ~/package_list
Kald f.eks. scriptet backup_pakkeliste.sh.
Flyt scriptet til /usr/local/bin og sørg for at det kan køres. Hvis det ligger på dit Skrivebord så:

Kode: Vælg alt

sudo mv ~/Skrivebord/backup_pakkeliste.sh /usr/local/bin/backup_pakkeliste.sh && sudo chmod a+x /usr/local/bin/backup_pakkeliste.sh

Så kan du køre backup'en manuelt med

Kode: Vælg alt

backup_pakkeliste

Du kan også vælge at køre den automatisk på bestemte tidspunkter som beskrevet i denne guide https://ubuntudanmark.dk/forum/viewtopic.php?f=11&t=6043. Om backup af /home /usr og /etc kan du læse i denne tråd https://ubuntudanmark.dk/forum/viewtopic.php?f=11&t=5881.

7. Brug package_list til revision af installerede programmer - åbner du listen kan du checke om den indeholder programmer som du absolut ikke bruger mere og som du derfor lige så godt kan afinstallere.
"Von guten Mächten wunderbar geborgen
erwarten wir getrost was kommen mag.
Gott ist mit uns am Abend und am Morgen
Und ganz gewiss an jedem neuen Tag"

(Dietrich Bonhoeffer 1906-1945)

http://www.stromata.dk
https://wiki.ubuntu.com/FlemmingChristensen
https://launchpad.net/~laoshi
Jakob77
Indlæg: 889
Tilmeldt: 19. dec 2008, 15:52
IRC nickname: Jakob77

Re: Kloning og backup af en installation

Indlæg af Jakob77 »

laoshi

Mange tak for endnu en guide, som behandler et meget vigtigt emne. :)
Jeg søger nogle meget enkle løsninger til totalbackup med tilhørende total restore, og jeg håber derfor, at det er ok, at jeg spørger lidt uddybende for mere automatik.

Ser du en mulighed for, at man via et script kan pakke en hel computer ned i en iso-fil, som man brænder ned på en CD eller en DVD, og når man så efterfølgende booter på skiven, vil der automatisk starte et andet script, som genetablerer hele harddisken og afslutter med at bede brugeren om at fjerne skiven og genstarte..?
laoshi
Redaktør
Indlæg: 5515
Tilmeldt: 26. apr 2008, 20:52
IRC nickname: laoshi
Geografisk sted: Vejle

Re: Kloning og backup af en installation

Indlæg af laoshi »

Det er ikke lige noget jeg har prøvet at pakke sammen i et enkelt script. Men det kan da sikkert gøres. Se f.eks. her http://www.ubuntu-unleashed.com/2007/08/howto-customize-your-own-ubuntu-live-cd.html
"Von guten Mächten wunderbar geborgen
erwarten wir getrost was kommen mag.
Gott ist mit uns am Abend und am Morgen
Und ganz gewiss an jedem neuen Tag"

(Dietrich Bonhoeffer 1906-1945)

http://www.stromata.dk
https://wiki.ubuntu.com/FlemmingChristensen
https://launchpad.net/~laoshi
Jakob77
Indlæg: 889
Tilmeldt: 19. dec 2008, 15:52
IRC nickname: Jakob77

Re: Kloning og backup af en installation

Indlæg af Jakob77 »

laoshi skrev:Det er ikke lige noget jeg har prøvet at pakke sammen i et enkelt script. Men det kan da sikkert gøres. Se f.eks. her http://www.ubuntu-unleashed.com/2007/08/howto-customize-your-own-ubuntu-live-cd.html


Mange tak for linket. Jeg tror faktisk, at det indeholder en stump script, som jeg længe har eftersøgt. :D

Men måske er der en simplere vej, hvis man f.eks. bruger en USB-nøgle.
Hvis den skabes med Ubuntu i den rette version, så vil Ubuntu starte, når der bootes på den.
Vi sætter så USB-Ubuntu op til automatisk ved start at køre et script, som udfører en restore fra USB-nøglen.
Det må kunne laves, så det virker i nogle tilfælde..

Men kan det mon lade sig gøre, hvis der f.eks. er slettet partitions, eller der har været et andet styresystem på harddisken i mellemtiden..?

Ved en total restore må det nok være godt, hvis disken først bliver formateret.

Håber, du også har lyst til at filosofere lidt mere over det. :)