2015-03-06 2 views
10

Я хотел бы использовать iPython на Amazon EC2 (Linux AMI). Я установил Anaconda и запустил iPython для тестирования некоторых скриптов, которые я уже создал. Сейчас я заинтересован в том, чтобы запустить его в терминале (не как ноутбук).TclError: нет отображаемого имени и нет переменной переменной DISPLAY на EC2

В начале моего кода я всегда делаю:

import json 
import numpy as np 
import pandas as pd 
from pandas import Series, DataFrame 

Однако, я попытался CTRL + C от моего текстового редактора, а затем с помощью% пасты в терминале я получаю ошибку:

TclError: no display name and no $DISPLAY environment variable 

Если я пытаюсь SSH -X имя @ хост, за это предложение No display name and no $DISPLAY environment variable using tkinter through ssh, я получаю:

/opt/X11/bin/xauth: file /Users/adrianp/.Xauthority does not exist 
Warning: untrusted X11 forwarding setup failed: xauth key data not generated 
X11 forwarding request failed on channel 0 

чтобы исправить этот вопрос я попытался https://superuser.com/questions/249045/x11-forwarding-from-amazon-ec2-ami, но все-таки получил предупреждение:

Warning: untrusted X11 forwarding setup failed: xauth key data not generated 

И ту же ошибку:

TclError: no display name and no $DISPLAY environment variable 

За это предложение Generating a PNG with matplotlib when DISPLAY is undefined (который, кажется, не имеет значения, но я попробовал все) я сделал:

import matplotlib 
matplotlib.use('Agg') 

перед импортом чего-либо еще и по-прежнему получают ту же ошибку.

Любые идеи о том, как решить эту проблему? Я бы очень хотел использовать функцию магии пасты для ввода функций/и т. Д.

+0

Другой вариант при попытке использования функции волшебной пасты - «TclError: не удалось подключиться к отображению» localhost: 10.0 »' – measureallthethings

+0

Что касается ошибки localhost ... пробовал это, но все еще не могу получить волшебную пасту для работы http: //stackoverflow.com/questions/2443702/problem-running-python-matplotlib-in-background-after-ending-ssh-session – measureallthethings

+0

Это, кажется, ошибка IPython 3.0, FWIW У меня такая же проблема на сервере ARM – JCR000

ответ

4

Это больше проблема с linux/X11, чем вопрос с python. Кроме того, этот процесс, вероятно, будет чрезмерным - вам будет лучше всего запускать ipython локально или запустить веб-блокнот.

Во всяком случае, вы должны:

  • установить TigerVNC
  • выполнения VNCserver (так как это интернет-облицовочный сервер, использовать защищенную ключевую фразу или заблокировать порт в брандмауэре)
  • установить ки (Я думаю, вы уже это сделали)
  • Редактировать sshd_config (скорее всего/etc/ssh/sshd_config) и включить X11Переход (X11Вперед да).
  • Войти на сервер, проходящей опция -y SSH (SSH -Y пользователь @ сервер)

Затем вы должны быть в состоянии начать IPython и использовать% пасты.

+0

Удивительный, спасибо за подробный ответ. Я похоронен в других проектах, поэтому мне нужно немного времени, чтобы проверить это. – measureallthethings

Смежные вопросы