Διορθώστε σφάλματα, προβλήματα και ζητήματα υποσυστήματος Windows για Linux

Όπως όλα τα λογισμικά, έτσι και το υποσύστημα των Windows (WSL2) έχει επίσης αρκετά προβλήματα. Σε αυτόν τον οδηγό, πρόκειται να αντιμετωπίσουμε τα Μηνύματα σφαλμάτων και τους Κώδικες του Υποσυστήματος Windows για Linux .(Windows Subsystem for Linux)

(Fix Windows Subsystem)Διορθώστε σφάλματα(Linux Errors) , προβλήματα(Problems) και ζητήματα (Issues)υποσυστήματος Windows για Linux

Αυτά είναι μηνύματα για τα οποία πρόκειται να αντιμετωπίσουμε τα Μηνύματα σφαλμάτων και τους Κώδικες του (Codes)Υποσυστήματος Windows(Windows Subsystem) για Linux(Linux Error Messages) .

  1. Δεν εμφανίζονται επιλογές για το WSL 2
  2. Σφάλμα: 0x1bc
  3. Σφάλμα: 0x80040306 κατά την εγκατάσταση
  4. Δεν είναι δυνατή η πρόσβαση στα αρχεία WSL από τα Windows
  5. Δεν είναι δυνατή η έναρξη της διανομής WSL 2 και εμφανίζεται μόνο το ' WSL 2 ' στην έξοδο
  6. Η εντολή δεν βρέθηκε
  7. Σφάλμα: 0x80370102 Δεν ήταν δυνατή η εκκίνηση της εικονικής μηχανής επειδή δεν έχει εγκατασταθεί μια απαιτούμενη δυνατότητα
  8. Σφάλμα: 0x80040154 μετά την ενημέρωση των Windows(Windows)
  9. Το WSL σταματά(WSL Stops) να λειτουργεί με  Σφάλμα 0x80070003(Error 0x80070003)
  10. Εμφάνιση αλλαγής γλώσσας σε WSL
  11. Προβλήματα εγκατάστασης(Installation) μετά την επαναφορά συστήματος των Windows(Windows)
  12. Δεν υπάρχει πρόσβαση στο διαδίκτυο στο WSL
  13. Δεν επιτρέπεται η άδεια κατά τη χρήση του Ping
  14. Δεν είναι δυνατή η εκκίνηση μετά την εγκατάσταση του WSL 2
  15. Δεν είναι δυνατή η εκτέλεση των εντολών των Windows(Windows Commands) μέσα σε έναν διανομέα
  16. Το ICS είναι απενεργοποιημένο
  17. Το Bash είναι κρεμασμένο
  18. Ζητήματα σύνδεσης OpenSSH-Server
  19. Δεν ήταν δυνατή η εύρεση της αναφερόμενης διάταξης
  20. Διορθώστε(Correct) ( σχετικά με το SSH(SSH) ) σφάλματα άδειας

Ας μιλήσουμε για αυτούς λεπτομερώς.

1] Δεν εμφανίζονται επιλογές για το WSL 2

Πολλοί χρήστες των Windows(Windows) έχουν παραπονεθεί ότι, παρόλο που βρίσκονται στην έκδοση 1903, δεν μπορούν να δουν επιλογές για το WSL 2 . Αυτό συμβαίνει όταν το μηχάνημα του υπολογιστή σας δεν έχει λάβει ακόμη το backport για το WSL 2 .

Για να το διορθώσετε, πρέπει απλώς να ελέγξετε για ενημερώσεις( check for updates) και θα είστε έτοιμοι.

2] Σφάλμα: 0x1bc

Ενδέχεται να δείτε το ακόλουθο σφάλμα όταν η "Γλώσσα εμφάνισης" (“Display Language” ) ή η  "Τοπική ρύθμιση συστήματος" (“System Locale” ) δεν έχουν οριστεί στα  Αγγλικά.(English.)

wsl --set-default-version 2

Error: 0x1bc

For information on key differences with WSL 2 please visit https://aka.ms/wsl2

Για να διορθώσετε το σφάλμα, πρέπει να ελέγξετε εάν ο πυρήνας(Kernel) είναι εγκατεστημένος στον υπολογιστή σας. Για να το κάνετε αυτό, χρησιμοποιήστε την ακόλουθη εντολή.

