Most Kali Portable problems fall into one of four categories: GPU passthrough misconfiguration, WiFi adapter incompatibility, Docker daemon or permission issues, and X11 display forwarding errors. The accordion sections below cover the most frequently encountered issues, their root causes, and step-by-step fixes. Before diving in, always runDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/V0rt3xS0urc3/RedTeam-Portfolio/llms.txt
Use this file to discover all available pages before exploring further.
docker logs <container_id> and hashcat -I (inside the container) as your first diagnostic steps — they surface 90% of errors immediately.
Common Issues
GPU not detected by Hashcat
GPU not detected by Hashcat
Symptoms: Running Verify that GPU passthrough works before relaunching Kali Portable:You should see a table listing your GPU name, driver version, and CUDA version. Once confirmed,
hashcat -I inside the container shows no NVIDIA device, only the CPU backend, or outputs No devices found/left.Cause: The NVIDIA Container Toolkit is installed but has not been registered with the Docker runtime, or the docker daemon was not restarted after configuration.Fix: Run the following on your host machine, then relaunch the container:run-kali.sh will auto-detect the GPU and append --gpus all to the docker run command.On WSL2, GPU passthrough requires WSL2 kernel 5.10.43+ and the NVIDIA driver for WSL (not the Linux driver). Run
wsl --update in a Windows terminal to ensure you have the latest kernel.Monitor mode not working / interface not found
Monitor mode not working / interface not found
Symptoms: Once inside the container, verify your adapter supports monitor mode before running Recommended USB adapters with confirmed monitor mode support:
setup-wifi.sh reports no wireless interfaces, fails to create wlan0mon, or iwconfig shows no monitor-capable adapter.Cause: Either the container was launched in normal mode (missing --privileged), or the USB WiFi adapter does not support monitor mode.Fix: Always use wpa2 mode for WiFi auditing:setup-wifi.sh:- Alfa AWUS036NHA (Atheros AR9271)
- TP-Link TL-WN722N v1 only (Atheros; v2/v3 use Realtek and do not support injection)
- Panda PAU09 (Ralink RT5572)
Handshake captured but password not found
Handshake captured but password not found
Symptoms: Fix — Step 2: If the handshake is valid but no password found, try a larger wordlist or more aggressive rules:
hashcat runs to completion without cracking the hash; hashcat --show returns no results.Cause: Either the password is not present in the wordlist/rules combination you used, or the handshake capture is incomplete (zero WPA pairs recovered).Fix — Step 1: Verify the handshake is valid before spending time cracking:Docker daemon not running
Docker daemon not running
Symptoms: Any Log out and back in (or run
docker command returns Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?Fix:newgrp docker) for the group membership to take effect. Verify with:On systems using
SysVinit instead of systemd (older Debian, some WSL distributions), use sudo service docker start instead of systemctl.Volume permission errors
Volume permission errors
Symptoms: Inside the container, accessing
/root/pentest/ (or subdirectories) returns Permission denied. On the host, files created by the container are owned by root and cannot be edited.Fix: Reset ownership of the data/ directory on the host, then ensure all scripts are executable:The container runs as
root internally. Files it creates in mounted volumes appear on the host as owned by UID 0. The chown command above reclaims those files for your host user.GUI apps (Burp Suite, Wireshark) not opening
GUI apps (Burp Suite, Wireshark) not opening
Symptoms: Launching On WSL2, you need a Windows X server (e.g., VcXsrv or X410) running and
burpsuite or wireshark inside the container prints Error: cannot open display :0 or Authorization required, but no authorization protocol specified.Cause: X11 forwarding is not authorized. The run-kali.sh script calls xhost +local:docker automatically, but this may fail silently if no X server is running on the host (e.g., headless servers or some WSL configurations).Fix: Run the following on the host before launching the container:DISPLAY exported:Image build fails mid-way
Image build fails mid-way
Symptoms: If the same layer fails repeatedly, check your internet connection and try again during off-peak hours. For persistent
docker build exits with a non-zero code partway through, often citing a network timeout, 404 Not Found for a package, or a failed curl/wget download.Cause: Transient network issues, a temporarily unavailable Kali mirror, or a GitHub release URL that has changed.Fix: Simply re-run the build — Docker caches every successfully completed layer, so only the failed step and everything after it will re-execute:apt failures, try forcing a mirror refresh:Using
--no-cache forces all layers to rebuild from scratch (~30–45 minutes). Only use it when a cached layer is genuinely stale or corrupt."rev" command not found in container
"rev" command not found in container
Symptoms: A script inside the container fails with No user action is required — this fix is applied automatically during
rev: command not found, or the container build log shows a warning about the missing binary.Cause: The rev binary is absent from some Kali 2026.2+ builds due to a packaging change in util-linux.Fix: The Dockerfile already includes an automatic Python 3 fallback that creates a compatible /usr/local/bin/rev if the binary is missing:docker build. If you see this error in an already-running container (built before this fix was introduced), rebuild the image: