Αναγνώστες σαν εσάς βοηθούν στην υποστήριξη του MUO. Όταν κάνετε μια αγορά χρησιμοποιώντας συνδέσμους στον ιστότοπό μας, ενδέχεται να κερδίσουμε μια προμήθεια θυγατρικών.
Το Windows Subsystem for Linux, ή WSL, είναι ένας πολύ καλός τρόπος για προγραμματιστές που πρέπει να εκτελούν Linux και Windows για να το κάνουν χωρίς να χρειάζεται να ρυθμίσουν μια εικονική μηχανή ή διπλή εκκίνηση.
Ένα σημαντικό νέο χαρακτηριστικό είναι η δυνατότητα εκτέλεσης του systemd σε WSL, το οποίο είναι χρήσιμο για προγραμματιστές ιστού που ρυθμίζουν τοπικά περιβάλλοντα δοκιμής. Δείτε πώς μπορείτε να το ενεργοποιήσετε και να το χρησιμοποιήσετε.
Γιατί να εγκαταστήσω το systemd στο WSL;
Οι υπηρεσίες WSL εκτελούν από προεπιλογή την παλαιότερη υπηρεσία έναρξης System V και οι υπηρεσίες ξεκινούν με την εντολή service. Τον Σεπτέμβριο του 2022, Microsoft πρόσθεσε την επιλογή χρήσης systemd για τη διαχείριση υπηρεσιών. Οι περισσότερες μεγάλες διανομές Linux έχουν ήδη αλλάξει σε systemd.
Παρά τη διαμάχη, σε πραγματική χρήση, είναι πολύ πιο απλό
έναρξη και διακοπή υπηρεσιών με το systemd. Είναι επίσης πιο εύκολο να ακολουθήσετε μαζί με άλλα μαθήματα Linux, καθώς δεν χρειάζεται να αλλάξετε τόσο πολύ τις εντολές.Ένα τοπικό περιβάλλον δοκιμής LAMP θα είναι πιο κοντά σε έναν τυπικό διακομιστή Linux, επομένως η εφαρμογή σας θα είναι ευκολότερο να εντοπιστεί σφάλματα.
Πώς να ενεργοποιήσετε το systemd στο WSL
Για να ενεργοποιήσετε το systemd, πρέπει να εκτελέσετε τη σωστή έκδοση του WSL. Το systemd απαιτεί έκδοση WSL 0.67.6 ή νεότερη. Μπορείτε να ελέγξετε τον αριθμό έκδοσης ανοίγοντας το PowerShell και πληκτρολογώντας:
wsl --εκδοχή
Εάν έχετε εγκαταστήσει μια παλαιότερη έκδοση και θέλετε να χρησιμοποιήσετε το systemd, μπορείτε να ενημερώσετε το WSL χρησιμοποιώντας:
wsl --εκσυγχρονίζω
Τώρα θα πρέπει να ρυθμίσετε το systemd σε οποιαδήποτε διανομή έχετε εγκαταστήσει με το WSL. Η διαδικασία είναι η ίδια σε οποιαδήποτε διανομή WSL, είτε πρόκειται για Ubuntu, Debian, Fedora ή κάτι άλλο.
Απλώς επεξεργαστείτε το /etc/wsl.conf αρχείο στο σύστημά σας ως root και προσθέστε αυτές τις γραμμές:
[μπότα]
systemd=αληθής
Εάν το αρχείο wsl.conf δεν υπάρχει, μην ανησυχείτε και προχωρήστε δημιουργώντας το μόνοι σας. Αυτές οι γραμμές θα λειτουργούν ανεξάρτητα.
Αποθηκεύστε το αρχείο και τώρα θα πρέπει να επανεκκινήσετε τυχόν εκτελούμενες διανομές WSL. Για να το κάνετε αυτό, ανοίξτε ένα παράθυρο PowerShell και πληκτρολογήστε αυτήν την εντολή:
wsl --ΤΕΡΜΑΤΙΣΜΟΣ ΛΕΙΤΟΥΡΓΙΑΣ
Ανοίξτε ένα άλλο τερματικό και θα μπορείτε να διαχειρίζεστε υπηρεσίες με το systemd στο WSL.
Έναρξη και διακοπή υπηρεσιών WSL με systemd
Μπορείτε τώρα να χρησιμοποιήσετε systemctl για έναρξη και διακοπή υπηρεσιών στο WSL.
Ας υποθέσουμε ότι χρησιμοποιούσατε τον Apache για να εκτελέσετε έναν τοπικό διακομιστή ιστού για να δοκιμάσετε μια εφαρμογή Ιστού που αναπτύσσατε.
Θα ξεκινούσατε το Apache ως εξής:
sudosystemctlαρχήapache2.υπηρεσία
Εάν θέλετε να ξεκινήσει αυτόματα, θα το ενεργοποιούσατε χρησιμοποιώντας:
sudo systemctl ενεργοποίηση apache2.service
Και απενεργοποιήστε το με:
sudosystemctlνα σταματήσειapache2.υπηρεσία
Τώρα μπορείτε να εκτελέσετε το systemd σε WSL
Με τις πιο πρόσφατες ενημερώσεις στο WSL, μπορείτε πλέον να ενεργοποιήσετε το systemd και να ξεκινήσετε και να σταματήσετε τις υπηρεσίες όπως τις χρειάζεστε. Αυτό κάνει το WSL ένα καλό περιβάλλον για την ανάπτυξη εφαρμογών web, καθώς μπορείτε να τις δοκιμάσετε σαν να χρησιμοποιούσατε οποιοδήποτε άλλο τυπικό μηχάνημα Linux.
Είναι επίσης εξαιρετικά εύκολο να εγκαταστήσετε έναν διακομιστή LAMP (Linux, Apache, MySQL, PHP) στο υποσύστημα Windows για Linux.