dir %SystemRoot%\system32\lxss\tools\kernel

Αν δεν έχετε Kernel , κατεβάστε το από το aka.ms . Φροντίστε να το κατεβάσετε ως διαχειριστής και να εγκαταστήσετε τον πυρήνα(Kernel) στον υπολογιστή σας για να διορθώσετε το σφάλμα.

3] Σφάλμα: 0x80040306 κατά την εγκατάσταση

Διορθώστε σφάλματα, προβλήματα και ζητήματα του υποσυστήματος Windows για Linux

Εάν βλέπετε Σφάλμα: 0x80040306 κατά την εγκατάσταση. Για να το διορθώσετε, πρέπει να απενεργοποιήσετε την  Κονσόλα παλαιού τύπου. (Legacy Console. )Για να το κάνετε αυτό, ακολουθήστε τα βήματα που δίνονται.

  1. Ανοίξτε  τη γραμμή εντολών (Command Prompt ) ως διαχειριστής από το  μενού Έναρξη.(Start Menu.)
  2. Κάντε δεξί κλικ(Right-click) στο λογότυπο cmd και επιλέξτε Ιδιότητες.(Properties.)
  3. Τώρα, καταργήστε την επιλογή " Χρήση κονσόλας παλαιού τύπου" (Use legacy console” ) και κάντε κλικ στο ΟΚ.

Τέλος, ελέγξτε αν διορθώνει το πρόβλημα.

4] Δεν είναι δυνατή η πρόσβαση στα αρχεία WSL από τα Windows

Εάν δεν μπορείτε να αποκτήσετε πρόσβαση στο Υποσύστημα Windows(Windows Subsystem) για Linux από το \\wsl$ στα Windows , αυτό μπορεί να σημαίνει ότι ο διακομιστής αρχείων πρωτοκόλλου 9P αποτυγχάνει να ξεκινήσει.

Η πιο εύκολη λύση είναι να ενημερώσετε τον υπολογιστή σας και να ενεργοποιήσετε τις "ενημερώσεις για προϊόντα της Microsoft στο Windows Update". (“updates for Microsoft products on Windows Update”. )Για να το κάνετε αυτό, μπορείτε να ακολουθήσετε τα παρακάτω βήματα.

  1. Εκκινήστε τις  Ρυθμίσεις (Settings ) από  Win + I.
  2. Κάντε κλικ  Update & Security > Advanced options.
  3. Χρησιμοποιήστε το διακόπτη για να απενεργοποιήσετε τη « Λήψη ενημερώσεων για άλλα προϊόντα της Microsoft κατά την ενημέρωση των Windows(Receive updates for other Microsoft products when you update Windows) ».

Αυτό θα διορθώσει το πρόβλημα για εσάς.

5] Δεν είναι δυνατή η εκκίνηση της διανομής WSL 2 και εμφανίζεται μόνο το ' WSL 2 ' στην έξοδο

Αυτό το σφάλμα είναι αναπόφευκτο εάν η γλώσσα εμφάνισης δεν έχει οριστεί στα Αγγλικά. Θα δείτε την ακόλουθη έξοδο όταν προσπαθείτε να ξεκινήσετε το WSL 2 .

C:\Users\me>wsl

WSL 2

Για να διορθώσετε το σφάλμα, πρέπει να κάνετε λήψη και εγκατάσταση του πυρήνα(Kernel) με μη αυτόματο τρόπο. Μπορείτε να κάνετε λήψη του αρχείου από το aka.ms/wsl2kernel . Εγκαταστήστε τον πυρήνα(Kernel) για να διορθώσετε εύκολα το σφάλμα.

6] Η εντολή δεν βρέθηκε

Αυτό είναι ένα από τα κοινά σφάλματα που βλέπει κανείς όταν εκτελεί ένα αρχείο .exe των Windows στο Linux . Ενδέχεται να δείτε το ακόλουθο σφάλμα όταν προσπαθείτε να κάνετε το ίδιο.

$ notepad.exe

-bash: notepad.exe: command not found

