- SSH Mount unter Windows – Pfade vom Server als Laufwerk in Windows einbinden » »
- « « Xen unter Ubuntu Intrepid (8.10) zum laufen bringen
Ubuntu auf Root-Server installieren
Einer meiner Root-Server verlangte nach einer Neuinstallation. Da mir die Dekstop-Edition ganz gut gefällt wollte ich mal die Server-Edition ausprobieren. Da man auf einem entfernten Root-Server natürlich keine CD einlegen kann ist etwas Arbeit notwendig damit man das auch ohne CD / DVD zum Arbeiten bringt.
Für Ubuntu spricht für mich das es aktueller ist als Debian und sich trotzdem weitestgehend wie ein Debian bedienen lässt. Außerdem ist die Einrichtung von XEN ohne grosse Neukompilierung des Kernels möglich.
Mehr unter weiter lesen …
Als Anleitung fand ich eine veraltete Anleitung im serversupportforum, diese Anleitung basiert auf dieser.
Erster Schritt: Netzwerkdaten sichern
Diese muss man später wieder eintragen und sind zur Konnektivität sehr wichtig.
Die wichtigsten Daten erhält man mit dem mit dem Befehl:
ifconfig
Man erhält in Etwa folgende Ausgabe:
eth0 Link encap:Ethernet HWaddr 00:13:8F:10:92:8F
inet addr:85.12.123.123 Bcast:85.12.123.255 Mask:255.255.248.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:17660218 errors:0 dropped:0 overruns:0 frame:0
TX packets:18155043 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1490089780 (1.3 GiB) TX bytes:3045423043 (2.8 GiB)
Interrupt:16 Base address:0xdc00
Folgende Werte sind wichtig: “inet addr”, “Bcast” und “Mask”, diese notieren.
Weiterhin brauchen wir noch die IP-Adresse des Gateways:
# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 85.12.123.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 0.0.0.0 85.12.123.1 0.0.0.0 UG 0 0 0 eth0
Hier notieren wir uns die IP hinter der Zeile die mit “0.0.0.0″ beginnt (in dem Fall also 85.12.123.1)
Weiterhin die Inhalte der Dateien /etc/resolv.conf notieren.
Zweiter Schritt: Rettungssystem booten & Festplatte vorbereiten
Jetzt startet ihr das Rettungssystem. Das geht meistens über das Web-Interface eures Anbieters.
Sobald ihr euch da eingeloggt habt leeren wir die Platte des Servers und teilen diese neu ein.
2. Festplatte & Dateisysteme
Ich habe meine Festplatte nach dem “klassischem” Schema partitioniert.
/dev/sda1 als ext2 für das Boot-Device mit dem Boot-Flag,
/dev/sda2 für Swap
/dev/sda3 als ext3 für die Daten
Einteilen des ganzen mit fdisk (Anleitung z.B. hier) und dann die Dateisysteme anlegen und alles mounten:
mke2fs /dev/sda1 mke2fs -j /dev/sda3 swapoff -a swapon /dev/sda2 mkdir /mnt/debinst mount /dev/sda3 /mnt/debinst mkdir /mnt/debinst/boot mount /dev/sda1 /mnt/debinst/boot
Hinweis: falls der Swap-Bereich vorher noch nicht eingerichtet worden ist, muss man diesen erst mit “mkswap /dev/sda2″ initialiseren. Danke an Andi für diesen Hinweis. (siehe Kommentare)
3. Ubuntu Basisdateien
Nachdem alles gemountet ist geht es an die Installation von Ubuntu mittels debbootstrap. (aktuell ist Intrepid)
Die Basisdateien holt man sich vom Ubuntu-Server. Danach muss man das .deb-Paket umwandeln, damit man es einfach entpacken kann:
mkdir /mnt/debinst/root cd /mnt/debinst/root wget http://de.archive.ubuntu.com/ubuntu/pool/main/d/debootstrap/debootstrap_1.0.10ubuntu1~intrepid1_all.deb ar -xf debootstrap_1.0.10ubuntu1~intrepid1_all.deb cd / tar -zxvf /mnt/debinst/root/data.tar.gz /usr/sbin/debootstrap --arch amd64 intrepid /mnt/debinst/ http://de.archive.ubuntu.com/ubuntu
Wer keine 64Bit-Installation (bei Intel-Prozessoren auch amd64 benutzen) möchte erstzt das amd64 mit i386.
Das ganze dauert jetzt etwas. Das Script holt sich die Ubuntu-Basisdateien vom Ubuntu-Server und packt sie an die richtigen Stellen auf der gemounteten Partition.
Wenn das ganze dann fertig ist müssen wir das proc-Dateisystem und die Devices auf dem neuem System initialisieren. Das geht auch sehr einfach:
mount -t proc proc /mnt/debinst/proc cd /mnt/debinst/dev/ MAKEDEV -v generic
4. Ubuntu Grundsystem installieren
Jetzt ins neu angelegte System chrooten. D.h. wir gaukeln den Programmen vor das das neue System das Basissystem ist – sprich virtuell wird /mnt/debinst zu /
LANG= chroot /mnt/debinst /bin/bash
Die voreingestellten Quelldateien beschränken sich auf die Basispakete. Für die volle Auswahl müssen wir die Source-Datei ändern:
vim /etc/apt/sources.list
Die Originaldatei sieht bei mir so aus:
deb http://de.archive.ubuntu.com/ubuntu intrepid main
Das ändere ich in:
deb http://de.archive.ubuntu.com/ubuntu intrepid main restricted universe multiverse deb http://de.archive.ubuntu.com/ubuntu intrepid-security main restricted universe multiverse deb http://de.archive.ubuntu.com/ubuntu intrepid-updates main restricted universe multiverse
Danach die Paketlisten updaten und schauen ob es evtl. Updates gibt:
apt-get update apt-get upgrade
5. Grundsystem konfigurieren
Zuerst kümmern wir uns um das automatische Mounten der Dateisystem beim Systemstart. Das wird in der /etc/fstab getan. Hier der Inhalt meiner neuen fstab:
/dev/sda3 / ext3 defaults,noatime 0 1 /dev/sda1 /boot ext2 defaults,noatime,nosuid,nodev 0 2 /dev/sda2 none swap sw 0 0 proc /proc proc defaults 0 0
Dann das nächste, das Netzwerk. Die Konfiguration wird an mehreren Stellen festgelegt.
/etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address <IP-Adresse>
netmask <Netzmaske>
broadcast <Broadcast-Adresse>
gateway <Default-Gateway>
Zur Namensauflösung muss die /etc/resolv.conf angepasst werden. Hier einfach das gleich ‘reinschreiben was im alten System auch schon in der Datei stand.
Den Hostnamen des neuen Systems legt man in der /etc/hostname fest. Diesen da einfach ‘rein schreiben.
Die Hosts-Datei ist obligatorisch, aber sollte für den Normalbetrieb zumindest die Definition für localhost aufweisen:
127.0.0.1 localhost.localdomain localhost
Jetzt kommen Pakete und Einstellungen zur Sprache:
apt-get install language-pack-en language-pack-de dpkg-reconfigure locales
Um Deutsch und UTF-8 zur Voreinstellung zu machen muss folgendes in die /etc/environment hinzugrüfgt werden:
LANG="de_DE.UTF-8" LANGUAGE="de_DE:de:en_GB:en"
Nun kommen wir zur Uhrzeit. Dazu müssen wir die Zeitzone des Servers einstellen:
dpkg-reconfigure tzdata
Und danach können wir gleich die Uhrzeit des Servers mit einem NTP-Server abgeleichen:
ntpdate ptbtime1.ptb.de
Damit wir nachher wieder zum Server verbinden können brauchen wir noch den SSH Server:
apt-get install ssh
Und das Passwort für den root-Benutzer festlegen:
passwd root
6. Kernel installieren
Vor dem Kernel muss der Bootloader installiert werden. Da ich Grub bevorzuge mache ich das manuell vorher, ansosnten würde Lilo installiert werden.
apt-get install grub
Dann der eigentliche Kernel, das geht eigentlich sehr einfach. Zuerst schauen wir uns an welche Kernel-Version wir installieren wollen:
apt-cache search linux-image
Da wir einen Server betreiben wollen bietet sich das Server-Image an. Installiert wird es mit:
apt-get install linux-image-server
Man kann auch eine feste Version benutzen, dann wird der Kernel des Servers allerdings nicht mit geupdated.
Zum Abschluss der Kernel-Installation muss noch Grub eingerichtet werden:
cp /proc/mounts /etc/mtab grub-install /dev/sda
Das dauert einen Augenblick, nicht erschrecken.
Damit Grub auch weiss, was es später booten soll muss eine menu.lst angelegt werden. Das macht man mit:
update-grub
Die Abfrage, ob eine menu.lst generiert werden soll, mit y bestätigen.
7. Neustart
Der Moment der Wahrheit. Der Neustart des Systems.
Erst mal müssen wir aus dem chroot ‘raus. Dazu einfach
exit
eingeben.
Jetzt kann man den Server neu starten lassen:
reboot
Und hoffen das der Server online geht.
Wenn alles geklappt hat hat man ein minimales Grundsystem, auf dem man aufbauen kann und z.B. Apache, MySQL und und und installieren.
Thx für den guten Artikel.
Einen Fehler hab ich aber gefunden, und zwar muss damit “swapon ” funktioniert der swap erst erstellt werden mit “mkswap “.
22.11.2009 @ 20:30
Danke für den Hinweis. Normalerweise sollte bei einem vorinstallierten Linux (wovon ich hier ausgehe) schon ein Swap-Bereich eingerichtet sein, wodurch dieser Schritt entfällt. Ich nehm es trotzdem mal mit auf.
22.11.2009 @ 21:52