Παρασκευή, Ιανουαρίου 07, 2005

Εγκατάσταση FreeBSD και Linux

Χτες έφαγα μερικές ώρες για να εγκαταστήσω το FreeBSD 5.3 και το (Debian-based) Ubuntu Linux σε έναν υπολογιστή που είχε ήδη Windows. Ήταν η δεύτερη απόπειρα μου αλλά με μια διαφορά. Η πρώτη απόπειρα ήταν ανεπιτυχής γιατί σαν κλασικός Έλληνας θεώρησα δεδομένο ότι οι Partition Managers και οι Boot Loaders του Linux και του FreeBSD θα αναγνώριζαν το ένα το άλλο. Έλα όμως που αυτό δεν γίνεται. Τελικά βρήκα οδηγίες στο Internet.
Για όσους ενδιαφέρονται, αναφέρω ότι πρέπει πρώτα να εγκαταστήσεις το FreeBSD. Προσοχή και σημειώσεις χρειάζονται όταν βρίσκεσαι στη διαδικασία κατανομής χώρου με το Fdisk. Εφόσον τα Windows είναι ήδη εγκατεστημένο και κατέχουν 1 "slice" πρέπει να δημιουργήσεις 1 slice FreeBSD και 1 slice για το Linux. Το FreeBSD έχει διαφορετικό disklabel από το Linux. Για παράδειγμα το ad0s2 είναι το δεύτερο slice του πρώτου δίσκου IDE (περισσότερες πληροφορίες). Σημειώνοντας σε ένα χαρτί τα 2 slice που δημιουργήσαμε (εγώ είχα το ad0s2 για το FreeBSD και το ad0s4 για το Linux) συνεχίζουμε στη διαδικασία εγκατάστασης. Προσοχή πρέπει να δώσουμε όταν θα φτάσουμε στην επιλογή Boot Manager. Θα πρέπει να επιλέξουμε το Standard (Install a standard MBR). Μετά στην επιλογή κατάτμήσεων και mount points μπορούμε να πατήσουμε το Α οπότε θα κάνει μόνο του κάποια επιλογή. Πολύ χώρο πρέπει να αφήσουμε για το /usr. Όσον αφορά στο τί θα εγκαταστήσουμε φροντίστε να επιλεξετε και τα sources. Όταν είχα ήδη εγκαταστήσει το FreeBSD και ήθελα να μεταγλωττίσω τον πυρήνα αναγκάστηκα να εκτελέσω το /stand/sysinstall και επιλέγοντας Custom/Custom να επιλέξω την εγκατάσταση των sources.
Όταν ολοκληρωθεί η εγκατάσταση του FreeBSD το εκτελούμε για να δούμε αν υπάρχει κάποιο πρόβλημα. Μετά ξεκινάμε την εγκατάσταση του Linux. Όταν εμφανίζεται ο Partition Manager θα δείτε ότι ο χώρος που διαθέσαμε για το FreeBSD δεν αναγνωρίζεται ως FreeBSD. Για την εγκατάσταση του Linux θα χρησιμοποιήσουμε το χώρο που είχαμε επιλέξει ως slice για το Linux. Θα τον διαγράψουμε και θα ρυθμίσουμε τις κατατμήσεις εφόσον στο χώρο εκείνο δεν είχαμε ρυθμίσει κάτι για swap κτλ. Συνεχίζοντας την εγκατάσταση προσέχουμε ώστε ο boot manager, εγώ είχα τον GRUB, να εγκατασταθεί στο MBR.
Ολοκληρώνοντας την εγκατάσταση του Linux και επιβεβαιώνοντας ότι όλα πήγαν καλά πηγαίνουμε στο /boot/grub/menu.lst (ή grub.conf) και προσθέτουμε:

title FreeBSD
root(hd0,a)
kernel /boot/loader ro root=/dev/hda2