Αυτό συμβαίνει όταν το  $PATH αποτυγχάνει να βρει το αρχείο .exe(.exe) . Η καλύτερη λύση για αυτό το σφάλμα είναι να εκτελέσετε την ακόλουθη εντολή στο Terminal .

export PATH=$PATH:/usr/sbin

Κάντε αυτό και ελέγξτε αν διορθώνει το σφάλμα.

7] Σφάλμα: 0x80370102 Δεν ήταν δυνατή η εκκίνηση της εικονικής μηχανής επειδή δεν έχει εγκατασταθεί μια απαιτούμενη δυνατότητα

Πολλοί αντιμετώπισαν αυτό το σφάλμα κατά την προσπάθεια εγκατάστασης ενός διανομέα Linux . Σε αντίθεση με τα προηγούμενα σφάλματα, αυτό το σφάλμα έχει περισσότερες από μία λύσεις. Λάβετε, λοιπόν, και διαβάστε όλες τις λύσεις.

Αυτά είναι τα πράγματα που μπορείτε να κάνετε για να διορθώσετε το Σφάλμα: 0x80370102, Δεν ήταν δυνατή η εκκίνηση της εικονικής μηχανής επειδή δεν έχει εγκατασταθεί μια απαιτούμενη δυνατότητα .

  1. Ενεργοποίηση Hyper-V
  2. Ενεργοποίηση εικονικοποίησης υλικού
  3. Ενεργοποιήστε την ένθετη εικονικοποίηση

Ας μιλήσουμε για αυτούς λεπτομερώς.

Ενεργοποίηση Hyper-V

Χωρίς το Hyper-V(Hyper-V) , δεν θα μπορείτε να δημιουργήσετε ένα εικονικό περιβάλλον(Environment) . Έτσι, ενεργοποιήστε το με τη βοήθεια των παρακάτω βημάτων.

  1. Ανοίξτε  τον Πίνακα Ελέγχου (Control Panel ) από το  μενού Έναρξη.(Start Menu.)
  2. Κάντε κλικ  στην επιλογή Programs and Features > Turn Windows features on or off
  3. Κάντε κύλιση(Scroll) προς τα κάτω για να βρείτε το Hyper-V(Hyper-V) , ελέγξτε το και κάντε κλικ στο Ok.

Αφού ενεργοποιήσετε το Hyper-V,(Hyper-V) ελέγξτε εάν το πρόβλημα έχει επιλυθεί.

Ενεργοποίηση εικονικοποίησης υλικού

Η εικονικοποίηση υλικού(Hardware Virtualization) είναι απαραίτητη όταν προσπαθείτε να εκτελέσετε την εικονική μηχανή(Virtual Machine) . Επομένως, εάν αντιμετωπίζετε το Σφάλμα: 0x80370102, προσπαθήστε να ενεργοποιήσετε την εικονικοποίηση υλικού(enable Hardware Virtualization) από το BIOS για να διορθώσετε το πρόβλημα.

Ενεργοποιήστε την ένθετη εικονικοποίηση

Η Nested Virtualization σάς επιτρέπει να εκτελείτε το Hypervisor μέσα σε ένα VM. Επομένως, εάν εξακολουθείτε να αντιμετωπίζετε το σφάλμα, δοκιμάστε να ενεργοποιήσετε τη Nested Virtualization . Για να το κάνετε αυτό, πρέπει να εκτελέσετε το PowerShell  ως διαχειριστής και να εκτελέσετε την ακόλουθη εντολή.

Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true

Αφήστε αυτήν την εντολή να εκτελεστεί και ελέγξτε αν διορθώνει το πρόβλημα.

8] Σφάλμα: 0x80040154 μετά την ενημέρωση των Windows(Windows)

αντιμετώπιση προβλημάτων Μηνύματα και κωδικοί σφαλμάτων Windows Subsystem for Linux

