WSL2 — это подсистема Windows для Linux, которая позволяет запускать подобия дистрибутивов Linux прямо в Windows не используя виртуальные машины.
По умолчанию дистрибутивы запускаются с интерфейсом командной строки, но это ограничение можно обойти, запустив на Linux сервер RDP (удалённый рабочий стол) или VNC, а затем подключившись к нему используя соответствующий клиент.
Для Kali Linux этот процесс был значительно автоматизирован и упрощён, подробности описаны в статье «Как установить Kali Linux с Win-KeX (графический интерфейс) в WSL2 (подсистему Windows для Linux)».
После установки Win-KeX для запуска графического интерфейса достаточно запустить Kali Linuxв WSL2:
kali
А затем внутри Kali Linux выполнить команду:
kex
После этого должен открыться графический интерфейс.
Но иногда это не происходит и появляется ошибка:
unable to connect to socket: Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение. (10061)
В командной строке выводится:
TigerVNC Viewer 32-bit v1.10.80 Built on: 2020-06-15 22:33 Copyright (C) 1999-2020 TigerVNC Team and many others (see README.rst) See https://www.tigervnc.org for information on TigerVNC. Fri Sep 11 06:41:39 2020 DecodeManager: Detected 12 CPU core(s) DecodeManager: Creating 4 decoder thread(s) Fri Sep 11 06:41:41 2020 CConn: unable to connect to socket: Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение. (10061)
Для исправления этой ошибки нажмите Ctrl+c.
Затем введите команду
kex stop
Эта команда может вывести что-то вроде следующего:
Killing Win-KeX process ID 1618... which was already dead Cleaning stale pidfile '/home/mial/.vnc/HackWare-MiAl.localdomain:1.pid'! Cleaning stale x11 lock '/tmp/.X1-lock'! Cleaning stale x11 lock '/tmp/.X11-unix/X1'!
Вновь попробуйте открыть графический интерфейс:
kex
На этот раз всё должно заработать:
Причина ошибки до конца не ясна — возможно, дело в неудачном старте VNC сервера или процесса Win-KeX, на это указывает строка «Win-KeX process ID 1618... which was already dead», то есть процесс уже мёртвый.
Командой kex stop мы принудительно останавливаем Win-KeX, который при следующем запуске работает нормально.
Связанные статьи:
- Ошибка в WSL (Kali Linux, Ubuntu) «sleep: cannot read realtime clock: Invalid argument» (РЕШЕНО) (100%)
- Ошибка «E: Release file for http://http.kali.org/kali/dists/kali-rolling/InRelease is not valid yet (invalid for another 2h 43min 57s). Updates for this repository will not be applied» (РЕШЕНО) (100%)
- Как в Linux включить автоматических вход в систему (GDM, LightDM, SDDM) (53.8%)
- Управление электропитанием в Linux (GNOME) (53.8%)
- Управление электропитанием в Linux (Xfce) (53.8%)
- Чувствительный к регистру поиск в phpMyAdmin (RANDOM - 1.5%)