INSTALL
changeset 1 8ff135ba3a93
child 2 cdf62add5d6f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/INSTALL	Fri Jan 27 13:33:43 2012 +0100
@@ -0,0 +1,101 @@
+Zuerst machen wir ein sparse Image für unsere später CF-Card
+und partitionieren dies.
+
+    # dd of=<IMAGE> bs=1K count=0 seek=<BLOCKS of CF>
+    # parted -a optimal -s -- <LOOP> mklabel msdos
+    # parted -a optimal -s -- <LOOP> mkpart primary ext4 1 -1
+
+Nun mappen wir uns ein paar Loop-Devices, damit wir erfolgreich
+ein Filesystem und den GRUB installieren können. (Nur der Offset
+der ersten Partition reicht nicht, denn wir müssten auch wissen, wie
+groß das FS werden soll, darum lassen wir kpartx für uns arbeiten.)
+
+    # kpartx -av <IMAGE>
+    # mkfs -text4 <LOOP0p1>
+    # tune2fs -O ^has_journal <LOOP0p1>
+    # e2label <LOOP0p1> <LABEL>
+
+Nun muß das FS gemountet werden, damit der Grub seine Files
+dort rein tun kann.
+
+{{ Es scheint einen Bug im Grub zu geben, der ihn hindert, von einem 
+device-Mapper /dev/mapper/loop0p1 das Filesystem zu bestimmen. Man kann 
+jetzt mal ein Block-Device mit der Major/Minor-Number von
+/dev/mapper/loop0p1 anlegen und dann funktioniert auch grub-install,
+oder wir machen noch ein weiteres Loop-Device, und mounten dieses}}
+
+    # losetup -fv <LOOP0p1>
+    # mount <LOOP2> <MNT>
+
+Aus irgendwelchen Gründen hat Grub nicht bemerkt, welcher Partitionstabellen-
+Typ das ist, also muss das Modul noch mit eingebettet werden:
+
+    # grub-install --modules='part_msdos' --root-directory=<MNT> <LOOP>
+    # Grub-Config einspielen <grub/grub.cfg> und anpassen!
+    
+Zum Test kann das mit KVM probiert werden:
+
+    # kvm -hda image
+    
+Dann können wir „bootstrappen“:
+
+    # http_proxy=http://localhost:3128/ debootstrap \
+	--arch i386 stable \
+	<MNT> http://ftp.de.debian.org/debian
+
+    # chroot <MNT>
+    # <MNT> > /etc/apt/apt.conf.d/10alix
+    'APT::Install-Recommends "false";'
+
+    # <MNT> > /etc/hostname
+    alix
+
+    [] vi /etc/default/rcS
+    RAMRUN=yes
+    RAMLOCK=yes
+    RAMTMP=yes
+    RAMSHM=yes
+
+    # <MNT> rm /etc/mtab
+    # <MNT> ln -s /proc/mounts /etc/mtab
+    # <MNT> rm /etc/resolv.conf
+    ln -s /var/run/resolv.conf /etc/
+
+    # <MNT> >> /etc/fstab
+    /dev/disk/by-label/<LABEL> / ext4 defaults,ro,relatime 0 0
+    tmp /tmp tmpfs defaults 0 0
+    log /var/log tmpfs defaults 0 0
+    /var/run /var/lib/urandom auto bind,defaults 0 0
+    /var/run /var/lib/logrotate auo bind,defaults 0 0
+
+
+    [] etc/inittab anpassen:
+     - serielle Konsole eintragen
+     - eine normale lassen (für Simulation in kvm)
+
+    # <MNT> > /etc/udev/rules.d/70-persistent-net.rules
+
+    [] etc/network/interfaces <etc/network/interfaces>
+    [] etc/udev/rules.d/70-alix.rules <etc/udev/rules.d/10-alix.rules>
+
+    # passwd root
+    # aptitude update
+    # aptitude purge isc-dhcp-client
+    # aptitude install linux-image-686 openssh-server udhcpc ifplugd vim busybox-syslogd ferm
+    # aptitude install chrony
+
+    # <MNT> vi /etc/default/ifplugd
+    [] vi etc/logrotate.conf
+    [] vi etc/logrotate.d/*
+
+    # root/.bashrc <root/.bashrc>
+
+    [] vi etc/environment
+    export BLKID_FILE=/run/blkid.tab 
+
+    # <MNT> dpkg-reconfigure tzdata
+
+    [] vi etc/default/apache2
+    mkdir /var/log/apache2
+
+ferm ohne cache (/etc/default/ferm)