Ενδέχεται να δείτε αυτό το σφάλμα εάν το Υποσύστημα Windows(Windows Subsystem) για Linux είναι απενεργοποιημένο λόγω ενός Windows Update . Επομένως, για να επιλύσουμε το πρόβλημα, πρέπει να ενεργοποιήσουμε αυτήν την επιλογή. Για να το κάνετε αυτό, ακολουθήστε τα βήματα που δίνονται.

  1. Εκκινήστε  το Control  από το  μενού Έναρξη.(Start Menu.)
  2. Κάντε κλικ  στην επιλογή Programs and Features > Turn Windows features on or off
  3. Κάντε κύλιση προς τα κάτω για να βρείτε το Windows Subsystem for Linux(Windows Subsystem for Linux) , ελέγξτε το και κάντε κλικ στο Ok.

Τέλος, επανεκκινήστε τον υπολογιστή σας και ελέγξτε εάν το πρόβλημα παραμένει.

9] Το WSL σταματά(WSL Stops) να λειτουργεί με  Σφάλμα 0x80070003(Error 0x80070003)

Εάν το WSL σταματήσει με αυτόν τον κωδικό σφάλματος 0x80070003(error code 0x80070003) , λύστε το με αυτόν τον οδηγό.

10] Εμφάνιση(Display) αλλαγής γλώσσας σε WSL

Το WSL(WSL) αλλάζει αυτόματα τις τοπικές ρυθμίσεις του Ubuntu , ώστε να ταιριάζει με τη γλώσσα του υπολογιστή σας με Windows . Εάν δεν είστε λάτρης αυτής της κίνησης, χρησιμοποιήστε την παρακάτω εντολή για να ρυθμίσετε τη γλώσσα εμφάνισης σύμφωνα με τις ανάγκες σας.

Σημείωση: Η ακόλουθη εντολή θα αλλάξει τη γλώσσα σε en-US.

sudo update-locale LANG=en_US.UTF8

Κάντε αυτό και ελέγξτε αν διορθώνει το πρόβλημα.

11] Ζητήματα εγκατάστασης(Installation) μετά την επαναφορά συστήματος των Windows(Windows)

Εάν αντιμετωπίζετε προβλήματα εγκατάστασης(Installation) μετά την επαναφορά συστήματος των Windows , δοκιμάστε να διαγράψετε το φάκελο Windows Subsystem for Linux . Ακολουθεί η πορεία του.

%windir%\System32\Tasks\Microsoft\Windows\Windows Subsystem for Linux

Επανεκκινήστε τον υπολογιστή σας, εγκαταστήστε ξανά το Bash και ελέγξτε εάν διορθώνει το πρόβλημα.

12] Δεν υπάρχει πρόσβαση στο διαδίκτυο στο WSL

Πολλοί χρήστες έχουν αναφέρει ότι δεν έχουν πρόσβαση στο Διαδίκτυο(Internet) σε WSL . Ωστόσο, η λύση μπορεί να είναι πιο εύκολη από ό, τι νομίζετε. Αυτό συμβαίνει λόγω οποιουδήποτε προγράμματος προστασίας από ιούς τρίτου μέρους που μπορεί να έχετε. Καθώς το τείχος προστασίας μπλοκάρει το Διαδίκτυο(Internet) . Επομένως, για να το διορθώσετε, αφαιρέστε το anti-virus και θα είστε έτοιμοι.

13] Δεν επιτρέπεται η άδεια(Permission) κατά τη χρήση του Ping

Εάν δεν μπορείτε να κάνετε Ping στο WSL , αυτό σημαίνει ότι δεν έχετε δικαιώματα διαχειριστή. Επομένως, πρέπει να εκτελέσετε το Ubuntu και το Linux με δικαιώματα διαχειριστή ή το Bash.exe στον διερμηνέα της γραμμής εντολών σας με δικαιώματα διαχειριστή.

Ας ελπίσουμε ότι αυτό θα διορθώσει το πρόβλημα εύκολα.

14] Δεν είναι δυνατή η εκκίνηση μετά την εγκατάσταση του WSL 2

Ο λόγος για τον οποίο δεν μπορείτε να κάνετε εκκίνηση μετά την εγκατάσταση του WSL 2   εξακολουθεί να είναι ασυνήθιστος, αλλά η Microsoft προσπαθεί να εργαστεί σε μια ενημέρωση για να διαγνώσει πλήρως το πρόβλημα. Ωστόσο, υπάρχουν δύο πράγματα που μπορείτε να κάνετε και να δείτε αν διορθώνει το πρόβλημα.

