Προς το περιεχόμενο

Φόρτωμα μόνο του kernel μέσω του grub


firewalker

Προτεινόμενες αναρτήσεις

Μόνο ο πυρήνας είναι άχρηστος. Για να έχει οποιαδήποτε χρησιμότητα πρέπει να εκτελέσει ένα αρχικό process (φυσιολογικά το init) το οποίο με τη σειρά του εκτελεί ό,τι του έχει οριστεί (από το inittab και στη συνέχεια τα rc scripts).

Τι ακριβώς θέλεις να κάνεις;

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Όταν λέω μόνο ο kernel εννοώ φορτώνει μόνο ότι χρειάζεται για να λειτουργήσει σε κονσόλα. Κάτι σαν fail safe. Να παραλείπει δηλαδή στοιχεία για παράδειγμα από το rc.conf για Arch ή να μην το φορτώνει καθόλου.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Α ναι, γι αυτό υπάρχει το single user mode. Δε ξέρω σίγουρα τι έχει οριστεί να τρέχει το archlinux σε αυτό το runlevel, αλλά από ότι βλέπω στο manual εκτελεί μόνο το /etc/rc.single.

 

 

Για να ξεκινήσεις σε single user mode, πας στον grub και του δίνεις ένα "1" δίπλα στις υπόλοιπες παραμέτρους του πυρήνα (το 1 είναι το runlevel για single-user mode). Αυτό το κάνεις είτε φτιάχνοντας μία πρόσθετη καταχώρηση στο config του (menu.lst ή grub.conf), είτε περνώντας την παράμετρο στο boot με "e", όπως ανέφερε και ο keftedakos λίγο πιο πριν. Το default runlevel ορίζεται στο /etc/inittab και μπορείς να αλλάξεις runlevel ανά πάσα στιγμή με την telinit.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ναι, ό,τι έχεις ορίσει στην καταχώρηση στο config του grub. Φορτώνεται πριν προλάβει να φορτώσει ο kernel και να αποφασίσει το init σε τι runlevel θα ξεκινήσει :)

 

Ο πυρήνας μόνος του είναι άχρηστος γιατί η λειτουργικότητα που χρειάζεσαι για να αλληλεπιδράσεις μαζί του με οποιονδήποτε τρόπο παρέχεται μέσω εφαρμογών που εκτελούνται σε userspace.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Αν θέλεις την υπάρχουσα εγκατάσταση να την τρέξεις σε single user χωρίς δίκτυο και περιττά services, στην αρχική οθώνη του grub θα πατίσεις 'e', και μετα θα πάς στην γραμμη που λεει "kernel /boot/οπυρήναςσου" και θα πατίσεις πάλι 'e'. Εκεί θα προσθέσεις "runlevel=1" και θα πατίσεις <enter>. Τέλος πατάς 'b' και φορτώνει σε runlevel 1.

 

Αν πάλι θέλεις να φτιάξεις κάτι σαν "διανομή" δικό σου, έιχα κάνει κάτι ανάλογο πρίν τρείς μήνες.Για αρχή ρίξε μία ματιά σε αυτό εδώ http://www.geocities.com/potato.geo/bootlinuxcd.html. Περιγράφει πώς να φτιάξεις ένα boot CD με πυρήνα 2.2, busybox κτλ. Μη σε τρομάζει η περιγραφή μου, μπορεί να προσσαρμοστεί άνετα με πυρήνα 2.6 και lilo και μπορεί να παίξει είτε σε ramdisk είτε να εγκατασταθεί σε δίσκο. Αν θέλεις περισσότερες λεπτομέριες για αυτό μπορώ να ψάξω να βρώ τι είχα κάνει ακριβώς. Γίνεται πολύ μικρό και απασχολεί 4 MB χώρο ;)

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...