Troubleshooting
Common issues and solutions for Linux users working with Windows systems, including diagnostic tools and recovery procedures.
Common Linux-to-Windows Gotchas
File System Issues
| Problem | Symptoms | Linux Expectation | Windows Reality | Solution |
|---|---|---|---|---|
| Case sensitivity | File not found errors | file.txt ≠ File.txt | Same file | Use consistent casing |
| Path separators | Script failures | Forward slash / | Backslash \ | Use os.path.join() or similar |
| Long paths | Path too long errors | No practical limit | 260 char limit | Enable long path support |
| File locking | Cannot delete/modify | Immediate access | Files may be locked | Close applications, use handle tools |
| Hidden files | Missing dot files | .bashrc visible | Hidden by default | Show hidden files or use attrib |
| Line endings | Git issues | LF (\n) | CRLF (\r\n) | Configure Git autocrlf |
Permission Problems
| Issue | Linux Approach | Windows Approach | Solution |
|---|---|---|---|
| No sudo | sudo command | Right-click → Run as Administrator | Use admin shell or UAC |
| Execute permissions | chmod +x file | File extension or properties | Rename to .exe or change properties |
| Ownership | chown user:group file | Security tab in properties | Use takeown or security properties |
| Group permissions | chgrp group file | Security tab permissions | Add groups in security properties |
Network Configuration
| Problem | Linux Solution | Windows Equivalent | Notes |
|---|---|---|---|
| IP configuration | ifconfig | ipconfig | Different syntax |
| DNS resolution | dig | nslookup | Different output format |
| Network restart | systemctl restart networking | Disable/enable adapter | No single command |
| Firewall | iptables, ufw | Windows Defender Firewall | GUI-based configuration |
Diagnostic Tools
System Information Tools
| Purpose | Windows Tool | Linux Equivalent | How to Access |
|---|---|---|---|
| System overview | msinfo32 | neofetch, lshw | Run dialog → msinfo32 |
| Hardware info | Device Manager | lshw, lspci | Right-click Computer → Manage |
| Process info | Task Manager | htop, ps | Ctrl+Shift+Esc |
| Event logs | Event Viewer | journalctl, /var/log/ | Run dialog → eventvwr |
| Performance | Performance Monitor | vmstat, iostat | Run dialog → perfmon |
| Network config | ipconfig /all | ip addr show | Command prompt |
Event Viewer Navigation
Windows + R → eventvwr.msc
Key Log Categories:
- Windows Logs → System: Hardware and driver issues
- Windows Logs → Application: Application crashes and errors
- Windows Logs → Security: Security events and logons
- Applications and Services Logs: Specific application logs
Common Event IDs for Linux Users:
| Event ID | Source | Meaning | Linux Equivalent |
|---|---|---|---|
| 1074 | System | System shutdown | /var/log/syslog shutdown entries |
| 6005/6006 | EventLog | Service start/stop | systemctl status |
| 4624/4625 | Security | Login success/failure | /var/log/auth.log |
| 7034 | Service Control Manager | Service crashed | Service failure logs |
PowerShell Diagnostic Commands
| Task | PowerShell Command | Linux Equivalent |
|---|---|---|
| System info | Get-ComputerInfo | uname -a, hostnamectl |
| Hardware | Get-WmiObject Win32_ComputerSystem | lshw |
| Disk space | Get-WmiObject Win32_LogicalDisk | df -h |
| Running processes | Get-Process | ps aux |
| Network config | Get-NetIPConfiguration | ip addr |
| Service status | Get-Service | systemctl status |
| Event logs | Get-EventLog System | journalctl |
Common Error Messages
Application Errors
| Error | Cause | Linux Equivalent | Solution |
|---|---|---|---|
| "Application failed to start correctly (0xc000007b)" | Missing/wrong architecture DLLs | Library dependency issues | Install Visual C++ Redistributables |
| "MSVCP140.dll was not found" | Missing Visual C++ runtime | Missing shared libraries | Install Visual C++ 2015-2019 Redistributable |
| "Access is denied" | Insufficient permissions | Permission denied | Run as administrator or check permissions |
| "The system cannot find the file specified" | Missing file or wrong path | No such file or directory | Check path and file existence |
Network Errors
| Error | Meaning | Linux Equivalent | Troubleshooting |
|---|---|---|---|
| "Network path not found" | Cannot reach network resource | Connection refused | Check network connectivity, firewall |
| "DNS name does not exist" | DNS resolution failure | Name resolution failure | Check DNS settings, try IP address |
| "Connection timed out" | Network timeout | Connection timed out | Check firewall, network connectivity |
| "Access denied" | Authentication failure | Permission denied | Check credentials, shares permissions |
Windows-Specific Errors
| Error Code | Meaning | Troubleshooting Steps |
|---|---|---|
| 0x80070005 | Access denied | Check permissions, run as administrator |
| 0x80004005 | Unspecified error | Check Event Viewer for details |
| 0x80070002 | File not found | Verify file path, check for typos |
| 0x8007000E | Out of memory | Close applications, restart system |
Performance Troubleshooting
Task Manager Deep Dive
Ctrl + Shift + Esc
Tabs Explained for Linux Users:
| Tab | Purpose | Linux Equivalent |
|---|---|---|
| Processes | Running applications | htop, ps aux |
| Performance | System resources | vmstat, iostat |
| App history | Resource usage over time | Long-term monitoring tools |
| Startup | Boot programs | /etc/init.d/, systemd services |
| Users | Per-user processes | ps -u username |
| Details | All processes with details | ps auxf |
| Services | System services | systemctl list-units |
Performance Monitor (perfmon)
Windows + R → perfmon
Useful Counters for Linux Users:
| Counter | Purpose | Linux Equivalent |
|---|---|---|
| Processor → % Processor Time | CPU usage | top, CPU% |
| Memory → Available MBytes | Free memory | free -m |
| PhysicalDisk → % Disk Time | Disk usage | iostat |
| Network Interface → Bytes/sec | Network throughput | iftop, nethogs |
Resource Monitor (resmon)
Windows + R → resmon
Tabs and Linux Equivalents:
- CPU: Like
htopwith detailed process info - Memory: Like
freewith process breakdown - Disk: Like
iotopshowing disk activity - Network: Like
netstatandsscombined
Network Troubleshooting
Network Commands Comparison
| Task | Windows Command | Linux Command | Notes |
|---|---|---|---|
| Check connectivity | ping hostname | ping hostname | Same syntax |
| Trace route | tracert hostname | traceroute hostname | Different command name |
| DNS lookup | nslookup hostname | dig hostname | Different output format |
| Network config | ipconfig /all | ip addr show | Different syntax |
| ARP table | arp -a | arp -a | Same syntax |
| Routing table | route print | ip route show | Different syntax |
| Network connections | netstat -an | ss -tulpn | Similar functionality |
Network Troubleshooting Steps
- Basic connectivity:
ping 8.8.8.8 - DNS resolution:
nslookup google.com - Local network:
ping gateway_ip - Port connectivity:
telnet hostname port - Firewall check: Windows Defender Firewall settings
Firewall Troubleshooting
# Check firewall status
Get-NetFirewallProfile
# List firewall rules
Get-NetFirewallRule | Where-Object {$_.Enabled -eq "True"}
# Test port connectivity
Test-NetConnection -ComputerName hostname -Port 80
WSL Troubleshooting
Common WSL Issues
| Problem | Symptoms | Solution |
|---|---|---|
| WSL won't start | "WSL is not installed" | Enable Windows features, restart |
| Poor performance | Slow file operations | Keep files in WSL filesystem |
| Network issues | Cannot access services | Check Windows firewall |
| File permissions | Permission denied errors | Use WSL filesystem for development |
| Memory issues | Out of memory | Configure WSL memory limits |
WSL Diagnostic Commands
# Check WSL status
wsl --status
# List installed distributions
wsl --list --verbose
# Check WSL version
wsl --version
# Update WSL
wsl --update
# Restart WSL
wsl --shutdown
WSL Performance Issues
# .wslconfig in %USERPROFILE%
[wsl2]
memory=4GB # Limit memory usage
processors=2 # Limit CPU cores
swap=1GB # Set swap size
localhostForwarding=true
System Recovery
Safe Mode
Access Safe Mode:
- Hold Shift while clicking Restart
- Troubleshoot → Advanced options → Startup Settings
- Restart and press F4 for Safe Mode
Linux Equivalent: Single-user mode or recovery mode
System File Checker
# Check system files (run as administrator)
sfc /scannow
# Check and repair
DISM /Online /Cleanup-Image /RestoreHealth
Linux Equivalent: debsums (Debian) or package verification
System Restore
Control Panel → Recovery → Open System Restore
Linux Equivalent: Timeshift, LVM snapshots, or Btrfs snapshots
Reset Windows
Settings → Update & Security → Recovery → Reset this PC
Options:
- Keep my files: Reinstall Windows, keep personal files
- Remove everything: Complete wipe and reinstall
Boot Troubleshooting
Boot Problems
| Problem | Symptoms | Solution |
|---|---|---|
| Boot loop | Endless restart | Safe mode, system restore |
| Blue screen | BSOD on startup | Check hardware, drivers |
| Slow boot | Long startup time | Check startup programs |
| No boot device | "Boot device not found" | Check BIOS/UEFI settings |
Boot Configuration
# List boot entries
bcdedit /enum
# Repair boot configuration
bootrec /fixmbr
bootrec /fixboot
bootrec /rebuildbcd
Dual-Boot Issues
| Problem | Cause | Solution |
|---|---|---|
| Missing Linux entry | Windows update overwrote GRUB | Restore GRUB from Linux live USB |
| Time sync issues | Different time standards | Set Windows to use UTC |
| Shared partition problems | File system corruption | Check file system integrity |
Hardware Troubleshooting
Device Manager
Windows + X → Device Manager
Common Issues:
- Yellow triangle: Driver issue or hardware problem
- Red X: Disabled device
- Unknown device: Missing driver
Hardware Diagnostic Tools
| Tool | Purpose | Linux Equivalent |
|---|---|---|
| Device Manager | Hardware status | lspci, lsusb |
| Disk Management | Disk partitions | fdisk, parted |
| Memory Diagnostic | RAM testing | memtest86 |
| Check Disk | File system check | fsck |
Memory Diagnostic
Windows + R → mdsched
Options:
- Restart now and check for problems
- Check for problems the next time I start my computer
Registry Troubleshooting
Registry Backup
# Export registry key
reg export "HKEY_LOCAL_MACHINE\SOFTWARE\MyApp" backup.reg
# Import registry key
reg import backup.reg
Common Registry Issues
| Problem | Location | Solution |
|---|---|---|
| Startup programs | HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run | Remove unwanted entries |
| File associations | HKCR | Reset file associations |
| System settings | HKLM\SYSTEM | Use System Restore |
Warning: Always backup registry before making changes.
Antivirus and Security
Windows Defender Issues
# Check Windows Defender status
Get-MpComputerStatus
# Update definitions
Update-MpSignature
# Run scan
Start-MpScan -ScanType QuickScan
Exclusions for Development
Common directories to exclude from antivirus:
- WSL filesystem:
%USERPROFILE%\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu* - Development folders:
C:\dev\,C:\projects\ - Node modules:
*\node_modules\* - Build outputs:
*\target\*,*\build\*
Emergency Recovery
Windows Recovery Environment (WinRE)
Access WinRE:
- Boot from Windows installation media
- Choose "Repair your computer"
- Troubleshoot → Advanced options
Recovery Options:
- System Restore: Revert to previous state
- System Image Recovery: Restore from backup
- Startup Repair: Fix boot problems
- Command Prompt: Manual troubleshooting
Creating Recovery Media
# Create recovery drive
# Settings → Update & Security → Recovery → Create a recovery drive
Data Recovery
| Tool | Purpose | Linux Equivalent |
|---|---|---|
| File History | File backup/restore | rsnapshot |
| Previous Versions | Shadow copy restore | LVM snapshots |
| Recuva | Deleted file recovery | testdisk, photorec |
Getting Help
Built-in Help Systems
| Tool | Access | Purpose |
|---|---|---|
| Get-Help | PowerShell | Command help |
| Windows Help | F1 in applications | Application help |
| Troubleshooters | Settings → Update & Security | Automated fixes |
Online Resources
- Microsoft Docs: Official documentation
- TechNet: Technical articles and forums
- Stack Overflow: Programming and technical questions
- Reddit r/Windows10: Community support
Remote Assistance
Windows + R → msra
Options:
- Invite someone to help you
- Help someone who has invited you
Professional Tools
| Tool | Purpose | Cost |
|---|---|---|
| Process Monitor | File/registry monitoring | Free |
| Process Explorer | Advanced process info | Free |
| Autoruns | Startup program management | Free |
| BlueScreenView | BSOD analysis | Free |
| CrystalDiskInfo | Hard drive health | Free |