# How to start Tor Browser on Linux

**URL:** https://forum.torproject.org/t/how-to-start-tor-browser-on-linux/11202
**Category:** Tor Browser Desktop
**Tags:** tor-browser
**Created:** [January 19, 2024, 6:04pm UTC](https://forum.torproject.org/t/how-to-start-tor-browser-on-linux/11202 "2024-01-19T18:04:41Z")
**Posts on this page:** 1
**Showing post:** 13

<div class="post-metadata">

### Author: ![PieroV](https://forum.torproject.org/user_avatar/forum.torproject.org/pierov/32/756_2.png) [@PieroV](https://forum.torproject.org/u/PieroV)
#### Post date: [January 26, 2024, 1:56pm UTC](https://forum.torproject.org/t/how-to-start-tor-browser-on-linux/11202/13 "2024-01-26T13:56:54Z")

</div>

> [@anon48802337](#):
>
> When you write `start-tor-browser` executable (without .desktop), do you mean the `start-tor-browser` shell script in the directory `Browser`, the subdirectory of `tor-browser` where `start-tor-browser.desktop` is?

Yes.  
I normally don’t use the `.desktop` (I usually launch from the terminal…), but the `.desktop` is also supposed to work, if your system supports it.

> [@anon48802337](#):
>
> What do you mean with `firefox`? Do you mean I should rather use Tor Browser than `firefox`?

Tor Browser is a Firefox fork.  
You can customize the name of the binary, but we didn’t know it, and eventually also the main binary of Tor Browser is called `firefox` (`firefox.real`, actually). For Mullvad Browser, we knew this, and called the binary `mullvadbrowser`.

In particular, there are the following files in the `Browser` directory:

- `start-tor-browser`: a shell script that does some environment customziation (rewrites `$HOME`, set a custom fontconfig configuration, etc…). **This is one of the two script to use to start Tor Browser**.
- `start-tor-browser.desktop`: calls `start-tor-browser`, but it has a custom icon (if your file manager supports it - notably Nautilus doesn’t to avoid attacks from untrusted `.desktop` files). **This is also a way to start Tor Browser** , if your system supports it.
- `firefox.real`: this is the real compiled binary. **You shouldn’t launch it directly** , because it will be missing some protections that the custom environment set by the other two files would prepare. You might be fingerprintable from other Tor Browser users if you use it directly.
  - The only case in which you need to use this is if you want to launch Tor Browser inside a debugger. In that case, please remember to customize your debugging environment to look like the environment we create. However, when you build Tor Browser/Firefox for debugging, you won’t need to launch it inside a debugger, because Firefox integrates some utilities to tell you the PID to attach to it if it crashes.

- `firefox`: this is a wrapper for `firefox.real`. It checks if your system has a recent enough `libstdc++6.so`, and if it doesn’t, it adds the directory that contains the `libstdc++6.so` we ship to `LD_LIBRARY_PATH`. It was created for updating purposes, I don’t know if it’s still needed/it still works. **You shouldn’t launch directly this** , like `firefox.real` it lacks the custom environment.

These files are not related at all to the `firefox` command that usually is the official Firefox, packaged by your distribution and you can usually find in a directory such as `/usr/bin`.  
I was talking about the `firefox` script with execution permission we ship.

---

_[View the full topic](https://forum.torproject.org/t/how-to-start-tor-browser-on-linux/11202)._
