Troubleshooting
Troubleshooting Installation and Network Issues with Whonix.
Introduction[edit]
- On this page you will find help for various troubleshooting topics, including general troubleshooting, connectivity troubleshooting
- You will also learn about virtual machine bug analysis, system logs and other related topics
- Please be aware that some very specific, individual problems can take a long time to research and solve. Don't expect a "magic solution" for most of these issues
- We will help you with a lot of common problems here, but also be sure to check out our Documentation and related pages.
Connectivity Troubleshooting[edit]
This chapter covers connectivity issues that you may encounter.
Introduction[edit]
- There is no general network problem analysis tool. While there are many tools and commands available for specific aspects of network diagnostics, there isn't a single built-in command for any operating system that performs a fully comprehensive, automated network analysis with one execution.
- Shortcut? There is no shortcut: Network diagnostics require a systematic approach, where each potential issue must be carefully examined and ruled out one by one. Unlike other processes that may offer quick fixes or automated solutions, network troubleshooting involves methodically testing different aspects of the network to identify the root cause of a problem. This process is inherently time-consuming. Attempting to rush through diagnostics or skipping steps can lead to incomplete or inaccurate conclusions, making the resolution process even longer. Therefore, persistence and attention to detail are essential when working through network issues, as there is no single tool or command that can automatically solve all potential problems.
- Is there really no shortcut? There is not. While a theoretical "shortcut" might exist, it would be economically infeasible. See the footnote for details. [1]
- How to proceed: Please run the following checklist in the next chapter. Please ensure that you have completed all steps in this checklist. The results of each step should be included in your support request. Omitting these steps, failing to provide this information result will most likely result in unresolved connectivity issues.
```wiki
Essential Connectivity Troubleshooting Steps[edit]
In case of connectivity issues, please complete the following checklist:
1 Make sure you started Whonix-Gateway first.
For a functional network connection, Whonix-Gateway must be started before Whonix-Workstation.
2 Download source.
Did you download Whonix from whonix.org? If downloaded from other sources, uninstall and try downloading from whonix.org instead.
3 Test your host computer first.
"Forget" about Whonix for a moment and imagine you had never heard of the platform. Test your host computer first.
4 Test if the host internet connection is functional. [2]
Open different websites such as whonix.org
in a host web browser. If the host internet connection is dysfunctional, Whonix connectivity will also be broken. The host internet connection needs to be fixed first.
5 Speed and ping test the host internet connection.
Running an internet speed test and ping test might show if there is something wrong with the host internet connection.
6 VPN/proxy related connectivity issues.
Using a VPN or proxy? (User
→ Tor
→ proxy/VPN/SSH
→ Internet
) If yes, the following tests should be performed.
A The host internet connection and speed without VPN and without Tor should be tested first.
B Next, the host internet connection should be tested with a VPN only but without Tor.
C Only then should complex setups such as Tor in combination with a VPN be tested.
7 Check the date and time. [3]
Check if the host clock time and date have accuracy of up to ± 30 minutes. If the host clock is more than 1 hour in the past or more than 3 hours in the future, Tor cannot connect. (details)
If not, fix host clock, power off VM and restart the VM.
8 Do not change system timezone setting.
9 Unnecessary use of Bridges.
Have bridges been configured? The user should consider if that is really necessary in their area. Note: Bridges are not necessarily more secure than entry guards (link to sources) and have the potential to cause broken, unreliable and slow connections. [4]
10 Using WiFi or mobile internet connection?
Both, WiFi and mobile internet connections might be unreliable. Clearnet browsing might be able to recover more easily from slight unreliability issues than Tor. If practical, it should be considered to use a wired internet connection such as DSL, fiber or cable internet. This might result in more stable and faster connections [4] and would also be more secure, resistant to de-anonymization attacks.
11 Check if Tor Browser works on the host to rule out a possible Network Obstacle.
Download the Tor Browser Bundle from torproject.org and test if it is working on the host.
If the Tor Browser Bundle is not functional on the host, then Whonix is unlikely to work either. In that case, see unspecific to Whonix.
It is recommended to have a recent Tor Browser Bundle version installed at all times. This way users can test if they live in a censored area or not and whether Tor is blocked by the ISP. Further, if (private) (obfuscated) bridges are necessary for Tor Browser Bundle functionality on the host, then Whonix will similarly require them.
Follow one of the methods outlined in Non-Whonix Tor Browser.
12 Run systemcheck .
Because when systemcheck
is run in Whonix it performs various tests and might provide insights why there are connectivity or other issues.
Check Whonix-Gateway first. If it succeeds, test Whonix-Workstation. If it fails, there is no need to test Whonix-Workstation.
14 Check if other virtual machines have Internet connectivity, such as newly created ones or those from a different vendor.
See General Virtualizer Connectivity Test.
15 Virtualizer settings changes.
Did you change any settings on the host operating system virtualization software?
For example, if using VirtualBox, changing settings from NAT to bridged networking is discouraged and breaks networking.
In case you changed virtualizer settings but don't know which, perform a factory reset , i.e. delete the Whonix VMs and re-import these.
16 RELATED state fix (regarding iptables)
Try RELATED Fix.
17 ICMP fix
Using dial-up connection? Or Tor bootstrapping stuck at 45%? See ICMP Fix.
18 Tor Connectivity Troubleshooting.
19 Consider continuation with Advanced Connectivity Troubleshooting Steps.
Information pertaining to these points should be included in any support request or bug report. ```
RELATED state fix (regarding iptables)[edit]
1 Modify Whonix-Gateway™ User Firewall Settings.
Note: If no changes have yet been made to Whonix Firewall Settings, then the Whonix User Firewall Settings File /usr/local/etc/whonix_firewall.d/50_user.conf
appears empty (because it does not exist). This is expected.
If using Qubes-Whonix™, complete these steps.
In Whonix-Gateway App Qube. Make sure folder /usr/local/etc/whonix_firewall.d
exists.
sudo mkdir -p /usr/local/etc/whonix_firewall.d
Qubes App Launcher (blue/grey "Q")
→ Whonix-Gateway App Qube (commonly called sys-whonix)
→ Whonix User Firewall Settings
If using a graphical Whonix-Gateway, complete these steps.
Start Menu
→ Applications
→ Settings
→ User Firewall Settings
If using a terminal-only Whonix-Gateway, complete these steps.
In Whonix-Gateway, open the whonix_firewall configuration file in an editor.
sudoedit /usr/local/etc/whonix_firewall.d/50_user.conf
For more help, press on Expand on the right.
Note: This is for informational purposes only! Do not edit /etc/whonix_firewall.d/30_whonix_gateway_default.conf
.
Note: The Whonix Global Firewall Settings File /etc/whonix_firewall.d/30_whonix_gateway_default.conf
contains default settings and explanatory comments about their purpose. By default, the file is opened read-only and is not meant to be directly edited. Below, it is recommended to open the file without root rights. The file contains an explanatory comment on how to change firewall settings.
## Please use "/etc/whonix_firewall.d/50_user.conf" for your custom configuration, ## which will override the defaults found here. When {{project_name_short}} is updated, this ## file may be overwritten.
See also Whonix modular flexible .d style configuration folders.
To view the file, follow these instructions.
If using Qubes-Whonix, complete these steps.
Qubes App Launcher (blue/grey "Q")
→ Template:
whonix-gateway-17
→ Whonix Global Firewall Settings
If using a graphical Whonix-Gateway, complete these steps.
Start Menu
→ Applications
→ Settings
→ Global Firewall Settings
If using a terminal-only Whonix-Gateway, complete these steps.
In Whonix-Gateway, open the whonix_firewall configuration file in an editor. nano /etc/whonix_firewall.d/30_whonix_gateway_default.conf
2 Paste. GATEWAY_ALLOW_INCOMING_RELATED_STATE=1
3 Save.
4 Reload Whonix-Gateway™ Firewall.
If you are using Qubes-Whonix™, complete the following steps.
Qubes App Launcher (blue/grey "Q")
→ Whonix-Gateway ProxyVM (commonly named sys-whonix)
→ Reload Whonix Firewall
If you are using a graphical Whonix-Gateway, complete the following steps.
Start Menu
→ Applications
→ System
→ Reload Whonix Firewall
If you are using a terminal-only Whonix-Gateway, run. sudo whonix_firewall
5 Done.
The process of allowing RELATED connections on Whonix-Gateway has been completed.
related:
- https://forums.whonix.org/t/have-firewall-accept-icmp-fragmentation-needed/10233
- https://forums.whonix.org/t/tor-is-not-yet-fully-bootstrapped-30-done/8792/6
ICMP Fix[edit]
Using a dial-up connection? Or is Tor bootstrapping stuck at 45%?
ICMP is disabled in Whonix by default for security reasons because only a minority of users require it.
Try allowing incoming ICMP on Whonix-Gateway.
1 Modify Whonix-Gateway™ User Firewall Settings.
Note: If no changes have yet been made to Whonix Firewall Settings, then the Whonix User Firewall Settings File /usr/local/etc/whonix_firewall.d/50_user.conf
appears empty (because it does not exist). This is expected.
If using Qubes-Whonix™, complete these steps.
In Whonix-Gateway App Qube. Make sure folder /usr/local/etc/whonix_firewall.d
exists.
sudo mkdir -p /usr/local/etc/whonix_firewall.d
Qubes App Launcher (blue/grey "Q")
→ Whonix-Gateway App Qube (commonly called sys-whonix)
→ Whonix User Firewall Settings
If using a graphical Whonix-Gateway, complete these steps.
Start Menu
→ Applications
→ Settings
→ User Firewall Settings
If using a terminal-only Whonix-Gateway, complete these steps.
In Whonix-Gateway, open the whonix_firewall configuration file in an editor.
sudoedit /usr/local/etc/whonix_firewall.d/50_user.conf
For more help, press on Expand on the right.
Note: This is for informational purposes only! Do not edit /etc/whonix_firewall.d/30_whonix_gateway_default.conf
.
Note: The Whonix Global Firewall Settings File /etc/whonix_firewall.d/30_whonix_gateway_default.conf
contains default settings and explanatory comments about their purpose. By default, the file is opened read-only and is not meant to be directly edited. Below, it is recommended to open the file without root rights. The file contains an explanatory comment on how to change firewall settings.
## Please use "/etc/whonix_firewall.d/50_user.conf" for your custom configuration, ## which will override the defaults found here. When {{project_name_short}} is updated, this ## file may be overwritten.
See also Whonix modular flexible .d style configuration folders.
To view the file, follow these instructions.
If using Qubes-Whonix, complete these steps.
Qubes App Launcher (blue/grey "Q")
→ Template:
whonix-gateway-17
→ Whonix Global Firewall Settings
If using a graphical Whonix-Gateway, complete these steps.
Start Menu
→ Applications
→ Settings
→ Global Firewall Settings
If using a terminal-only Whonix-Gateway, complete these steps.
In Whonix-Gateway, open the whonix_firewall configuration file in an editor. nano /etc/whonix_firewall.d/30_whonix_gateway_default.conf
2 Paste.
GATEWAY_ALLOW_INCOMING_ICMP=1
3 Save.
4 Reload Whonix-Gateway™ Firewall.
If you are using Qubes-Whonix™, complete the following steps.
Qubes App Launcher (blue/grey "Q")
→ Whonix-Gateway ProxyVM (commonly named sys-whonix)
→ Reload Whonix Firewall
If you are using a graphical Whonix-Gateway, complete the following steps.
Start Menu
→ Applications
→ System
→ Reload Whonix Firewall
If you are using a terminal-only Whonix-Gateway, run. sudo whonix_firewall
5 Done.
The process of enabling ICMP on Whonix-Gateway has been completed.
There might be a more restricted ICMP permission but it is not implemented. Contributions welcome!
Also see this related forum discussion.
Advanced Connectivity Troubleshooting Steps[edit]
1 Start with the Essential Connectivity Troubleshooting Steps above.
2 Consider Clearnet Connectivity Test.
3 Investigate virtualizer-specific troubleshooting.
4 Check General Troubleshooting steps.
5 Support requests.
Posting in forums, reddit, etc. most likely won't help. Most likely nobody will be able to suggest a simple method on how to easily fix this. See footnote for examples. [5]
The only chance is to go through the troubleshooting guide step-by-step. Then please include the results for each troubleshooting step in the support request. Tedious, yes, but unfortunately there is no better option.
Clock Fix[edit]
Broken internet connectivity is to be expected if the clock is incorrect. At all times it is recommended to have a host clock with accuracy of up to ± 30 minutes.
Quote Whonix Post Install Advice:
To protect against time zone leaks, the system clock inside Whonix is set to UTC. This means it may be a few hours before or ahead of your host system clock. Do not change this setting!
See Manually Set Clock Time and Date.
Clearnet Connectivity Test[edit]
It is possible to check if a non-torified, non-anonyomus, direct connection to check.torproject.org is functional. [6]
On Whonix-Gateway™, run.
sudo -u clearnet UWT_DEV_PASSTHROUGH=1 curl --tlsv1.3 -H 'Host: check.torproject.org' -k https://116.202.120.181
General Virtualizer Connectivity Test[edit]
If networking is unavailable inside Whonix, start by testing the virtualizer host software as if you've never encountered Whonix. This will give you a baseline. This can be done by trying the following steps:
1 Install a Standard Virtual Machine: Install a non-Whonix operating system. This means to install an operating system in a virtual machine that does not run Whonix. A good candidate would be Debian bookworm
.
2 Test Network Functionality: Test the network functionality in this freshly downloaded or created standard virtual machine.
3 DONE.
If Networking is Non-Functional:
If networking is still not functional in these standard virtual machines, then Whonix will not work either. It indicates that the problem isn't caused by to Whonix. Such issues that are unspecific to Whonix should be tackled according to these guidelines:
- In case of VirtualBox: VirtualBox Generic Bug Reproduction
- Self Support First Policy
- Generic Bug Reproduction
The user must first resolve this issue, which might require:
- Re-installation of the virtualizer.
- Rebooting the system.
- Conducting further connectivity tests.
If Networking is Functional:
If networking is functional in the standard virtual machines, then users should:
- Note that networking is working in non-Whonix VMs.
- Include this information as part of the support request or bug report for Whonix.
These steps will help ensure that the underlying network infrastructure is working correctly before troubleshooting Whonix specific issues.
Unsuitable Connectivity Troubleshooting Tools[edit]
The following tools have limited usefulness when attempting to fix connectivity issues.
- Tor Control Panel
- Anon Connection Wizard
- Others listed further below.
These tools can offer assistance for Tor configuration, either by simply enabling access to the public Tor network or by configuring Tor to use Bridges. If an internet service provider (ISP) prevents access to the public Tor network, then using these tools to configure bridges might help. If the ISP prevents access to one type of bridges or specific (such as built-in) bridges, then choosing another type and/or different bridge might help.
However, these are simple utilities that create a Tor configuration file, restart Tor, and report what the Tor software is saying about the Tor bootstrap (connection) status. These tools do not have sophisticated features to debug complex connectivity issues; they are designed to:
- Ask for user input.
- Create Tor configuration file.
- Restart Tor.
- Show Tor bootstrap status.
Constant monitoring of network issues is not implemented. For example, after the initial setup is done -- such as using Tor Control Panel for Anon Connection Wizard -- these tools do not keep supervising Tor or other parts of the system. Therefore, the Tor Control Panel message stating "Connected to the Tor network" could be stale. That was true when the tool was started, but it is not constantly monitored.
From the perspective of the Tor software, these are high-level level programming language tools developed by a third party. [7] These tools have a limited "understanding" of Tor's internals, let alone other aspects of the system configuration that might be broken. [8] When attempting to debug connectivity issues, the "lower" level must be inspected which is closer to the system, virtualizer and Tor.
sdwdate, sdwdate logs and sdwdate-gui have limited usefulness for connectivity troubleshooting. These tools might point out issues with the system time but other than that sdwdate requires an already functional Tor to be able to fetch the time from onions.
Other unsuitable connectivity troubleshooting tools include:
Other recommended steps mentioned on this page are far more promising.
Why can't I Ping the Whonix-Gateway?[edit]
The Whonix-Gateway does not respond to ping or similar commands because it is firewalled for security reasons; see /usr/bin/whonix_firewall or refer to the Whonix source code. In most cases it is unnecessary to ping the Whonix-Gateway anyhow.
If you insist on pinging the Whonix-Gateway or have a unique setup that requires it, then this can be tested by clearing all firewall rules with the dev_clearnet script. Alternatively, a script can be run to try and unload / remove every iptables rule, or the Whonix firewall can be hacked to not load at all. The latter method is only for experts and it is necessary to comment out exit 0 at the beginning.
General Troubleshooting[edit]
This chapter covers general issues that you may encounter and solution approaches.
Introduction[edit]
Troubleshooting issues can be time intensive and success cannot be guaranteed. Some users expect Whonix to provide an easy experience similar to a Windows machine. While the Whonix developers make every effort to meet user expectations, limited funding and human resources makes meeting these expectations impossible.
Even though problems emerge when using Whonix, the cause is most often unrelated to Whonix code. For example, users often report the same Whonix release worked on different hardware and/or with a different host operating system. Most software such as the host operating system or the virtualizer is developed by independent entities; this is the norm in Linux distributions. See Linux User Experience versus Commercial Operating Systems to learn more about these relationships, as well as organizational and funding issues in the Open Source ecosystem.
Essential General Troubleshooting Steps[edit]
1 Test your host computer first.
"Forget" about Whonix for a moment and imagine you had never heard of the platform. Test your host computer first.
2 Exclude basic hardware issues.
3 Ensure the virtual machine (VM) images have been imported into a supported virtualizer listed on the Download page.
4 Run systemcheck, if possible.
This verifies the Whonix system is up-to-date and that everything is in proper working order.
5 Debian (based) Linux host operating system users only: The following command should not show any errors. [9]
sudo dpkg-reconfigure -a
6 Debian (based) Linux host operating system users only: The following command should be silent and not show any errors or output at all. [9]
sudo dpkg --configure -a
7 Debian (based) Linux host operating system users only: Next attempt to retrieve all available updates.
sudo apt update
sudo apt full-upgrade
8 Check for possible Low RAM Issues.
- Free up Additional Memory Resources.
- Also refer to Advice for Systems with Low RAM.
9 Virtualizer-specific troubleshooting.
10 Try a non-Whonix VM.
Attempt #Generic Bug Reproduction.
11 Check System Logs.
- Sometimes crashing or freezing issues are easier to detect by Watching Systemd Journal Log of Current Boot.
- Sometimes it is necessary to Check Systemd Journal Log of Previous Boot.
12 If a graphical environment (where one can use a computer mouse) is unavailable after booting, utilize a virtual console to acquire system logs.
- Recovery, Virtual Consoles.
- Check system logs of the previous boot (step 11).
13 Use recovery mode to acquire system logs.
- Boot in recovery mode.
- Check system logs of previous boot (step 11).
14 Use a chroot to acquire system logs.
If a virtual console is inaccessible and recovery mode is also broken, try using a chroot for recovery.
Low RAM Issues[edit]
If insufficient RAM is available for Whonix VMs they might become unusable. Low RAM issues in Whonix are commonly caused by:
- Unnecessary processes running and/or multi-tasking on the host OS.
- Multiple, open browser tabs.
- Unnecessary processes running in the Whonix VM(s).
- Allocating more RAM to the Whonix VM than is available; this prevents the VM from booting.
- Insufficient RAM allocated to the Whonix VM(s).
- Other non-Whonix VMs running in parallel.
Insufficient RAM can cause multiple issues, but the most common effects include:
- Slow or unresponsive applications.
- The VM, mouse and/or keyboard freeze.
- Scrolling causes window staggers or jumps.
- Issues become worse when additional browser tabs or processes are spawned.
- Overall performance is poor.
To add additional RAM to the Whonix VM(s), follow the platform-specific advice below.
VirtualBox
- To add RAM in VirtualBox the VM must first be powered down.
Virtual machine
→Menu
→Settings
→Adjust
Memory slider
→Hit: OK
See also: VirtualBox/Troubleshooting.
KVM
1. Shut down the virtual machine(s).
virsh -c qemu:///system shutdown <vm_name>
2. Increase the maximum memory.
virsh setmaxmem <vm_name> <memsize> --config
3. Set the actual memory.
virsh setmem <vm_name> <memsize> --config
4. Restart the virtual machine(s).
virsh -c qemu:///system start <vm_name>
Qubes-Whonix
Utilize Qube Manager:
Qube Manager
→ VM_name
→ Qubes settings
→ Advanced
→ Max memory:
mem_size
See also: Advice for Systems with Low RAM.
Free up Additional Memory Resources[edit]
If a VM needs additional memory, then free up resources and/or add more RAM to the VM:
- Terminate any non-essential processes on the host.
- Shut down any non-essential VMs.
- Shut down and/or close non-essential processes and browser tabs in Whonix VMs.
- Non-Qubes-Whonix only: If low memory issues emerge in Whonix-Workstation, additional resources can be freed by reducing RAM in Whonix-Gateway with rads.
Virtualizer Generic Bug Reproduction[edit]
This chapter teaches you how check virtual machines for generic bugs that have nothing to do with Whonix.
Check if other VMs are functional, such as newly created ones or those from a different vendor. If an issue is happen inside Whonix, start by testing the virtualizer host software as if you've never encountered Whonix. "Forget" about Whonix for a moment and imagine you had never heard of the platform. This will give you a baseline. This can be done by trying the following steps:
- Install a Standard Virtual Machine: Install a non-Whonix operating system. This means to install an operating system in a virtual machine that does not run Whonix. A good candidate would be Debian
bookworm
. - Test the Feature: Test the functionality in this freshly downloaded or created standard virtual machine.
If the Feature is Non-Functional:
If the feature is still not functional in these standard virtual machines, then Whonix will not work either. It indicates that the problem isn't caused by to Whonix. Such issues that are unspecific to Whonix should be tackled according to these guidelines:
- In case of VirtualBox: VirtualBox Generic Bug Reproduction
- Self Support First Policy
- Generic Bug Reproduction
The user must first resolve this issue, which might require:
- Re-installation of the virtualizer.
- Rebooting the system.
- Conducting further tests.
- Reading upstream documentation.
- Contacting upstream support.
If the Feature is Functional:
If feature is functional in the standard virtual machines, then users should:
- Note that the feature is working in non-Whonix VMs.
- Include this information as part of the support request or bug report for Whonix.
These steps will help ensure that the underlying feature is working correctly before troubleshooting Whonix specific issues.
System Logs[edit]
Use the system logs to your advantage.
Check Systemd Journal Log of Current Boot[edit]
To inspect the systemd journal log of the current boot, run.
sudo journalctl -b
This command requires pressing arrow keys like ↑, ↓, ←, →, as well as PgUp
and PgDn
for scrolling.
For convenient reading of the log (until the command is issued), the log can be dumped to file. For example, the following command would write the log to file ~/systemd-log
.
sudo journalctl -b > ~/systemd-log
Use any available editor to read the log file, such as mousepad
.
mousepad ~/systemd-log
Watch Systemd Journal Log of Current Boot[edit]
It is possible to to watch the systemd journal log as it is written.
sudo journalctl -b -f
Check Systemd Journal Log of Previous Boot[edit]
sudo journalctl -b -1
This command requires pressing arrow keys like ↑, ↓, ←, →, as well as PgUp
and PgDn
for scrolling.
For convenient reading of the log (until the command is issued), the log can be dumped to file. For example, the following command would write the log to file ~/systemd-log-previous
.
sudo journalctl -b -1 > ~/systemd-log-previous
Use any available editor to read the log file, such as mousepad
.
mousepad ~/systemd-log-previous
View List of Systemd Journal Logs[edit]
sudo journalctl --list-boots
Daemon Log View[edit]
To view the log of a specific systemd unit. Syntax:
(Replace unit-name
with the actual name of the systemd unit.)
sudo journalctl -b --no-pager -u unit-name
Example:
sudo journalctl -b --no-pager -u sdwdate
Daemon Log Follow[edit]
To follow the log of a specific systemd unit. Syntax:
(Replace unit-name
with the actual name of the systemd unit.)
sudo journalctl -f -b --no-pager -u unit-name
Example:
sudo journalctl -f -b --no-pager -u sdwdate
Daemon Status[edit]
To view the status of a specific systemd unit. Syntax:
(Replace unit-name
with the actual name of the systemd unit.)
sudo systemctl status --no-pager unit-name
Example:
sudo systemctl status --no-pager sdwdate
Check Systemd Journal Log of Failed Boot[edit]
An alternative to recovery mode might be virtual consoles, since they are an easier and more lightweight solution. A virtual console login might still be possible when the graphical user interface no longer starts.
Prerequisite knowledge: Virtual Consoles. Try to log in to a virtual console in a functional VM as an exercise. If that works, try a virtual console login in the broken VM.
If a virtual console is unavailable:
- Boot into Recovery Mode.
- Reboot into normal mode so a log for the failed boot will be written (if not previously enabled).
- Boot into recovery mode again.
- Check Systemd Journal Log of Previous Boot.
Permission Fix[edit]
Fix permissions that might not be set correctly.
Open a terminal.
If you are using Qubes-Whonix™, complete the following steps.
Qubes App Launcher (blue/grey "Q")
→ Whonix-Workstation™ App Qube (commonly named anon-whonix)
→ Xfce Terminal
If you are using a graphical Whonix with Xfce, run.
Start Menu
→ Xfce Terminal
sudo chown --recursive user:user /home/user
Hardware Issues[edit]
These are hardware issue that you may encouter.
General Recommendations[edit]
Rhetorical questions:
- When was the last time a qualified person disassembled your computer/notebook and removed dust from the fan and checked the cooling system of the CPU?
- How often should maintenance be performed?
- What is your CPU temperature under heavy system load?
- What is the room temperature where the computer is operating?
- What is your hard drive's health status?
Recommendations:
- Ensure your computer or notebook has regular, proper maintenance.
- Monitor CPU temperature by utilizing relevant host operating system tools.
- Consider cooling the room where computers/notebooks operate.
- Better placement (more air space) around computers or notebooks can help.
- Consider a passive or active (notebook) cooling pad. [11]
- Run
memtest86+
to rule out RAM problems. - Run
gsmartcontrol
to rule out hard drive defects.
None of these issues are related to Whonix. Therefore, please do not ask these questions in Whonix support channels (until there is a Whonix-Host operating system) as per Self Support First Policy.
memtest86+[edit]
1 Install the memtest86+
tool.
On Debian (based) hosts such as Kicksecure.
Install package(s) memtest86+
following these instructions
1 Platform specific notice.
- Non-Qubes-Whonix: No special notice.
- Qubes-Whonix: In Template.
2 Update the package lists and upgrade the system .
sudo apt update && sudo apt full-upgrade
3 Install the memtest86+
package(s).
Using apt
command line
--no-install-recommends
option
is in most cases optional.
sudo apt install --no-install-recommends memtest86+
4 Platform specific notice.
- Non-Qubes-Whonix: No special notice.
- Qubes-Whonix: Shut down Template and restart App Qubes based on it as per Qubes Template Modification .
5 Done.
The procedure of installing package(s) memtest86+
is complete.
For other host operating systems, refer to memtest86+
upstream documentation.
2 Reboot.
3 Start memtest86+
from (grub) boot menu.
- Choose
memory test (memtest86+.elf)
. memory test (memtest86+.bin, serial console)
serial console not needed.
4 Keep memtest86+
running for a significant period.
A single pass of memtest86+
from 0 to 100% progress is insufficient. The memory testing should be run for as long as practically possible; for example, ideally overnight or for 8+ hours. This is because RAM issues might not happen during memtest86+
's first pass. Sometimes only after a few 10 minutes or few hours issues can be detected because the issue might be related to stress, heat and not be easily and quickly reproducible.
5 Check the memtest86+
output.
If there are any issues, red error messages appear in the middle of the screen.
6 Done.
The memory test is complete.
If memtest86+
identified any issues, these can manifest in various ways such as system crashes at random times. In such cases, the only likely solution is replacing the faulty hardware (RAM banks). [12]
gsmartcontrol[edit]
1 Install the gsmartcontrol+
tool.
On Debian (based) hosts such as Kicksecure.
Install package(s) gsmartcontrol
following these instructions
1 Platform specific notice.
- Non-Qubes-Whonix: No special notice.
- Qubes-Whonix: In Template.
2 Update the package lists and upgrade the system .
sudo apt update && sudo apt full-upgrade
3 Install the gsmartcontrol
package(s).
Using apt
command line
--no-install-recommends
option
is in most cases optional.
sudo apt install --no-install-recommends gsmartcontrol
4 Platform specific notice.
- Non-Qubes-Whonix: No special notice.
- Qubes-Whonix: Shut down Template and restart App Qubes based on it as per Qubes Template Modification .
5 Done.
The procedure of installing package(s) gsmartcontrol
is complete.
For other host operating systems, refer to gsmartcontrol
upstream documentation.
2 Reboot.
3 Start gsmartcontrol
.
4 Run the short and extended tests on all hard drives.
5 Done.
The hard drive test is complete.
If gsmartcontrol
identified any issues, these can manifest in various ways such as system crashes at random times. In such cases, the only likely solution is replacing the faulty hardware (hard drive). [13]
See Also[edit]
- Advice for Systems with Low RAM
- VirtualBox Troubleshooting
- KVM Troubleshooting
- Qubes-Whonix™ Troubleshooting
- Recovery Mode
- System Recovery using SysRq Key
- Core Dumps
Footnotes[edit]
- ↑
While a Linux kernel developer could attach a debugger to analyze low-level operations, doing so for a common network error shown by Firefox, such as
DNS_PROBE_FINISHED_NO_INTERNET
, is generally impractical and unnecessary for several reasons:- Complexity: Kernel debugging is complex and requires deep system knowledge. It involves analyzing system calls, network stack processes, and possibly kernel code, which is overkill for typical network issues.
- Time-Consuming: Setting up a kernel debugger environment, reproducing the issue, and analyzing the results can take significantly more time than standard troubleshooting methods.
- Expenses: There are few people with the skills required. Hiring a developer with these skills would be more expensive than standard network troubleshooting.
- User expectations: Debugging attempts are not guaranteed to work, but they are encouraged to help fix outstanding issues.
- ↑
By using ping.
For example, ping
8.8.8.8
. On the host, run. ping 8.8.8.8 Pinggoogle.com
and/or other websites. ping google.com and so on. - ↑ date
- ↑ 4.0 4.1 https://forums.whonix.org/t/time-too-long-error-or-very-long-time/12716/4
- ↑ https://www.reddit.com/r/Whonix/comments/1easzpq/the_hellish_5_problem_plz_help/
- ↑ This test only uses TCP and not DNS.
- ↑
In computer science, a high-level programming language is a programming language with strong abstraction from the details of the computer. In contrast to low-level programming languages, it may use natural language elements, be easier to use, or may automate (or even hide entirely) significant areas of computing systems (e.g. memory management), making the process of developing a program simpler and more understandable than when using a lower-level language. The amount of abstraction provided defines how "high-level" a programming language is.
- ↑ Such as broken networking in either the host network or in all virtual machines.
- ↑ 9.0 9.1 This process can be lengthy.
- ↑ "user support template": https://forums.whonix.org/t/workstation-keeps-freezing/7693/6
- ↑ Perform thorough research beforehand.
- ↑ RAM bank warranties may apply.
- ↑ Hard drive warranties may apply.
We believe security software like Whonix needs to remain open source and independent. Would you help sustain and grow the project? Learn more about our 12 year success story and maybe DONATE!