У меня Ubuntu 16.04 работает на виртуальном ящике (на Mac), а на aws ec2 работает ubuntu 18.04. Я пытаюсь запустить блокнот Jupiter на aws.ec2
и пытаюсь получить к нему удаленный доступ через свой веб-браузер в моем локальном Ubuntu. Я могу получить доступ к удаленному терминалу ubuntu (aws.ec2). После того, как я выполнил шаги на этом ссылка
На шаге 9 я получил следующую ошибку.
Я переустанавливал все с нуля 3 раза (включая локальный экземпляр ubuntu и aws ec2), но пока никакого прогресса.
Last login: Thu Nov 1 06:34:07 2018 from 134.1****
[email protected]***:~$ export XDG_RUNTIME_DIR=""
[email protected]***:~$ jupyter notebook
[I 06:40:19.525 NotebookApp] Serving notebooks from local directory: /home/ubuntu
[I 06:40:19.528 NotebookApp] The Jupyter Notebook is running at:
[I 06:40:19.528 NotebookApp] https:// **** :8888/?token=727fbb120d19f55a435c1*****
[I 06:40:19.528 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 06:40:19.529 NotebookApp]
Copy/paste this URL into your browser when you connect for the first time,
to login with a token:
https://(ip-172-31-***** .0.1):8888/?token=727fbb120d19f55a435c14*********
ERROR:asyncio:Exception in callback BaseAsyncIOLoop._handle_events(4, 1)
handle: <Handle BaseAsyncIOLoop._handle_events(4, 1)>
Traceback (most recent call last):
File "/usr/lib/python3.6/asyncio/events.py", line 145, in _run
self._callback(*self._args)
File "/home/ubuntu/.local/lib/python3.6/site-packages/tornado/platform/asyncio.py", line 122, in _handle_events
handler_func(fileobj, events)
File "/home/ubuntu/.local/lib/python3.6/site-packages/tornado/stack_context.py", line 300, in null_wrapper
return fn(*args, **kwargs)
File "/home/ubuntu/.local/lib/python3.6/site-packages/tornado/netutil.py", line 262, in accept_handler
callback(connection, address)
File "/home/ubuntu/.local/lib/python3.6/site-packages/tornado/tcpserver.py", line 263, in _handle_connection
do_handshake_on_connect=False)
File "/home/ubuntu/.local/lib/python3.6/site-packages/tornado/netutil.py", line 565, in ssl_wrap_socket
context = ssl_options_to_context(ssl_options)
File "/home/ubuntu/.local/lib/python3.6/site-packages/tornado/netutil.py", line 540, in ssl_options_to_context
context.load_cert_chain(ssl_options['certfile'], ssl_options.get('keyfile', None))
PermissionError: [Errno 13] Permission denied
ERROR:asyncio:Exception in callback BaseAsyncIOLoop._handle_events(4, 1)
handle: <Handle BaseAsyncIOLoop._handle_events(4, 1)>
Traceback (most recent call last):
File "/usr/lib/python3.6/asyncio/events.py", line 145, in _run
self._callback(*self._args)
File "/home/ubuntu/.local/lib/python3.6/site-packages/tornado/platform/asyncio.py", line 122, in _handle_events
handler_func(fileobj, events)
File "/home/ubuntu/.local/lib/python3.6/site-packages/tornado/stack_context.py", line 300, in null_wrapper
return fn(*args, **kwargs)
File "/home/ubuntu/.local/lib/python3.6/site-packages/tornado/netutil.py", line 262, in accept_handler
callback(connection, address)
File "/home/ubuntu/.local/lib/python3.6/site-packages/tornado/tcpserver.py", line 263, in _handle_connection
do_handshake_on_connect=False)
File "/home/ubuntu/.local/lib/python3.6/site-packages/tornado/netutil.py", line 565, in ssl_wrap_socket
context = ssl_options_to_context(ssl_options)
File "/home/ubuntu/.local/lib/python3.6/site-packages/tornado/netutil.py", line 540, in ssl_options_to_context
context.load_cert_chain(ssl_options['certfile'], ssl_options.get('keyfile', None))
PermissionError: [Errno 13] Permission denied
Примечание 1: на экземпляре ec2 Ubuntu имеет версию 18.04 и поставляется с python 3.6.3, тогда мне нужно установить anaconda поверх него, а затем версия python теперь 3.5.2, как только я набрал $ python3.
Примечание 2: несмотря на то, что после того, как анаконда была установлена в EC2, версия python упала до 3.5.2.
как только я проверил следующий каталог / usr / local / lib / там существует только папка python3.6, я набрал $ sudo chmod 777 dist-packages /
затем записную книжку $ jupyter, затем скопируйте ссылку на токен и объедините с DNS, но все равно не сработало.
Установленный вами порт 8888 должен быть включен во входящие группы безопасности. Benai решил эту проблему на этом форуме: https://forums.fast.ai/t/can-t-connect-to-jupyter-notebook-tried-3-different-machines-err-connection-timed-out/3779
Вот пошаговая инструкция: «
Щелкните «Экземпляры» (в разделе «Экземпляры») на левой боковой панели.
Выберите свой экземпляр (поле слева от «Имя» и «Идентификатор экземпляра» должно стать синим, а набор информации будет отображаться в нижней части страницы. Эта информация будет включать теги «Описание», «Статус» Проверки »,« Мониторинг »и« Теги »)
Если вы нажмете «Описание», вы должны увидеть отображаемую информацию. Рядом с «Группы безопасности» я вижу синим цветом следующее: «launch-wizard-10. просмотреть правила для входящих подключений »
Нажмите «просмотреть правила для входящих подключений», и я вижу небольшое всплывающее окно с сообщением: Ports Protocol Source Launch-wizard-10 22 tcp 0.0.0.0/0 Это означает, что только порт 22 открыт для входящей информации.
Затем нажмите «Группы безопасности» (в разделе «Сеть и безопасность») на левой панели. Я определил, какая из групп безопасности в списке соответствует моему работающему экземпляру, просмотрев под «Описание», чтобы увидеть группу с сегодняшней датой. (например, «запуск-мастер-10 создан 2017-06-29»).
Я выбрал его в крайнем левом поле флажка (поле стало синим). Информация появилась в нижней части страницы, включая теги «Описание», «Входящее», «Исходящее» и «Теги». Щелкните по тегу «Входящие».
В моем случае я видел только: «SSH TCP 22 0.0.0.0/0». Нажмите «Изменить». Нажмите «Добавить правило», и должна появиться новая строка. Введите «8888» в «Диапазон портов» и в «Источник» выберите «Anywhere», который должен изменить значение на «0.0.0.0/0, :: / 0». Щелкните «Сохранить».
Теперь вы должны увидеть следующее в нижней части страницы: Пользовательское правило TCP TCP 8888 0.0.0.0/0
«
Я столкнулся с этой проблемой точно так, как было сказано, и нашел решение этой проблемы.
вам нужно проверить файл сертификата и проверить, принадлежит ли он корню.
вам просто нужно сменить владельца на пользователя jupyter, чьи учетные данные используются, и ноутбук будет работать нормально
изменение с
to
и теперь jupyter работает нормально
где (x.x.x.x) — IP-адрес браузера
У меня была такая же проблема, и теперь я решил ее, попробовав пару вещей. Попробуйте эти решения, чтобы узнать, помогает ли это:
/home
и папки~/.local/share/jupyter/
на текущего пользователя, выполняющего эту команду:Если вы столкнулись с ошибкой ssl, просмотрите эту ссылку.
Убедитесь, что вы набираете в браузере
https://<jupyter-server-ip>
вместоhttps://
.Your connection is not private
проблема в Chrome и вы не можете продолжить, попробуйте Safari или другие браузеры. Это происходит в Chrome с версией 70 или новее.отличная работа над этим. Я видел много людей, сталкивающихся с этой проблемой. Все предложенные решения у меня не работали, а у вас -. Спасибо — person hkacmaz; 06.06.2020
У меня такая же проблема, попробовал ваш номер один, он сработал, затем пришел к номеру 2, теперь у меня ошибка SSL. ssl.SSLError: [SSL: EE_KEY_TOO_SMALL] ключ слишком мал (_ssl.c: 4022). похоже, что моя ошибка не совсем похожа на другие. Я тоже попытался снизить уровень SSL, но не сработало. любое предложение? — person hkacmaz; 29.05.2021
я задал вопрос здесь: stackoverflow.com/questions/67753969/ — person hkacmaz; 29.05.2021
Что сработало для меня, так это:
sudo chown -R $USER ~/.local/share/jupyter/