tirsdag den 24. marts 2009

Ny Ubuntu 8.10 server i luften på ASUS EEE BOX

Nu har jeg endelig fået en ny server i luften - kører nu en Ubuntu 8.10 server på en ASUS EEE Box B202 med 1 GB RAM og 80 GB harddisk.

I modsætning til hvad jeg tidligere skrev, har jeg droppet idéen med at køre en WUBI installation og sparkede XP helt ud - idéen var god, men det endte alligevel med at blive noget rod.

Der har dog været nogle uventede udfordringer undervejs - ikke mindst noget med driver understøttelse af netkortet (!) - så jeg måtte selv kompilere en der virkede - det samme måtte jeg gøre med Apache2 webserveren, da den ikke understøttede Virtualmin (webbaseret fjernadministration) i den version der var tilgængelig i repository for Ubuntu 8.10 - det der manglede specifikt var en anden konfiguration af mod_suexec, end den der er standard i versionen der kan installeres fra repository.

Men den er fuldt funktionsdygtig nu; jeg har fået flyttet alle mine sites og databaser over på den - her var udfordringerne kun noget med adgangsrettigheder på filer - en bruger skulle oprettes i MySQL til min medieserver + nogle rettigheder skulle tildeles.

Databaserne blev kopieret på følgende måde:

  1. Stop MySQL på den gamle server

  2. Pak de enkelte databaser med tar:
    "tar -cvf databasedir.tar /var/lib/mysql/databasedir" - udskift "databasedir" med navnet på din database.

  3. Stop MySQL på den nye server:
    "/etc/init.d/mysqld stop"

  4. Kopier TAR filerne over på den nye server

  5. Pak dem ud i mappen "/var/lib/mysql":
    "tar -xvf databasedir.tar /var/lib/mysql"

  6. Start MySQL på den nye server:
    "/etc/init.d/mysqld start"


Man skal ikke pakke hele /var/lib/mysql ned i en fil og så pakke det hele ud til samme sted på den nye server - så overskriver man filerne i roden af mysql mappen - det kan næppe være en god idé. Jeg pakkede faktisk hele mysql mappen ned i en fil, men benyttede så MC (Midnight Commander) på den nye server til at kopiere mine egne databasemapper ud og lod de oprindelige filer i roden være.

Sites blev kopieret direkte over til samme placering på den nye server (husk at sætte rettigheder og ejerskab på mapper/filer: chmod 755 + chown www-data:www-data) og Virtual hosts includes i apache2.conf fra den gamle server blev kopieret ind i samme fil på den nye server. Kopierede derefter httpd.conf over og genstartede apache - voila - serveren kører!
NB. Man skal sørge for så vidt muligt at køre samme version af Apache, MySQL og PHP på den nye server, ellers kan det godt være det ikke går helt så glat, hvis man vælger bare at kopiere database og config filer over, som jeg har gjort - måske er jeg bare doven, men hvorfor gøre det besværligt for sig selv?.

NB. Det kan stærkt anbefales at installere Webmin på sin server, det gør det langt mere overskueligt om tingene kører som de skal og også nemmere at administrere - til langt de fleste opgaver med MySQL behøver man f.eks. ikke at have PHPMyAdmin installeret (men det er nu godt have til de mere hardcore tabel manipulationer).