Question: I am running ipython notebook on my OSX machine and/or my ubuntu 14.04 machine. I am using ipython 3.0.0, and ipython (jupyter) notebooks.

When I start an ipython notebook, under New there is a terminal option, but it's unavailable for me.
I haven't been able to find any documentation on this feature, how to activate it or what it does.
The `ipython notebook --help` command doesn't mention it and I haven't found anything in the [documentation](http://ipython.org/ipython-doc/dev/index.html) either.
I haven't discovered the special keywords to search google for to get any information either.

What does this feature do? How do I activate it? Is there any documentation on this available?

![enter image description here](https://i.stack.imgur.com/crK8E.png)

Answer: 
Here's the code in `Lib/site-packages/IPython/html/notebookapp.py` responsible for this item (located the file by searching the source for "Terminals" case-sensitively):

```py
def init_terminals(self):
    try:
        from .terminal import initialize
        initialize(self.web_app)
        self.web_app.settings['terminals_available'] = True
    except ImportError as e:
        log = self.log.debug if sys.platform == 'win32' else self.log.warn
        log("Terminals not available (error was %s)", e)

```

As you can see, there should be a message in the console log specifying what went wrong (you may need to increase log verbosity with `ipython notebook --log-level=<level>` to see it). In my case, it said:

> 
> Terminals not available (error was No module named fcntl)
> 
> 
> 

The `html.terminal` module that is being imported appears to provide a web-based IPython interactive console.
Support for Windows terminals with terminado dependency was added in Jupyter 5.3.0:

<https://github.com/jupyter/notebook/pull/3087>