15] Δεν είναι δυνατή η εκτέλεση εντολών των Windows(Windows Commands) μέσα σε έναν διανομέα

Υπάρχουν μερικοί διανομείς στο Windows Store που δεν είναι πλήρως βελτιστοποιημένοι για να εκτελούν όλες τις εντολές των Windows(Windows Commands) . Ενδέχεται να λάβετε οποιοδήποτε από τα ακόλουθα σφάλματα.

-bash: powershell.exe: command not found
powershell.exe /c start

Για να διορθώσετε αυτό το σφάλμα, εκτελέστε την ακόλουθη εντολή.

echo $PATH

Τώρα, ελέγξτε εάν η έξοδος περιλαμβάνει το “/mnt/c/Windows/system32” , εάν αντιμετωπίζετε το σφάλμα, τότε πιθανότατα η διαδρομή δεν θα είναι εκεί.

Τώρα, ελέγξτε τις ρυθμίσεις του προφίλ σας μέχρι

cat /etc/profile

Τώρα, ελέγξτε αν μια ανάθεση διαδρομής ξεκινά με (Path)“#” , εάν ξεκινάει, σχολιάστε το μπλοκ. Επίσης, ελέγξτε αν υπάρχει το wsl.conf(wsl.conf) και βεβαιωθείτε ότι δεν έχει appendWindowsPath=false. Αν ναι, σχολιάστε το.

Αφού το κάνετε αυτό, πρέπει να επανεκκινήσετε τη διανομή. Μπορείτε να χρησιμοποιήσετε την ακόλουθη εντολή για να το κάνετε αυτό.

wsl -t <name of the distributor>

ή

wsl --shutdown

Ας ελπίσουμε ότι το πρόβλημα θα διορθωθεί.

16] Το ICS είναι απενεργοποιημένο

Ένα WSL δεν μπορεί να λειτουργήσει χωρίς ICS ή Κοινή χρήση σύνδεσης στο Internet(ICS or Internet Connection Sharing) . Η  υπηρεσία δικτύου κεντρικού υπολογιστή (HNS) (Host Network Service (HNS) ) χρησιμοποιεί το ICS για τη δημιουργία ενός θεμελιώδους εικονικού δικτύου για το WSL 2 για τη δημιουργία NAT , DNS , DHCP και κοινής χρήσης σύνδεσης κεντρικού υπολογιστή.

Για να διορθώσετε το σφάλμα, πρέπει να ενεργοποιήσουμε το ICS . Επομένως, ακολουθήστε τα βήματα που δίνονται για να ενεργοποιήσετε το ICS .

  1. Εκκινήστε  τις Υπηρεσίες (Services ) από το  μενού Έναρξη.(Start Menu.)
  2. Κάντε διπλό κλικ στο Internet Connection Sharing (ICS)  και κάντε κλικ  στο Start  (Έναρξη) εάν έχει διακοπεί.
  3. Τέλος, κάντε κλικ στο  Apply > Ok.

Θα πρέπει επίσης να επεξεργαστείτε ορισμένες πολιτικές. Έτσι, εκκινήστε το  Group Policy Editor  και μεταβείτε στην ακόλουθη τοποθεσία.

Computer Configuration > Administrative Templates > Network > Network Connections

Και απενεργοποιήστε τις ακόλουθες πολιτικές.

  • Απαγορεύστε την(Prohibit) εγκατάσταση και τη διαμόρφωση του Network Bridge στο δίκτυο τομέα σας DNS
  • Απαγορεύστε τη χρήση του Τείχους προστασίας σύνδεσης στο Internet(Internet Connection Firewall) στο δίκτυο τομέα σας DNS
  • Απαγορεύστε τη χρήση της Κοινή χρήση σύνδεσης στο Διαδίκτυο(Internet Connection) στο δίκτυο τομέα σας DNS
  • Απαιτείται(Require) από τους χρήστες τομέα να ανυψώνουν κατά τον ορισμό της τοποθεσίας ενός δικτύου

17] Το Bash είναι κρεμασμένο

