Η Systemd αναπτύσσει τη δυνατότητα λήψης εικόνων συστήματος μέσω HTTP

Ο Lennart Poettering πρότεινε να συμπεριληφθεί μια αλλαγή στο σύστημα διαχείρισης συστήματος που θα επέτρεπε στο σύστημα να εκκινήσει χρησιμοποιώντας μια εικόνα συστήματος αρχείων root που ανακτήθηκε από έναν εξωτερικό κεντρικό υπολογιστή μέσω HTTP. Η αλλαγή συνοψίζεται στην επέκταση του systemd με τη δυνατότητα όχι μόνο λήψης μιας εικόνας δίσκου μέσω HTTP στο αρχικό στάδιο εκκίνησης, αλλά και αποσυσκευασίας της εικόνας που κατεβάσατε, δέσμευσή της σε μια συσκευή μπλοκ σε λειτουργία loopback, προσάρτηση της συσκευής μπλοκ ως /sysroot και εκκίνηση του συστήματος από αυτήν.

Η υποστήριξη για τη λήψη εικόνων δίσκου κατά την εκκίνηση του συστήματος χρησιμοποιώντας το systemd-import-generator περιλαμβάνεται ήδη στο systemd 257. Η υπόλοιπη λειτουργικότητα βρίσκεται ακόμη στο στάδιο του πρωτοτύπου και απαιτεί περαιτέρω ανάπτυξη. Η υλοποίηση δεν υποστηρίζει ακόμη τον πλήρη κύκλο εκκίνησης, αλλά τα μελλοντικά σχέδια περιλαμβάνουν την επέκταση αυτής της λειτουργικότητας ώστε να περιλαμβάνει τη φόρτωση καθολικών εικόνων πυρήνα (UKI) μέσω του UEFI HTTP Boot, τα οποία συνδυάζουν έναν φορτωτή εκκίνησης UEFI (UEFI boot stub) και μια εικόνα πυρήνα σε ένα μόνο αρχείο. Linux και το περιβάλλον συστήματος initrd φορτώθηκε στη μνήμη.

Η διεύθυνση URL για τη φόρτωση της εικόνας του συστήματος έχει προγραμματιστεί να υπολογιστεί με βάση τη διεύθυνση URL που καθορίζεται για την εικόνα EFI στις ρυθμίσεις εκκίνησης UEFI HTTP (για παράδειγμα, κατά τη φόρτωση μέσω EFI HTTP Boot "http://example.com/somedir/myimage.efi", ο χειριστής UKI initrd θα φορτώσει την εικόνα rootfs.commy.xrawmple ως "http://example. Στο μέλλον, εκτός από το HTTP ως μέσο μεταφοράς για τη λήψη εικόνας, σχεδιάζεται να προστεθεί υποστήριξη για την τεχνολογία NVMe-over-TCP, η οποία επιτρέπει την πρόσβαση σε μονάδες NVMe μέσω του δικτύου (NVM Express μέσω Fabrics) χρησιμοποιώντας το πρωτόκολλο TCP.

Αναμένεται ότι η εκκίνηση από εικόνες που λαμβάνονται από εξωτερικό κεντρικό υπολογιστή θα απλοποιήσει την οργάνωση της δοκιμής σύγχρονων αμετάβλητων λειτουργικών συστημάτων σε πραγματικό υλικό. Ο προγραμματιστής μπορεί να δημιουργήσει μια εικόνα με το περιβάλλον συστήματος στον υπολογιστή του χρησιμοποιώντας το βοηθητικό πρόγραμμα mkosi και να την κάνει διαθέσιμη μέσω HTTP χρησιμοποιώντας την εντολή "mkosi -f serve". Στον υπολογιστή όπου θέλετε να δοκιμάσετε το σύστημα, απλά πρέπει να ενεργοποιήσετε την εκκίνηση HTTP στο EFI και να προσθέσετε τη διεύθυνση URL της εκκινήσιμης εικόνας με την εντολή: kernel-bootcfg —add-uri=http://192.168.47.11:8081/image.efi —title=testloop —boot-order=0

Μετά από αυτό, μπορείτε απλά να επανεκκινήσετε τον υπολογιστή και θα φορτώσει την τυπική εικόνα του πυρήνα UKI, η οποία στη συνέχεια θα φορτώσει την εικόνα δίσκου που έχει προετοιμαστεί από τον προγραμματιστή με το root FS. Μέχρι να απενεργοποιηθεί η εκκίνηση HTTP στο EFI, κάθε επόμενη επανεκκίνηση του υπολογιστή θα έχει ως αποτέλεσμα την εκκίνηση μιας νέας εικόνας συστήματος. Αυτός ο τύπος δοκιμής δεν επηρεάζει με κανέναν τρόπο τους τοπικούς δίσκους.

Πηγή: opennet.ru

Αγοράστε αξιόπιστη φιλοξενία για ιστότοπους με προστασία DDoS, διακομιστές VPS VDS 🔥 Αγοράστε αξιόπιστη φιλοξενία ιστοσελίδων με προστασία DDoS, διακομιστές VPS VDS | ProHoster