Δεν τελειώσαμε! Πρέπει να μεταγλωττίσουμε τον πυρήνα του Linux έτσι ώστε να αναγνωρίζει το σύστημα αρχείων UFS και το BSD disklabel. Επειδή αυτά είναι γνωστά δεν θα αναφέρω την διαδικασία. Το ίδιο όμως πρέπει να κάνουμε και στο FreeBSD. Όταν έχουμε μπει στο σύστημα με προνόμια root γράφουμε:

#cd /usr/src/sys/i386/conf
#cp GENERIC GHOST
#vi GHOST
το όνομα GHOST είναι δικιά μου επιλογή. Μέσα στο αρχείο προσθέτουμε το "options EXT2FS" (χωρίς τα εισαγωγικά), το αποθηκεύουμε και βγαίνουμε.

#/usr/sbin/config GHOST
Θα εμφανίσει κάποια σχόλια ανάμεσα στα οποία θα λέει και ../compile/GHOST . Αν λέει κάτι άλλο πχ ../../compile/GHOST τότε αλλάξτε την επόμενη εντολή.

#cd ../compile/GHOST
#make depend
#make
#make install

Πάλι δεν τελειώσαμε! Πρέπει να κάνουμε επανεκκίνηση του υπολογιστή και όταν μπούμε στο FreeBSD να γράψουμε

#mkdir /mnt/linux
#mount -t ext2fs /dev/ad0s4 /mnt/linux

ώστε να μπορούμε να ελέγχουμε και τα αρχεία του Linux. Το αντίστοιχο για το Linux αφού μεταγλωττίσαμε τον πυρήνα είναι "mount -t ufs /dev/hda2 /mnt/bsd".
Όσοι θελήσουν να κάνουν την εγκατάσταση θα πρέπει να προσέξουν τις ονομασίες ad0s2 κτλ όταν θα επιλέξουν την αλλαγή στο GRUB και στο mount.
Βέβαια σε όλα αυτά κάπου έβαλε το χεράκι του και ο Κεραμίδας. Βασικά στην πρώτη προσπάθεια που επειδή δεν έδινα πολύ χώρο (έδινα μέχρι 1GB ενώ τώρα έδωσα 6GB) δεν γίνονταν η εγκατάσταση. Βοήθησε και σε κάτι άλλο αλλά παράξενο. Σε κάποια λίστα Linux κάποιος είχε ρωτήσει αν υπάρχει κάποια εφαρμογή για αρχεία pdf. Ο Κεραμίδας είχε πει ότι υπάρχει το xpdf. Επειδή το xpdf δεν ήταν ανάμεσα στις εφαρμογές του FreeBSD base εγώ το είχα επιλέξει μόνος μου. Και όταν προσάρτησα τα συστήματα αρχείων των Windows και του Linux άνοιξα το εγχειρίδιο του FreeBSD και ψάχνοντας (νομίζω στη σελίδα165) βρήκα την εντολή:
# echo "/usr/X11R6/bin/gnome-session" > ~/.xinitrc
ώστε όταν γράφω #startx να γίνεται εκκίνηση του Gnome (το οποίο το είχα επιλέξει στην εγκατάσταση).

2 σχόλια:

Ανώνυμος είπε...

Σου δούλεψε σωστά το mount των UFS partitions από Linux; Σε ρωτάω γιατί το setup του FreeBSD 5.3 δημιουργεί UFS version 2 partitions και δεν ξέρω αν έχει support για UFSv2 το Linux ακόμη.

Για να μπορείς να κάνεις mount το Linux ad0s4 slice πιο εύκολα, μπορείς να κάνεις και το εξής:

# mkdir /linux

Υστερα προσθέτεις την κατάλληλη γραμμή στο fstab σου:

/dev/ad0s4 /linux ext2fs ro 0 0

κι είσαι έτοιμος...

Ανώνυμος είπε...

Ναι, αλλά δεν θέλω να έχω πάντα προσαρτημένο το Linux/FreeBSD στο άλλο λειτουργικό. Όταν είχα δοκιμάσει το Fedora 1 είχα δει ότι δεν έκανε αυτόματα mount στα Win για λόγους ασφαλείας. Δεν μου άρεσε αυτό αλλά είχανε δίκιο.