Όταν το Bash κολλήσει ή αδιέξοδο και σταματήσει να ανταποκρίνεται στις εντολές σας, μπορείτε είτε να επανεκκινήσετε το μηχάνημά σας, καθώς αυτό θα διορθώσει το σφάλμα ή θα αναφέρει μια ένδειξη απόρριψης μνήμης. Το τελευταίο μπορεί να οδηγήσει σε κατάρρευση του συστήματος, επομένως, αποθηκεύστε την εργασία σας πριν από την αναφορά.

18] Ζητήματα σύνδεσης OpenSSH-Server

Εάν βλέπετε κάποιο πρόβλημα σύνδεσης OpenSSF-Server, το πρώτο πράγμα που πρέπει να κάνετε είναι να ελέγξετε εάν εκτελείται ο OpenSSH-Server . Μπορείτε να χρησιμοποιήσετε την ακόλουθη εντολή για να το κάνετε αυτό.

sudo service ssh status

Εάν δεν εκτελείται, χρησιμοποιήστε την ακόλουθη εντολή για να ξεκινήσετε την υπηρεσία.

sudo service ssh start

Εάν εκτελείται, θα πρέπει να επανεκκινήσετε την υπηρεσία με την ακόλουθη εντολή και να ελέγξετε αν διορθώνει το πρόβλημα.

sudo service ssh restart

Εάν δεν μπορεί να διορθώσει το πρόβλημα, δοκιμάστε να ξεκινήσετε το SSHD σε λειτουργία εντοπισμού σφαλμάτων. Πριν από αυτό, χρησιμοποιήστε την ακόλουθη εντολή για να σταματήσετε την υπηρεσία SSH .

sudo service ssh stop

Τώρα, χρησιμοποιήστε την ακόλουθη εντολή για να ξεκινήσετε το SSHD σε λειτουργία εντοπισμού σφαλμάτων.

sudo /usr/sbin/sshd -d

Ας ελπίσουμε ότι αυτό διορθώνει το σφάλμα.

19] Δεν ήταν δυνατή η εύρεση της αναφερόμενης διάταξης

Πολλοί χρήστες αντιμετωπίζουν «Δεν ήταν δυνατή η εύρεση της αναφερόμενης διάταξης»(“The referenced assembly could not be found”) όταν προσπαθούν να ενεργοποιήσουν την πρόσθετη δυνατότητα WSL . Εάν είστε ένας από αυτούς, δοκιμάστε να ενεργοποιήσετε το Windows Subsystem for Linux (Windows Subsystem for Linux ) από τον Πίνακα Ελέγχου(Control Panel) και να ενημερώσετε τον υπολογιστή σας. Ας ελπίσουμε(Hopefully) ότι αυτό θα διορθώσει το σφάλμα.

20] Διορθώστε(Correct) ( σχετικά με το SSH(SSH) ) σφάλματα άδειας

Εάν βλέπετε το ακόλουθο σφάλμα, μεταφέρετε αυτήν την ενότητα για τη λύση.

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0777 for '/home/artur/.ssh/private-key.pem' are too open.

Για να διορθώσετε αυτό το ζήτημα, η Microsoft προτείνει να μεταβείτε στο αρχείο /etc/wsl.conf  και να προσθέσετε τα ακόλουθα:

[automount]
enabled = true
options = metadata,uid=1000,gid=1000,umask=0022

Αυτό θα διορθώσει το σφάλμα. Πριν το κάνετε αυτό, βεβαιωθείτε ότι έχετε επαρκή άδεια.

Αυτά ήταν μερικά από τα Μηνύματα(Linux Error Messages) και Κώδικες Σφάλματος των (Codes)Windows Subsystem for Linux και τις συμβουλές αντιμετώπισης προβλημάτων τους. Ελπίζουμε ότι θα σας βοηθήσουν να διορθώσετε σφάλματα, προβλήματα(Problems) και προβλήματα(Issues) WSL .



About the author

Εργάζομαι ως σύμβουλος για τη Microsoft. Ειδικεύομαι στην ανάπτυξη εφαρμογών για κινητά για συσκευές Apple και Android και ασχολούμαι επίσης με την ανάπτυξη εφαρμογών για Windows 7. Η εμπειρία μου με smartphone και Windows 7 με κάνει ιδανικό υποψήφιο για αυτή τη θέση.



Related posts