GNU/Linux Post-Installation Checklist

Defying Murphy’s Laws

Algologic Research & Solutions (http://members.tripod.com/~algolog/index.htm)

algolog (at) hd1.vsnl.net.in

Vertaald door: Ellen Bokhorst

bokkie@nl.linux.org

In dit document wordt een controlelijst aangereikt voor stappen die je onmiddellijk na het installeren van GNU/Linux zou moeten nemen. Deze stappen zullen je heel wat narigheid besparen als je later tegen problemen aanloopt. In dit document is tevens een shellscript opgenomen voor het automatiseren van het post-installatieproces.

Inhoudsopgave

1. Introductie............................................................................................................................................................1

2. Post-Installatie stappen........................................................................................................................................2

3. Shell script............................................................................................................................................................3

1. Introductie

Je hebt net de installatie van je eigen Linux-systeem voltooid. Je hebt net een upgrade voor je bestaande Linuxsysteem uitgevoerd. Je bent blij met de eerste paar ontdekkingen en ervaringen in het gebruik. Je wilt er zeker van zijn dat je plezier beleeft aan dit systeem ondanks enige schade die later kan worden aangericht vanwege onverwachte "misstappen".

Het is verstandig een momentopname van het nieuwe systeem te bewaren, zodat je er verzekerd van bent dat je in geval van een ongeluk met je Linux installatie, zonder blijvende schade je systeem altijd kunt herstellen. Deze controlelijst helpt je bij het nemen van voorzorgsmaatregelen die je moet nemen zodra je de Linux-installatie hebt voltooid. Het is een vervolg op de GNU/Linux pre-installation checklist (http://www.linuxdoc.org/HOWTO/mini/Pre-Installation-Checklist/), en het hoort bij de officiële Linux Installation HOWTO (http://www.linuxdoc.org/HOWTO/Installation-HOWTO/). Deze controlelijst bevat ook een Paragraaf 3 welke het proces om een momentopname van je systeem te maken automatiseert.

1.1. Copyright Informatie

Dit document is auteursrechtelijk beschermd (c) 2001 Algologic Research & Solutions (http://members.tripod.com/~algolog/index.htm) en wordt gedistribueerd onder de voorwaarden van de Linux Documentatie Project LDP) licentie, hieronder uiteengezet.

Unless otherwise stated, Linux HOWTO documents are copyrighted by their respective authors. Linux HOWTO documents may be reproduced and distributed in whole or in part, in any medium physical or electronic, as long as this copyright notice is retained on all copies. Commercial redistribution is allowed and encouraged; however, the author would like to be notified of any such distributions.

All translations, derivative works, or aggregate works incorporating any Linux HOWTO documents must be covered under this copyright notice. That is, you may not produce a derivative work from a HOWTO and impose additional restrictions on its distribution. Exceptions to these rules may be granted under certain conditions; please contact the Linux HOWTO coordinator at the address given below.

In short, we wish to promote dissemination of this information through as many channels as possible. However, we do wish to retain copyright on the HOWTO documents, and would like to be notified of any plans to redistribute the HOWTOs.

If you have any questions, please contact <linux-howto@metalab.unc.edu>

1.2. Disclaimer

No liability for the contents of this documents can be accepted. Use the concepts, examples and other content at your own risk. As this is a new edition of this document, there may be errors and inaccuracies, that may of course be damaging to your system. Proceed with caution, and although this is highly unlikely, the author(s) do not take any responsibility for that.

All copyrights are held by their respective owners, unless specifically noted otherwise. Use of a term in this document should not be regarded as affecting the validity of any trademark or service mark.

Naming of particular products or brands should not be seen as endorsements.

You are strongly recommended to make a backup of your system before major installation and continue to do so at regular intervals.

1.3. Feedback

Dit document en het Paragraaf 3 worden continue bijgewerkt. Wees er zeker van dat je de laatste versie van dit document raadpleegt, door regelmatig te kijken op Linux post-install site (http://algolog.tripod.com/postlnx.htm). Email <algolog@hd1.vsnl.net.in> met feedback en suggesties.

Noot

We beantwoorden GEEN algemene vragen over Linux. Als je professionele (BETAALDE) hulp wilt over Linux -- vraag hier dan om bij Algologic (http://algolog.tripod.com/tools.htm#linux). Je kunt ook onze homepage bezoeken: Algologic Research & Solutions (http://algolog.tripod.com/).

2. Post-Installatie stappen

Om zonder zorgen voor altijd plezier te hebben van je nieuwe Linux installatie, is het van belang een paar simpele voorzorgsmaatregelen te treffen. Je moet dit doen zodra je de Linux-installatie op je systeem voor de eerste keer hebt voltooid.

1. Maak een boot diskette (http://www.linuxdoc.org/HOWTO/Bootdisk-HOWTO/) en een rescue diskette aan. Utility’s voor het aanmaken van deze diskettes zijn beschikbaar als onderdeel van je Linux-distributie.

2. Als je een paranoïde type bent (zoals ik), kun je van elk van deze diskettes twee kopieën maken. Het is algemeen bekend dat diskettes in gebreke blijven op moment dat ze het hardste nodig zijn.

3. Test je bootdiskette. Wees er zeker van dat je in Linux kunt booten met de bootdiskette. Denk eraan dat Murphy’s wetten je kunnen treffen juist wanneer je dat het minst verwacht.

4. Test je nieuwe systeem grondig. Probeer alle belangrijke packages.

5. Probeer het X windowsysteem uit, en de desktop, en de window manager, als je deze hebt geïnstalleerd.

6. Probeer de verbinding met je LAN uit, en die naar het Internet.

7. Maak op z’n minst één account aan, niet zijnde root, voor het testen en opsporen van fouten in je installatie. Voer ALLE bovenstaande controles nogmaals uit, met de aangemaakte account, niet zijnde root.

8. Sluit je aan bij een lokale Linux Users Group (LUG). Je moet erachter zien te komen of er dicht in je buurt een LUG is (http://www.linuxlinks.com/UserGroups/). Als er geen is, start dan in je buurt, je universiteit, je land of stad, zelf een informele LUG op.

9. Sluit je aan bij één of meer mailing lijsten voor Linux (http://oslab.snu.ac.kr/~djshin/linux/mail-list/index.shtml) updates en nieuws. Er zijn er letterlijk honderden van.

10. Registreer jezelf en je machine in de wereldwijde Linux Users Counter (http://counter.li.org/).

11. En als laatste...Download het Paragraaf 3 en start het op. Maak (op een verwijderbaar medium) een veilige kopie van de directory: /root/postinfo welke het script zal aanmaken. Wellicht dat je ook een afdruk van het samenvattingsrapport /root/postinfo/summary wilt dat is aangemaakt door het shellscript.

12. Je moet dit shellscript zodra je Linux voor de eerste maal hebt geïnstalleerd uitvoeren en na elke belangrijke revisie of opwaardering van je Linux systeem. Je kunt het script ook als een cron job instellen, zodat het zichzelf periodiek en automatisch opstart. Hiermee zal in een later stadium heel wat gedoe worden voorkomen, in het geval ooit iets overhoop raakt.

3. Shell script

Het shellscript (shivalik Ver. 1.0) biedt een makkelijke manier om backups te maken van essentiële bestanden en informatie. Na het downloaden van het script:

• Verzeker je jezelf ervan dat je als "root" bent ingelogd;

• Bewaar het script in een directory met "root" permissies, zoals bijvoorbeeld /root/myscript

• Ga naar die directory d.w.z. cd /root/myscript gebruik gunzip om het script te decomprimeren d.w.z. gunzip ./shivalik.gz

•

BELANGRIJK

Je moet de gegeven waarschuwing aan het einde van het script doorlezen. Ga alleen verder met de volgende stappen als je het eens bent met de voorwaarden die zijn genoemd in de waarschuwing...

• Om het script uit te kunnen voeren moet je het script uitvoerbaar maken (alleen voor root) chmod 700 ./shivalik

• Verifieer dat de paden naar de diverse bestanden die zullen worden opgeslagen juist zijn en overeenkomen met je installatie.

• Je kunt het script alleen dan correct uitvoeren als je "root" bent (voor veel van de te bewaren bestanden zijn rootpermissies nodig).

Je kunt het bovenstaande script uitvoeren/opstarten (denk eraan dat je hier "root" voor moet zijn) -- typ ./shivalik

Het script is overvloedig gedocumenteerd. Het wijzigt (of verwijdert) geen van je bestanden of directory’s. Het maakt een goed beveiligde backup van een aantal essentiële bestanden en informatie. Het volledige script kun je doornemen en de werking ervan volgen. Neem het script gerust door en voeg extra mogelijkheden toe, of bestanden waarvan je een backup wilt. Je kunt je feedback ook naar de auteur van dit script sturen (<algolog@hd1.vsnl.net.in>).

Denk er aan dat het shivalik script geen tool is voor een volledige backup en het herstel daarvan. Ideaal bezien kun je het beste een letterlijke kopie maken van je gehele Linux installatie samen met alle bestanden en directory’s. Dit is niet altijd mogelijk, nodig of raadzaam. Het beste wat je anders zou kunnen doen is van de meest essentiële informatie en bestanden een backup maken. Het shivalik script doet dit voor je. Het script maakt een directory aan met de naam /root/postinfo/, en bewaart daarin alle essentiële informatie (en bestanden). Om absoluut voorbereid te zijn op een mogelijk voorval, moet je de volledige /root/postinfo/ naar een verwijderbaar medium kopiëren, zodra het script is uitgevoerd.

Herstel en reparatie: In het geval van later optredende problemen, kun je de beschadigde bestanden reconstrueren door de bestanden waarvan je een backup hebt te kopiëren vanuit /root/postinfo. Zo simpel is het.

De structuur van de directory /root/postinfo/ en de bestanden die hierin zijn te vinden, bestaan uit:

/root/postinfo/summary

Bevat een samenvattingsrapport van de status van je systeem (geheugen, partities, mount points, diskgebruik). Dit bestand bevat ook de lijst met bestanden die zijn opgeslagen. Hierin staat ook administratieve info zoals de datum en tijd van de backup, het versienummer van het shivalik script enz.

/root/postinfo/postinfo.tar.gz

Bevat een kopie van de eerdere postinfo (wanneer dit van toepassing is). Dit is een uitwijkmogelijkheid naar een uitwijkmogelijkheid!

/root/postinfo/snapshot.gz

Bevat een gezipte gestructureerde lijst van ALLE bestanden en directory’s van je Linux systeem (de directory’s "tree"). Je kunt dit bestand uitpakken en elke gewone teksteditor gebruiken om achter de lokatie van elk bestand te komen. Uiteraard kun je niet de inhoud van dat bestand ophalen, tenzij je dit expliciet elders hebt opgeslagen.

/root/postinfo/shivalik

Dit is een kopie van het shivalik script welke werd gebruikt voor het maken van de post installatie backup. Op moment bij herstel van een ongeluk, kun je dit script altijd bestuderen om er achter te komen op welke wijze de backup eerder werd gemaakt. Je zult altijd een consistente kopie van het script tot je beschikking hebben en de bestanden die door het script zijn aangemaakt.

/root/postinfo/etcfiles/

Deze subdirectory bevat een kopie van diverse essentiële bestanden uit de directory /etc/ van je Linux installatie. Het bevat tevens kopieën van de diverse configuratiebestanden die zijn opgeslagen in de directory

    /etc/.
/root/postinfo/otherfiles/

Deze subdirectory bevat een kopie van een aantal essentiële bestanden (de bestanden die niet in de directory /etc/ staan) van je Linux installatie. Als je wilt, kun je hier extra andere bestanden toevoegen, zodat ze automatisch met de anderen worden bewaard.

3.1. Het script...

#-----------------------------------------------
#           shivalik  \(Ver. 1.0\)
#Lees alsjeblieft eerst de sectie WAARSCHUWING van dit script
#Dit script verzamelt post installatie informatie
#dit kan ook zo nu en dan worden uitgevoerd om alle nuttige
#informatie over je Linux installatie op een enkele plaats
#te verzamelen. De uitvoer zal worden weggeschreven naar
#/root/postinfo/. Het samenvattingsrapport zal worden
#weggeschreven in /root/postinfo/summary
#Raadpleeg voor gebruik en gerelateerde informatie
#http://algolog.tripod.com/postlnx.htm
# ----------------------------------------------
clear
echo
echo "-----------------------------------------------------------"
echo Dit is de uitvoer van Partha\'s shivalik script \(Ver.1.0\)
echo Je moet \"root\" zijn wil dit script correct werken
echo Je moet ook de voorwaarden en gegeven waarschuwingen lezen
echo in de sectie WAARSCHUWING van dit script en deze accepteren
echo "-----------------------------------------------------------"
echo
echo "### STAP 0 ### Voorbereidingswerk"
echo Eerst maken we de directory /root/postinfo/ aan als deze nog niet bestaat
test ! -d /root/postinfo && mkdir /root/postinfo
echo Bewaar de huidige versie van alle postinfo bestanden
echo Maar eerst verwijderen we de eerdere versie, d.w.z. huidige-1 versie
test -e /root/postinfo/oldpostinfo* &&  rm /root/postinfo/oldpostinfo.tar.gz
#het oldpostinfo bestand is tijdelijk aangemaakt in /root
#het zal worden verplaatst naar /root/postinfo
tar -zcvf /root/oldpostinfo.tar.gz /root/postinfo/*
#Controleer of de bovenstaande tar succesvol was

if
test -s /root/oldpostinfo.tar.gz
then
echo oude postinfo bewaard in /root/oldpostinfo.tar.gz
ls -l /root/oldpostinfo*
else
echo Kon oldpostinfo niet bewaren
echo Verlaat shivalik script
exit
fi

#verwijder nu alle huidige postinfo bestanden
rm -rf /root/postinfo/*
#en begin een nieuw samenvattingsbestand
echo  shivalik \(Ver. 1.0\) > /root/postinfo/summary
echo -n "Report created on: " >> /root/postinfo/summary
date -R >> /root/postinfo/summary
echo Verplaats nu het oude postinfo bestand naar de /root/postinfo/ directory
mv /root/oldpostinfo.tar.gz /root/postinfo
#
#Kopieer het shivalik script
echo het hemd is nader dan de rok
echo We maken een kopie van het shivalik script
echo We maken een kopie van het shivalik script >> /root/postinfo/summary
echo in /root/postinfo/ >> /root/postinfo/summary
cp ./shivalik /root/postinfo/shivalik
#de stand van zaken
echo
echo Inhoud van /root/postinfo aan het einde van STAP-0
ls -AlR /root/postinfo
echo Einde "### STAP 0 ###
echo
#
#
echo
echo "### STAP 1 ### Maak een momentopname van het systeem"
echo >> /root/postinfo/summary
echo "### STAP 1 ### Een momentopname van alle bestanden en directory's" >>  /root/postinfo/summary
echo De eerste stap bestaat uit het vastleggen van je computerinhoud
echo Dit neemt een paar minuten in beslag
echo Dus haal een kop koffie!
ls -AlRH / >> /root/postinfo/snapshot
rm -f /root/postinfo/snapshot.gz
gzip /root/postinfo/snapshot
echo momentopname gemaakt
echo Een zeer uitgebreide lijst van alle bestanden is aangemaakt en >> /root/postinfo/summary
echo is opgeslagen in /root/postinfo/snapshot.gz >> /root/postinfo/summary
ls -l /root/postinfo/snapshot.gz >> /root/postinfo/summary
# de stand van zaken aan het einde van deze stap
echo
echo Inhoud van /root/postinfo aan het einde van deze STAP
ls -l /root/postinfo
echo Einde "### STAP 1 ###

echo
#
#
echo
echo "### STAP 2 ### Vitale statistieken"
echo >> /root/postinfo/summary
echo "### STAP 2 ### Vitale statistieken" >> /root/postinfo/summary
echo Verzamelen van vitale statistieken
echo .....van het geheugen
echo "---- cat /proc/meminfo ---------" >> /root/postinfo/summary
cat /proc/meminfo >> /root/postinfo/summary
echo .....van partities en mountpoints
echo "---- cat /proc/partitions---------" >> /root/postinfo/summary
cat /proc/partitions >> /root/postinfo/summary
echo .....van gebruikte diskruimte
echo "---- df ---------" >> /root/postinfo/summary
df >> /root/postinfo/summary
echo .....van modules
echo "---- cat /proc/modules ---------" >> /root/postinfo/summary
cat /proc/modules >> /root/postinfo/summary
# de stand van zaken aan het einde van deze stap
echo
echo Inhoud van /root/postinfo aan het einde van STAP-2
ls -AlR /root/postinfo
echo Einde "### STAP 2 ###
echo
#
#
echo
echo "### STAP 3 ### Nu slaan we een aantal belangrijke bestanden op vanuit /etc"
echo Deze sectie moet zonodig worden aangepast, afhankelijk van de
echo door je uitgevoerde installatie, en de door jou gebruikte distributie,
echo en de opties die je tijdens de installatie hebt gekozen.
echo >> /root/postinfo/summary
echo "### STAP 3 ### Nu slaan we een aantal belangrijke bestanden uit /etc op" >>  /root/postinfo/summary
test ! -d /root/postinfo/etcfiles && mkdir /root/postinfo/etcfiles
echo ..... bewaren van XF86Config -- je XWindow configuratiebestand
cp /etc/XF86Config /root/postinfo/etcfiles
echo "cp /etc/XF86Config /root/postinfo/" >> /root/postinfo/summary
echo ..... bewaren van /etc/fstab bestand
cp /etc/fstab  /root/postinfo/etcfiles
echo "cp /etc/fstab /root/postinfo/" >> /root/postinfo/summary
echo ..... bewaren van het /etc/profile bestand
cp /etc/profile  /root/postinfo/etcfiles
echo "cp /etc/profile /root/postinfo/" >> /root/postinfo/summary

echo ..... bewaren van het /etc/profile.local bestand
cp /etc/profile.local  /root/postinfo/etcfiles
echo "cp /etc/profile.local /root/postinfo/" >> /root/postinfo/summary
echo ".... bewaren van /etc/*conf bestanden"
cp /etc/*conf /root/postinfo/etcfiles
echo ".... bewaren van /etc/*config bestanden"
cp /etc/*config /root/postinfo/etcfiles
echo de volgende bestanden uit /etc zijn gekopieerd naar /root/postinfo/etcfiles >> /root/postinfo/summary
echo "/etc/*conf" >> /root/postinfo/summary
echo "/etc/*config" >> /root/postinfo/summary
# de stand van zaken aan het einde van deze stap
echo
echo Inhoud van /root/postinfo aan het einde van deze STAP-3
ls -AlR /root/postinfo
echo Einde "### STAP 3 ###
echo
#
#
echo
echo "### STAP 4 ### Nu bewaren we nog wat andere belangrijke bestanden"
echo Het kan zijn dat dit deel nog iets moet worden aangepast, afhankelijk
echo van de uitgevoerde installatie, en de door je gebruikte distributie,
echo en de opties die je voor de installatie hebt gekozen.
echo Wat hierop volgt is ontworpen voor SuSe  7.1
echo "### STAP 4 ### Nu bewaren we nog een aantal andere belangrijke bestanden" >>  /root/postinfo/summary
echo in /root/postinfo/otherfiles >> /root/postinfo/summary
echo Je kunt hier nog andere bestanden toevoegen waarvan een backup
echo moet worden gemaakt
test ! -d /root/postinfo/otherfiles && mkdir /root/postinfo/otherfiles
ls -l /root/postinfo/
echo ..... bewaren van /etc/init.d/boot.local --
cp /etc/init.d/boot.local /root/postinfo/otherfiles
echo "cp /etc/init.d/boot.local /root/postinfo/otherfiles" >>  /root/postinfo/summary
echo ..... bewaren van /etc/init.d/halt.local --
cp /etc/init.d/halt.local /root/postinfo/otherfiles
echo "cp /etc/init.d/halt.local /root/postinfo/otherfiles" >>  /root/postinfo/summary
# stand van zaken aan het einde van deze stap
echo
echo Inhoud van /root/postinfo aan het einde van deze STAP-4
ls -AlR /root/postinfo
echo Einde "### STAP 4 ###
echo
echo
echo "### STAP 999 ### Afronden, opschonen"
echo >> /root/postinfo/summary

echo "### STAP 999 ### Afronden, opschonen, opsommen" >>  /root/postinfo/summary
echo opsommen, opschonen
# om beveiligingsredenen maken we /root/postinfo ontoegankelijk en
# onzichtbaar voor niet-root gebruikers
chmod 700 /root/postinfo
chmod 700 /root/postinfo/etcfiles
chmod 700 /root/postinfo/otherfiles
chmod 700 /root/postinfo/*
chmod 700 /root/postinfo/etcfiles/*
chmod 700 /root/postinfo/otherfiles/*
echo Dit is de inhoud van /root/postinfo >> /root/postinfo/summary
ls -AlR /root/postinfo >> /root/postinfo/summary
echo "###### THE END #####" >> /root/postinfo/summary
# stand van zaken aan het einde van deze stap
echo
echo Inhoud van /root/postinfo aan het einde van deze STAP-999
ls -AlR /root/postinfo
echo Einde "### STAP 999 ###"
echo
echo "###### HET EINDE #####"
echo BELANGRIJK: Je moet nu alle bestanden in /root/postinfo op een
echo veilige plek bewaren, bij voorkeur op een andere disk of op een
echo verwijderbaar backupmedium.
echo " "
echo In /root/postinfo/summary vind je een samenvattingsrapport
echo van deze procedure
echo Een eerdere versie van een samenvatting \(zover van toepassing\) is
echo opgenomen in /root/postinfo/oldpostinfo.tar.gz
echo " "
#
echo "
#---------------------------------------------------------
#               WAARSCHUWING  WAARSCHUWING WAARSCHUWING
#                shivalik (ver. 1.0)
# Dit script werd je ter beschikking gesteld zonder enige garantie
# of zekerheden over de performance of bruikbaarheid ervan voor enig
# doel. Je gebruikt dit script uit eigen initiatief en bereidheid,
# op eigen risico en verantwoording.
# De laatste versie van dit script en daaraan gerelateerde informatie
# is te vinden op http://algolog.tripod.com/postlnx.htm
# Copyrights en alle rechten voorbehouden door:
# Dr. S. Parthasarathy (algolog@hd1.vsnl.net.in)
#--------------------------------------------------------
"