Ούτε τρέχοντας sudo /sbin/vboxconfig φτιάχνει η κατάσταση
george@ryzen:~$ sudo /sbin/vboxconfig
[sudo] password for george:
vboxdrv.sh: Stopping VirtualBox services.
vboxdrv.sh: Starting VirtualBox services.
vboxdrv.sh: Building VirtualBox kernel modules.
vboxdrv.sh: failed: Look at /var/log/vbox-setup.log to find out what went wrong.
There were problems setting up VirtualBox. To re-start the set-up process, run
/sbin/vboxconfig
as root. If your system is using EFI Secure Boot you may need to sign the
kernel modules (vboxdrv, vboxnetflt, vboxnetadp, vboxpci) before you can load
them. Please see your Linux system's documentation for more information.
Ούτε με secure boot disabled αλλάζει κάτι.
Εκκινώντας με kernel 5.4 τρέχει κανονικά.
Από γκουγκλάρισμα που έκανα, δεν έβγαλα άκρη, αλλά διάβασα αλληλοκατηγορίες, άλλοι ρίχνουν τις ευθύνες στον Linus που “breaks compatibility” με κάθε νέο kernel και άλλοι ορκίζονται ότι είναι θέμα του Virtualbox που αρνούνται να αποδεχτούν και να διορθώσουν.
Στο αρχείο /var/log/vbox-setup.log μπορείς να δεις τι έφταιξε και γιατί δεν έγιναν compile οι οδηγοί του Virtual Box. Αν ξέρεις λίγη C κάποιες φορές οι αλλαγές είναι απλές. Αλλά μάλλον δεν θα πρέπει να είναι τόσο απλό. Οπότε είτε περιμένεις λίγο, είτε χρησιμοποιείς ένα συμβατό πυρήνα.
ΥΓ Τώρα αν αναζητάς “ευθύνες”, αν έχει νόημα κάτι τέτοιο, προφανώς θα πρέπει να αλλάξει τον κώδικα του το VirtualBox. Το εσωτερικό του πυρήνα αλλάζει συνεχώς, και θέλουμε να αλλάζει και να βελτιώνετε. Αν κάτι παγώσει και γίνει stable API αυτό προκαλέι θέματα που μπορεί να σκάσουν μια δεκαετία μετά.
Στα εξωτερικά στρώματα του πυρήνα, αυτά με τα οποία μιλάνε οι εφαρμογές, υπάρχει εγγύηση σταθερότητας και προγράμματα της προηγούμενης χιλιετίας θα εξακολουθούν να τρέχουν μια χαρά, τουλάχιστον όσον αφορά τον πυρήνα. Είναι είδηση αν σπάσει κάτι. Αλλά αν θέλεις να αλληλεπιδράσεις ποιο βαθιά, όπως θέλει να κάνει το VirtualBox τότε δεν υπάρχει κάποια εγγύηση σταθερότητας και θα πρέπει να ακολουθείς τις αλλαγές.
Το πλεονέκτημα ενός πυρήνα με ελεύθερο προσβάσιμο κώδικά, είναι ακριβώς αυτό. Μπορείς να κατέβεις χαμηλά, και ο ο οδηγός σου να σκαλίσει ότι θέλει, αλλά και να αλλάξεις το λειτουργικό και να το προσαρμόσεις στις ανάγκες ενός οδηγού. Άλλα λειτουργικά που δεν το έχουν αυτό, έχουν αναγκαστικά μεν σταθερά API για τους οδηγούς, και μάλιστα έχουν 2-3 ώστε αν μπορούν να είναι συμβατά με παλιούς οδηγούς. Αυτό αυξάνει την πολυπλοκότητα και δεν μπορείς να έχεις την σχεδίαση που θέλεις. Ονόματα δεν λέμε υπολήψεις δεν θίγουμε
Δεν συμφωνώ με την αλλαγή τίτλου. Το θέμα όπως το είχα είναι πιο ακριβές… Το πρόβλημα δεν είναι με τον kernel 5.10, αλλά με οποιοδήποτε kernel χρησιμοποιήσω, μεταγενέστερο του 5.4 με τον οποίο έφτιαξα το VM
Το θεμα υπαρχει με τα DKMS modules του Virtualbox. Μετα απο καποιο kernel και μετα δεν κανουν compile. Το ιδιο συμβαινει και με τους drivers της NVidia.
Εαν καταφερουν και φτιαξουν τα modules ολα τα αλλα θα φτιαξουν.
Σαν workaround θα δοκιμαζα να βαλω το συστημα μου σε CSM mode και οχι σε σκετο UEFI και θα ξαναδοκιμαζα να κανω: sudo /sbin/vboxconfig στην περιεργη περιπτωση που το προβλημα των DKMS modules εστιαζεται στα signatures που χρειαζεται το SecureBoot (καποια UEFI implementations ειναι λιγο περιεργα σε αυτο το θεμα).
Σε Arch πάντως με πυρήνα 5.10.11-zen2-1-zen δουλεύει μια χαρά.
Αναφέρω μονάχα ότι για κάποιον λόγο στο Arch δεν φαίνεται να υπάρχει το vboxconfig αλλά η αντίστοιχη εντολή είναι modprobe vboxdrv
Οπωσδήποτε πρέπει να είναι εγκατεστημένα τα αντίστοιχα headers πχ για μένα linux-zen-headers βεβαιώσουν ότι τα έχεις και αν τα εγκαταστήσεις κάνε και μια επανεκκίνηση. Το να σού λείπουν τα αντίστοιχα headers είναι αιτία για να δουλεύει σε έναν πυρήνα και όχι σε άλλον.
Τρέχω κανονικότατα VM που είχα στήσει σε παλιότερο kernel. (νομίζω 5.8 δεν έχει σημασία)
Δεν είχε σημασία ο kernel αλλά χρειάζονται τα αντίστοιχα headers (και αυτό δεν έχει σχέση με ποιον kernel είχα στήσει). Δλδ όταν έβαλα τον zen πυρήνα δεν δούλευαν τα VM με το σφάλμα που αναφέρεις και έπρεπε να εγκαταστήσω τα headers για τον zen (είχα εγκατεστημένα τα headers για τον απλό). Και τώρα αν δεν έχω εγκατεστημένα τα headers για τον lts (5.4) δεν δουλεύει το VM στον παλιό, αν θέλω να δουλεύει θα πρέπει απλά να τα εγκαταστήσω.
Ομοίως κι εγώ. Τρέχω 5.10.11-arch1-1 και το virtualbox (το οποίο έχει χρόνια που το έστησα) τρέχει μια χαρά και δεν μου έκανε ποτέ και σε καμία φάση νερά τέτοιου είδους (να μην ξεκινάει κτλ).
george@ryzen:~$ dpkg -l | grep linux-headers-$(uname -r)
ii linux-headers-5.10.11-051011-generic 5.10.11-051011.202101271131 amd64 Linux kernel headers for version 5.10.11 on 64 bit x86 SMP
Δεν μπορώ να βγάλω άκρη και δεν έχω χρόνο να το ψάξω και άλλο. Προς το παρόν θα αρκεστώ να μπουτάρω με kernel 5.4 για να τρέχω το VM.
Παίδες το πρόβλημα λύθηκε εν μέρει εγκαθιστώντας τον kernel 5.10.9. To VM έπαιξε απευθείας.
Με μεταγενέστερο π.χ. 5.10.11 // 5.10.12 δεν παίζει.
Υποψιάζομαι ότι το τελευταίο Virtual box που εισήγαγε support για kernel 5.10, απλά δεν υποστηρίζει τα τελευταία updates του κερνελ 5.9.11, 5.9.12 . Προς το παρόν μένω με τον 5.10.9 και κάνω τη δουλειά μου.
Δεν είναι τόσο απόλυτο. Έχει σημασία πώς εγκαθιστά κάποιος τον πυρήνα. Όταν αναβαθμίζω πυρήνα, ναι ισχύει ότι τα headers ακολουθούν αυτόματα και δεν υπάρχει θέμα. Αλλά όταν εγκατέστησα καινούργιο πυρήνα (zen) δεν συνέβη αυτό και έπρεπε να εγκαταστήσω τα headers όπως και έκανα.
δεν θέλω να κοιτάξω μόνο τα εγκατεστημένα πακέτα θέλω να δω και πιο μου λείπει και επίσης δεν θέλω να ψάξω στα desctriptions, αν δεν ξέρω τι ψάχνω θα ψάξω στο ίντερνετ. Επίσης δεν έχω καν μεγάλο ενδιαφέρον να θυμάμαι σύνταξη εντολών. μου αρκεί η less και η grep στην πιο απλή εκδοχή της. Και για την ιστορία η σωστή σύνταξη για ψάξιμο είναι