Din egen Linux-server: Del 1 – Installation av systemet
Förord
Den här artikeln hjälper dig som vill ha en egen webbserver där hemma. Artikeln går igenom installationen av Linux, vilket är operativsystemet den bygger på. De efterföljande delarna går igenom resten av installationsprocessen, dvs. installation av program.Innehåll
»»
»
»
»
»
»
»
»
Relaterade artiklar
» Din egen Linux-server: Del 2 – Installation av webbserver» Din egen Linuxserver: Del 3 - installera FTP och SSH
Din egen Linux-server: Del 1 – Installation av systemet.
Vad jag kommer ta upp i denna artikel och vad du bör kunna innan
Jag förutsätter att du vet vad din dator innehåller, vilka komponenter du har och att du har använt Linux lite grann innan. Jag kommer ta upp grundinstallationen av Crux samt konfiguration, ftp-server (proftpd 1.2.9), webbserver (apache 2.0), php(v. 4.3.4) samt openssh (program för fjärrstyrning). Alla dessa program är gratis!
Innan du börjar
Börja med att ladda ner Crux linux (www.crux.nu). Denna artikel är baserad på v.1.3, vissa skillnader kan förekomma om du har en nyare version. Det kan gå att använda en annan distribution, men då får du sköta grundinstallationen själv. Bränn sen ner ISO-filen på en CD. Du behöver även en dator som du är beredd att formatera om. Din internetförbindelse bör ha ett fast ip eftersom jag inte kommer gå igenom hur du ska göra om du har dhcp (det går visserligen att få reda på genom att läsa på internet). Det är även bra att ha någon annan dator tillhands bredvid som du kan nå dokumentationen ifrån om du skulle få problem.
Sen bör du ha laddat ner alla program som jag skrivit här uppe och bränt in på någon cd eller liknande så att du kan nå dem sen. Har du internet kopplat till datorn från början kan du även ladda ner dem via Linux om du kan adressen till filerna. Om du kör med andra versioner än de jag har använt mig av så kan vissa skillnader förekomma. Du behöver inte ladda ner SSH eftersom det följer med vid installationen av Crux.
Kom ihåg!
Installationen är en del där mycket kan gå snett. Detta här under är hur jag har gjort, det är ingen garanti för att det kommer funka på era datorer. Vid fel är det bra att luta sig mot dokumentationen som innehåller det mesta du behöver veta. Dokumentationen går att ladda ner från
Partitionering och Formatering
Börja med att boota från CD-romen. Det kommer upp en liten meny eller prompt (ungefär samtidigt som operativsystemet annars hade startat), tryck ENTER där. Sen kommer det upp en fråga om vilket användarnamn du ska använda. Logga in som root .
login:root
Nu är du inne i ett Linux-operativsystem som startat från CD-romen.
Sen ska du skapa dina partitioner med cfdisk.
$ cfdisk
Överst finns en lista med dina nuvarande partitioner. Du bläddra i denna lista med upp- och nerpilarna. Längst ner finns en meny. Du väljer funktion i denna meny med höger- och vänsterpilarna. För en bra guide till cfdisk kan du gå in på
Nu är du klar för att börja skapa nya partitioner. Vad du behöver är minst 3 partitioner:
part 1: root-partition, det är här systemet ligger, 500-1000mb, ext2
part 2: swap-partition, ungefär som virtuellt minne, dubbelt så mycket som du har minne i datorn, swap
part 3: home-partition, här ligger alla användarfiler t.ex. hemsidor, resten av utrymmet, ext2
Välj New i menyn.Därefter blir du frågad om du ska ha en 'primary' eller 'logical' partition. Primary används på de fyra första partitionerna på hårddisken, därefter används logical. Bestäm hur mycket utrymme du ska ha. Därefter kommer partitionen att synas i listan överst. Markera partitionen och välj Type i menyn. Det kommer upp en lång lista med olika filsystem. Du ska välja Linux(83) till alla dina partitioner utom swapen, där du väljer Linux swap(82). Detta gör du med alla partitioner du ska tillverka. För att du ska kunna boota ifrån systemet så måste du välja Bootable i menyn till rootpartitionen. Nu ska du bara skriva partitionstabellen på hårddisken. Välj Write i menyn och sen yes, så fixar programmet det åt dig. Om programmet inte stängs ner efter att du skrivit partitionstabellen, stäng ner programmet själv.
Bra gjort! Nu är det dags att formatera dina partitioner. Men för att kunna göra det måste du veta att alla dina hårddiskar ligger listade under /dev/discs/disc?/part?. Efter /dev/discs/ står det disc?, det syftar på att det är hårddisk nummer ?, alltså ska du ersätta ? med den hårddisk du arbetar med. Den första hårddisken betecknas: /dev/discs/disc0. Efter dett så står det /part?. Detta är nästan samma sak som hårddiskbeteckningen. Part står för partition. Du ska alltså ersätta ? med den partition du ska formatera, ex:
Första hårddisken, första partitionen skrivs: /dev/discs/disc0/part0
Första hårddisken, andra partitionen skrivs: /dev/discs/disc0/part1
Kommandot du ska använda är
$ mkfs.TYP /dev/discs/disc?/part? ''för vanliga partitioner''
$ mkswap /dev/discs/disc?/part? ''för swap-partitionen''
där du ska ersätta TYP med det filsystem du ska använda på varje partition, ext2 för vanliga partitioner samt swap på swap-partitionen. Om du har partitionerat upp din första hårddisk enligt vad jag skrev där uppe så ska du skriva såhär för att formatera dina hårddiskar:
$ mkfs.ext2 /dev/discs/disc0/part0
$ mkswap /dev/discs/disc0/part1
$ mkfs.ext2 /dev/discs/disc0/part2
Grattis! Nu har du partitionerat och formaterat din hårddisk! Fira detta med att gå till kylskåpet och drick lite mjölk, du har änsålänge bara precis börjat med installationen.
Lägg till dina nya partitioner samt börja använda swapen
För att kuna lägga in filer på hårddisken så måste du sätta upp dina partitioner i filsystemet. Det gör du med kommandot mount och det fungerar såhär:
$ mount /dev/discs/disc?/part? /mnt/var?
Eftersom du har 2 partitioner (en root-partition och en home-partition) så får du använda kommandot två gånger enligt vad som beskrivs här nedan. Har du en annan partitionsuppläggning så får du såklart använda kommandot annorlunda. Såhär ska du skriva om du gjort som jag:
$ mount /dev/discs/disc0/part0 /mnt
$ mkdir /mnt/home
$ mount /dev/discs/disc0/part2 /mnt/home
Kommandot mkdir skapar en katalog, i detta fallet katalogen home inuti katalogen /mnt. Nu är det dags för dig att börja använda din swap-partition. Då använder du swapon kommandot.
$ swapon /dev/discs/disc?/part?
Såhär ska du använda kommandot om du följt alla andra inställningar.
$ swapon /dev/discs/disc0/part1
Själva installationen
Nu är det dags för dig att sköta själva installationen av Crux. Skriv setup för att starta installationsprogrammet.
$ setup
Inne i installationsprogrammet följer du alla anvisningar fram tills att du får välja vilka paket som du ska installera. Vid frågan om var filerna ska ligga väljer du /mnt. Du ska välja alla base-paket samt dessa:
netkit-ftp
openssl
openssh
pine
unzip
zip
När installationsprogrammet har gjort sitt så avslutar du det och då är det dags att börja använda ditt egna system. För att göra det skriver du in:
$ mount -t devfs devfs /mnt/dev
$ mount -t proc proc /mnt/proc
$ chroot /mnt /bin/bash
Detta gör bl.a. att du börjar använda din egen rotpartition istället för cd-skivans. Därefter är det dags att du ändrar ditt root-lösenord (lösenordet till din administratör-inloggning). Det är mycket viktigt att du kommer ihåg detta lösenord eftersom du inte kan ändra något alls i systemet sålänge du inte är inloggad som root. Du ändrar det med kommandot passwd.
$ passwd
Därefter blir du frågad efter det nya lösenordet. Till skillnad mot windows där små stjärnor kommer upp för varje bokstav så gör det inte det i Linux. Så bli inte rädd att det har blivit fel om det inte syns något.
Nu när du har gjort det så ska du börja konfigurera systemet.
Systemkonfiguration
Du konfigurerar systemet genom bl.a. ändra i en del filer på datorn. För det ändamålet behövs ett program, i denna guide använder vi av pico, men det går lika bra med andra editorer som t.ex. vi. Såhär fungerar programmet pico:
$ pico /plats/där/filen/ligger
Du avslutar pico genom att trycka CTRL+X. Då kommer det upp en fråga om du vill spara filen, tryck Y för ja och N för nej. Om du valt ja, tryck enter för att spara med namnet som föreslås (namnet på filen du öppnat brukar det vara).
Du ska så klart ändra om så att det pekar på filen du ska ändra i, istället för /plats/där/filen/ligger. Börja med att ändra i filen fstab, som ligger i mappen /etc.
$ pico /etc/fstab
När du är klar så ska filen se ut som den här nedan.
#
# /etc/fstab: static file system information
#
# <file system> <dir> <type> <options> <dump> <pass>
/dev/hda1 / ext2 defaults 1 1
/dev/hda2 swap swap defaults 0 0
/dev/hda3 /home ext2 defaults 0 2
proc /proc proc defaults 0 0
# End of file
Har du gjort fler partitioner så får du lägga till dem här om du vill att de ska laddas vid varje uppstart. Om du gör fel här så startar inte systemet, men det går att fixa utan att installera om systemet.
Nu ska du ändra i filen /etc/rc.conf vilket är filen för systemkonfiguration, bl.a. datornamn, tangentbordsuppsättning m.m. Längst ut står kommentarer om en del av raderna, de ska inte vara med i filen.
$ pico /etc/rc.conf
#
# /etc/rc.conf: system configuration
#
FONT=default
KEYMAP=sv-latin1 ''Tangentbordsuppsättingen''
TIMEZONE=Europe/Stockholm ''Tidzon''
HOSTNAME=serverdator ''datornamn''
SERVICES=(net crond)
# End of file
Nu är det dags för dig att ändra nätverksinställningarna. De finns i filen /etc/rc.d/net. Det är inte så mycket som du ska ändra, allt du ska göra är att ändra dina ip-inställningar. Byt ut det som är XXX.XXX.XXX.XXX mot ditt ip-nummer, YYY.YYY.YYY.YYY mot din netmask i exemplet här nedan. Du ska även avkommentera de raderna som du är inne och skriver i (avkommentera menas med att du plockar bort # som står framför raden).
$ pico /etc/rc.d/net
#!/bin/sh
#
#
# /etc/rc.d/net: start/stop network
#
if [ ”!$1” = ”start” ]; then
/sbin/ifconfig lo 127.0.0.1
/sbin/ifconfig eth0 XXX.XXX.XXX.XXX netmask YYY.YYY.YYY.YYY
elif [ ”$1” = ”stop” ]; then
/sbin/ifconfig eth0 down
/sbin/ifconfig lo down
else
echo ”usage: $0 start|stop”
fi
# End of file
Grattis, nu har du konfigurerat systemet. Nu är det dags att kompilera om kärnan.
Kompilera om kärnan
Nu är det dags att kompilera om kärnan och lägga till stöd för din hårdvara. Det gör du genom att först gå in i mappen med källkoden till kärnan.
$ cd /usr/src/linux-2.4.23
Därefter ska du starta programmet menuconfig som hjälper dig att modifiera kärnan.
$ make menuconfig
Nu får du upp en meny med en massa val. Där ska du bl.a. välja vilket nätverkskort du har. Vilket du gör under ”Network device support”. Därefter väljer du ”Ethernet (10/100 mbit)”, och tillsist ditt nätverkskorts chipset.
Sen är det dags att välja några andra punkter som finns beskrivna här under:
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers
File systems --->
[*] /dev file system support
[*] Automatically mount at boot
Du väljer dessa genom att markera valet och trycka på mellanslag. När det blir en stjärna ute i rutan till vänster så har du valt den. Glöm inte att spara dina ändringar när du avslutar.
Nu ska du börja göra själva kompileringen. Det kan ta ett tag. Skriv såhär:
$ make dep
$ make clean
$ make bzImage
$ make modules
$ make modules_install
$ cp arch/i386/boot/bzImage /vmlinuz
$ cp System.map /
När du gjort detta utan att få några fel, har du fått det så får du kompilera om kärnan igen tills du blir utan fel, så ska vi konfigurera starthanteraren. Det är den som bestämmer vilket system som ska startas upp när du startar datorn. Programmet heter Lilo (linux loader). Konfigurationsfilen är /etc/lilo.conf. Ändra såhär:
$ pico /etc/lilo.conf
#
# /etc/lilo.conf: lilo(8) configuration, see lilo.conf(5)
#
lba32
install=text
boot=/dev/hda
image=/vmlinuz
label=CRUX
root=/dev/hda1 ''skriv här din rootpartition''
read-only
append=”quiet”
# End of filen
Efter att du konfigurerat lilo så måste du göra så att lilo använder din nya konfiguration, det gör du genom att köra lilo en gång. Skriv såhär:
$ lilo
Grattis, nu har installerat klart systemet. Nu är det dags att start om systemet. Håll tummarna för att det funkar. Om det inte gör det så finns det en liten felsökningsguide här längst ner i artikeln, du kan även kolla i dokumentationen till Crux. Du startar om med kommandot:
$ shutdown -r now
Glöm inte att ta ut cd-rom/disketter som sitter i.
Felsökningsguide
Datorn startar inte.
Kolla att du konfigurerade lilo rätt.
Kolla att filen /etc/fstab är rätt konfigurerad. Vid fel laddas inte partitionerna.
Läs i dokumentationen.
Internet fungerar inte/Nätverket startar inte.
Valde du rätt chipset när du konfigurerade kärnan?
Är alla inställningarna i /etc/rc.d/net rätt?
Läs i dokumentationen.
För att kunna ändra något i dessa filer måste du boota upp med cd-romen i och därefter ladda partitionerna (kommandot mount) precis som du gjorde innan (först ladda dem, och sen börja använda dem). Sen kan du editera filerna. Skulle det ända inte funka ber jag dig att läsa under punkten ”Kom ihåg!” där jag skrivit vad du bör göra. Fortsättning följer i nästa del!
Pelle Johansson
Det här har du gjort riktigt bra, speciellt med tanke på din ålder. Du har gått igenom steg för steg precis vad som skall göras på ett pedagogiskt sätt. Ett tips är att i slutet av serien är att samla några bra referenser och länkar också. Lycka till.
Pelle Johansson
Din artikel blev även uppmärksammad i nyhetsbrevet Hack! Se http://www.derigomedia.com/hack/arkiv/hack20061115.html