Ipython: ์ƒˆ Jupyter ๋…ธํŠธ๋ถ์„ ์—ด๊ฑฐ๋‚˜ ๋งŒ๋“ค ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2015๋…„ 11์›” 17์ผ  ยท  33์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: ipython/ipython

์ตœ๊ทผ์— ๋…ธํŠธ๋ถ์— Ubuntu 14.04๋ฅผ ์ƒˆ๋กœ ์„ค์น˜ํ–ˆ๊ณ  ์•„๋‚˜์ฝ˜๋‹ค๋ฅผ ํ†ตํ•ด IPython 4๋ฅผ ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ฐ์Šคํฌํƒ‘์—์„œ ์ž˜ ์—ด๋ฆฌ๋Š” ๋…ธํŠธ๋ถ์„ ํฌํ•จํ•˜์—ฌ ๋…ธํŠธ๋ถ์„ ์—ด๊ฑฐ๋‚˜ ๋กœ๋“œํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋…ธํŠธ๋ถ์„ ๋กœ๋“œํ•˜๋ ค๊ณ  ํ•˜๋ฉด ๋‹ค์Œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. An unknown error occurred while loading this notebook. This version can load notebook formats v4 or earlier. See the server log for details.

ํ„ฐ๋ฏธ๋„์€ ๋‹ค์Œ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

Unhandled error in API request
Traceback (most recent call last):
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/traitlets/traitlets.py", line 432, in __get__
    value = obj._trait_values[self.name]
KeyError: 'db'

During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/notebook/base/handlers.py", line 436, in wrapper
    result = yield gen.maybe_future(method(self, *args, **kwargs))
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/tornado/gen.py", line 870, in run
    value = future.result()
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/tornado/concurrent.py", line 215, in result
    raise_exc_info(self._exc_info)
  File "<string>", line 3, in raise_exc_info
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/tornado/gen.py", line 230, in wrapper
    yielded = next(result)
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/notebook/services/contents/handlers.py", line 126, in get
    path=path, type=type, format=format, content=content,
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/notebook/services/contents/filemanager.py", line 350, in get
    model = self._notebook_model(path, content=content)
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/notebook/services/contents/filemanager.py", line 310, in _notebook_model
    self.mark_trusted_cells(nb, path)
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/notebook/services/contents/manager.py", line 447, in mark_trusted_cells
    trusted = self.notary.check_signature(nb)
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/nbformat/sign.py", line 220, in check_signature
    if self.db is None:
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/traitlets/traitlets.py", line 439, in __get__
    value = self._validate(obj, dynamic_default())
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/nbformat/sign.py", line 126, in _db_default
    db = sqlite3.connect(self.db_file, **kwargs)
sqlite3.OperationalError: unable to open database file 

์ƒˆ ๋…ธํŠธ๋ถ์„ ๋งŒ๋“ค๋ ค๊ณ  ํ•˜๋ฉด Unexpected error while saving file: Dropbox/iPython Notebooks/Untitled.ipynb [Errno 13] Permission denied: '/home/ryan/.local/share/jupyter/notebook_secret' ๋ผ๋Š” ๋˜ ๋‹ค๋ฅธ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋” ๋งŽ์€ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ ๊ฐ™์ง€๋งŒ ์ €๋Š” Linux/python/์ด ๋ชจ๋“  ๊ฒƒ์— ๋น„๊ต์  ์ต์ˆ™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํ„ฐ๋ฏธ๋„์€ ๋‹ค์Œ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

Error while saving file: Dropbox/iPython Notebooks/Untitled.ipynb [Errno 13] Permission denied:     '/home/ryan/.local/share/jupyter/notebook_secret'
Traceback (most recent call last):
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/traitlets/traitlets.py", line 432, in __get__
    value = obj._trait_values[self.name]
KeyError: 'secret'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/notebook/services/contents/filemanager.py", line 387, in save
    self.check_and_sign(nb, path)
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/notebook/services/contents/manager.py", line 431, in check_and_sign
    self.notary.sign(nb)
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/nbformat/sign.py", line 245, in sign
    signature = self.compute_signature(nb)
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/nbformat/sign.py", line 195, in compute_signature
    hmac = HMAC(self.secret, digestmod=self.digestmod)
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/traitlets/traitlets.py", line 439, in __get__
    value = self._validate(obj, dynamic_default())
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/nbformat/sign.py", line 173, in _secret_default
    self._write_secret_file(secret)
  File "/home/ryan/anaconda3/lib/python3.5/site-packages/nbformat/sign.py", line 179, in _write_secret_file
    with io.open(self.secret_file, 'wb') as f:
PermissionError: [Errno 13] Permission denied: '/home/ryan/.local/share/jupyter/notebook_secret'

python -c "import IPython; print(IPython.sys_info())" ์˜ ์ถœ๋ ฅ์„ ํฌํ•จํ•˜๋„๋ก ์ œ์•ˆ๋˜์—ˆ์œผ๋ฏ€๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

{'commit_hash': 'f534027',
 'commit_source': 'installation',
 'default_encoding': 'UTF-8',
 'ipython_path': '/home/ryan/anaconda3/lib/python3.5/site-packages/IPython',
 'ipython_version': '4.0.0',
 'os_name': 'posix',
 'platform': 'Linux-3.19.0-33-generic-x86_64-with-debian-jessie-sid',
 'sys_executable': '/home/ryan/anaconda3/bin/python',
 'sys_platform': 'linux',
 'sys_version': '3.5.0 |Anaconda 2.4.0 (64-bit)| (default, Oct 19 2015, '
                '21:57:25) \n'
                '[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)]'}

์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด ์ €๋Š” ์ปดํ“จํŒ… ๋ฌธ์ œ์˜ ์ „๋ฌธ๊ฐ€๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ๋ฐ”๋ณด ๊ฐ™์€ ์ง“์„ ํ•˜์ง€ ์•Š๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๋‚˜๋Š” anaconda, ๋‹ค๋ฅธ ๋ฒ„์ „์˜ python์„ ์ œ๊ฑฐํ•˜๊ณ  ๋‹ค์‹œ ์„ค์น˜ํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ์œผ๋ฉฐ ์ปดํ“จํ„ฐ๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ–ˆ์œผ๋ฉฐ https://github.com/ipython/ipython/issues/2097 ๋ฐ ์—ฌ๊ธฐ https://github.com์— ์žˆ๋Š” ์†”๋ฃจ์…˜๋„ ์‹œ๋„ํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

~/.local/share/jupyter ๋””๋ ‰ํ† ๋ฆฌ์˜ ์†Œ์œ ๊ถŒ์„ ๋ฃจํŠธ์—์„œ ์‚ฌ์šฉ์ž๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚ด ๋‹ค๋ฅธ ์‹œ์Šคํ…œ์—์„œ๋Š” ๋ฐœ์ƒํ•˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•œ ์ด์œ ๋ฅผ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์•„๋งˆ๋„ ๋ฒ„๊ทธ์ผ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์—ฌ๊ธฐ์— ๋‚จ๊ฒจ ๋‘ก๋‹ˆ๋‹ค.

๋ชจ๋“  33 ๋Œ“๊ธ€

~/.local/share/jupyter ๋””๋ ‰ํ† ๋ฆฌ์˜ ์†Œ์œ ๊ถŒ์„ ๋ฃจํŠธ์—์„œ ์‚ฌ์šฉ์ž๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚ด ๋‹ค๋ฅธ ์‹œ์Šคํ…œ์—์„œ๋Š” ๋ฐœ์ƒํ•˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•œ ์ด์œ ๋ฅผ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์•„๋งˆ๋„ ๋ฒ„๊ทธ์ผ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์—ฌ๊ธฐ์— ๋‚จ๊ฒจ ๋‘ก๋‹ˆ๋‹ค.

๋ฐฉ๊ธˆ ์ƒˆ๋กœ ์„ค์น˜ํ–ˆ๋Š”๋ฐ ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด ์ˆ˜์ • ์‚ฌํ•ญ์€ ์—ฌ์ „ํžˆ โ€‹โ€‹์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

"jupyter notebook --ip 0.0.0.0" ์ด์ „์— "sudo"๋ฅผ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ ์ €์—๊ฒŒ ํšจ๊ณผ์ ์ด์—ˆ์Šต๋‹ˆ๋‹ค.

@metallikapo๋„ ๋˜‘๊ฐ™์ด ํ•˜๊ณ  ํ„ฐ๋ฏธ๋„์„ ์—ด๋ฉด root๋กœ ๋กœ๊ทธ์ธ์ด ๋ฉ๋‹ˆ๋‹ค. ์•ˆ์ข‹๋‹ค.

์˜ˆ, ๋…ธํŠธ๋ถ ์„œ๋ฒ„๋ฅผ sudo ์‹คํ–‰ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ๋…ธํŠธ๋ถ์˜ ๋ชจ๋“  ์ฝ”๋“œ๊ฐ€ ๋ฃจํŠธ๋กœ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. @rtdew1์ด ๋ฐœ๊ฒฌํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ๊ด€๋ จ ํŒŒ์ผ/๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์‚ฌ์šฉ์ž๊ฐ€ ์†Œ์œ ํ•˜๋„๋ก ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์ด ๋” ๋‚˜์€ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ์ด ์ƒํ™ฉ์ด ์–ด๋–ป๊ฒŒ ๋ฐœ์ƒํ•˜๋Š”์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

Mac์—์„œ sudo jupyter ๋…ธํŠธ๋ถ์„ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ ๋‚ด ์‹œ์Šคํ…œ์—์„œ๋„ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.

@metallikapo ์ •๋ง ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค

Mac์—์„œ sudo jupyter ๋…ธํŠธ๋ถ์„ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ ๋‚ด ์‹œ์Šคํ…œ์—์„œ๋„ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.

@metallikapo ์ •๋ง ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค

๋‹ค์‹œ ํ•œ ๋ฒˆ ์šฐ๋ฆฌ๋Š” sudo๋กœ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•˜์ง€ ์•Š์œผ๋ฉฐ ๋…ธํŠธ๋ถ 5.0์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ๋ฃจํŠธ๋กœ ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ์„ ๊ฑฐ๋ถ€ํ•˜๋ฏ€๋กœ ์†”๋ฃจ์…˜์ด ์•„๋‹™๋‹ˆ๋‹ค.

์–ด๋–ค ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜์…จ๋‚˜์š”? ๋…ธํŠธ๋ถ ์„ ์—ฌ๋Š” jupyter ๋…ธํŠธ๋ถ ์—๋„ ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋Œ€์‹  jupyter-notebook ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋ฉ๋‹ˆ๋‹ค.

jupyter ๋…ธํŠธ๋ถ์˜ ์†Œ์œ ๊ถŒ์„ ์–ด๋–ป๊ฒŒ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๊นŒ?

๊ทธ๋ ‡๋‹ค๋ฉด ๋” ๋‚˜์€ ์†”๋ฃจ์…˜์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? @์นด๋กœ

๋” ๋‚˜์€ ์†”๋ฃจ์…˜์€ Jupyter๊ฐ€ ์ผ๋ฐ˜ ์‚ฌ์šฉ์ž ๊ณ„์ •์—์„œ ์‹คํ–‰๋  ์ˆ˜ ์žˆ๋„๋ก ๊ถŒํ•œ์„ ์ˆ˜์ •ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ž˜๋ชป๋  ์ˆ˜ ์žˆ๊ณ  ์œ ์‚ฌํ•œ ์˜ค๋ฅ˜๋ฅผ ์ผ์œผํ‚ฌ ์ˆ˜ ์žˆ๋Š” ์—ฌ๋Ÿฌ ๊ฐ€์ง€๊ฐ€ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด์— ๋Œ€ํ•œ ์ •ํ™•ํ•œ ์ง€์นจ์„ ์ œ๊ณตํ•˜๊ธฐ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ผ๋ฐ˜์ ์œผ๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•˜๊ณ  ์‹ถ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

  1. ํ‘œ์‹œ๋˜๋Š” '๊ถŒํ•œ ๊ฑฐ๋ถ€๋จ' ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๊ณ  ์–ด๋–ค ํŒŒ์ผ์„ ์ฐธ์กฐํ•˜๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”. ์ด๊ฒƒ์ด ํ™ˆ ๋””๋ ‰ํ† ๋ฆฌ(Linux์˜ ๊ฒฝ์šฐ /home/username , Mac์˜ ๊ฒฝ์šฐ /Users/username ) ์•„๋ž˜์— ์žˆ๋Š” ๊ฒฝ์šฐ ์ด ์ง€์นจ์ด ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๊ณณ์— ์žˆ๋‹ค๋ฉด ๋ฌธ์ œ๊ฐ€ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  2. ํ„ฐ๋ฏธ๋„์„ ์—ด๊ณ  ํ•ด๋‹น ํŒŒ์ผ์ด ํฌํ•จ๋œ ํด๋”๋กœ cd ๋ฅผ ์—ฝ๋‹ˆ๋‹ค.
  3. ls -l ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ๊ฑฐ๊ธฐ์— ์žˆ๋Š” ๋ชจ๋“  ํŒŒ์ผ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŒŒ์ผ์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์†Œ์œ ์ž๊ฐ€ ์ž์‹ ์˜ ์‚ฌ์šฉ์ž ์ด๋ฆ„ ๋Œ€์‹  root ์ž„์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ํŒŒ์ผ์ด ์—†์œผ๋ฉด ์•„๋งˆ ๋งŒ๋“ค ์ˆ˜ ์—†์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค - ํ•œ ๋‹จ๊ณ„ ์œ„๋กœ ์˜ฌ๋ผ๊ฐ€์„œ ๋””๋ ‰ํ† ๋ฆฌ์—์„œ ๊ฐ™์€ ๊ฒƒ์„ ์‹œ๋„ํ•˜์‹ญ์‹œ์˜ค.
  4. sudo chown username:username filename ๋ฅผ ์‹คํ–‰ํ•˜์—ฌ ํŒŒ์ผ์˜ ์†Œ์œ ์ž(๋ฐ ๊ทธ๋ฃน)๋ฅผ ์ž์‹ ์˜ ์‚ฌ์šฉ์ž๋กœ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค. ๋””๋ ‰ํ† ๋ฆฌ์—์„œ ์ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒฝ์šฐ -R ํ”Œ๋ž˜๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ทธ ์•ˆ์˜ ๋ชจ๋“  ํŒŒ์ผ๋„ ๋ณ€๊ฒฝํ•˜์‹ญ์‹œ์˜ค.

ํŒŒ์ผ ๊ด€๋ฆฌ์ž์—์„œ ์ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜๋„ ์žˆ์ง€๋งŒ ๋‹ค๋ฅธ ์ž‘์—…์ด ๋งŽ์ด ์žˆ์œผ๋ฏ€๋กœ ์ง€์นจ์„ ์ œ๊ณตํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

(๋ช…ํ™•ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ํ•ด๋‹น ์ง€์นจ์—์„œ username ๋ฅผ ์ž์‹ ์˜ ์‚ฌ์šฉ์ž ์ด๋ฆ„์œผ๋กœ ๋ฐ”๊พธ์‹ญ์‹œ์˜ค.)

๋‚˜๋Š” pynq FPGA์˜ Linux ์‹œ์Šคํ…œ์—์„œ ์‹คํ–‰ ์ค‘์ด๋ฉฐ ์ด๊ฒƒ์€ ๋‚ด ๋ฌธ์ œ๋ฅผ ์™„๋ฒฝํ•˜๊ฒŒ ํ•ด๊ฒฐํ•ฉ๋‹ˆ๋‹ค. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! @takluyver

์•ˆ๋…•ํ•˜์„ธ์š” ํ† ๋งˆ์Šค,

Jupyter ๋…ธํŠธ๋ถ์—์„œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•œ ํ›„ ๋‹ค๋ฅธ
๋ฌธ์ œ: IPython dir ~/.ipython์€ ์ž„์‹œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์“ฐ๊ธฐ ๊ฐ€๋Šฅํ•œ ์œ„์น˜๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.
์˜ˆ๋ฐฐ ๊ทœ์น™์„œ.

๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ๋Š”์ง€ ์•„์‹ญ๋‹ˆ๊นŒ?

์ตœ์ƒ์˜,

์œ  ๋ฆฌ
์ปดํ“จํ„ฐ ๊ณผํ•™ ๋ฐ ๊ณตํ•™,
ํ™์ฝฉ์ค‘๋ฌธ๋Œ€ํ•™๊ต,
์ƒคํ‹ด, ํ™์ฝฉ

2017-11-20 21:01 GMT+08:00 Thomas Kluyver [email protected] :

(๋ช…ํ™•ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ์‚ฌ์šฉ์ž ์ด๋ฆ„์„ ์ž์‹ ์˜ ์‚ฌ์šฉ์ž ์ด๋ฆ„์œผ๋กœ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.
๊ทธ ์ง€์‹œ)

โ€”
๋‹น์‹ ์ด ๋Œ“๊ธ€์„ ๋‹ฌ์•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธ
https://github.com/ipython/ipython/issues/8997#issuecomment-345688870 ,
๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AbRY_MLFebh-Y8ruW-vIi-e5ZJHy8H4aks5s4XgjgaJpZM4GkQxG
.

~/.ipython ์˜ ๊ถŒํ•œ์„ ํ™•์ธํ•˜๊ณ  sudo chown username:username ~/ipython ์‹œ๋„ํ•˜๊ณ  ๋‹ค์Œ ์‚ฌํ•ญ๋„ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

$ ls -al ~/
drwxr-xr-x    14 <username>  <usergroup>         476 Oct  9 05:30 .ipython

ํŠนํžˆ ์ฒซ ๋ฒˆ์งธ ์—ด์ด drwx ์‹œ์ž‘ํ•˜์ง€ ์•Š์œผ๋ฉด sudo chmod o+w ~/.ipython ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์–ด๋”” o+w ์ˆ˜๋‹จ์ด O์˜ wner์— W ์˜์‹ ๊ถŒํ•œ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

ํ•ด๋‹น ํด๋”๋ฅผ ์‚ฌ์šฉ์ž๊ฐ€ ์†Œ์œ ํ•˜๋„๋ก chown ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. chmod 777 ์‚ฌ์šฉํ•˜๋ฉด ๋ชจ๋“  ์‚ฌ์šฉ์ž๊ฐ€ ์ฝ๊ฑฐ๋‚˜ ์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ๋…ธํŠธ๋ถ์„ ์ถ”์ ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ๊ฐ™์€ ๋ช‡ ๊ฐ€์ง€ ๋น„๋ฐ€ ์ •๋ณด๋ฅผ ๊ทธ๊ณณ์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ช…๋ น์€ ์ €์—๊ฒŒ ํšจ๊ณผ์ ์ž…๋‹ˆ๋‹ค.
cd ~ && sudo chown ์‚ฌ์šฉ์ž ์ด๋ฆ„:์‚ฌ์šฉ์ž ์ด๋ฆ„ .local/share/
์‚ฌ์šฉ์ž ์ด๋ฆ„์„ ์ž์‹ ์˜ ์‚ฌ์šฉ์ž ์ด๋ฆ„์œผ๋กœ ๋ฐ”๊พธ๋Š” ๊ฒƒ์„ ์žŠ์ง€ ๋งˆ์‹ญ์‹œ์˜ค.

@liwg06
์ด๊ฒƒ์€ ์˜ฌ๋ฐ”๋ฅธ ์ ‘๊ทผ ๋ฐฉ์‹์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌ ํ•ด์š”!

cd ~ && sudo chown ์‚ฌ์šฉ์ž ์ด๋ฆ„:์‚ฌ์šฉ์ž ์ด๋ฆ„ .local/share/

ํ•˜์ง€๋งŒ,
์ด๊ฒƒ์€ ๋‚˜์—๊ฒŒ ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. .local๊นŒ์ง€ ๋ฐฑ์—…ํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค.

Fedora์˜ ๊ฒฝ์šฐ ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
sudo chown -R user:user /run/user/1000/jupyter/

๋‚˜์—๊ฒŒ ๋งž๋Š” ๋ฐ๋น„์•ˆ ์†”๋ฃจ์…˜:
/run/user/1000/jupyter/ ํด๋”์—์„œ:
chmod -R 0755 ์‚ฌ์šฉ์ž:์‚ฌ์šฉ์ž

  • ์ฝ๊ธฐ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜๋Š” ๊ฒƒ๋งŒ์œผ๋กœ๋Š” ๊ถŒํ•œ ์˜ค๋ฅ˜๊ฐ€ ์ˆ˜์ •๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ๊ฐ™์€ ๋ฌธ์ œ์— ๋ถ€๋”ช์ณค๊ณ  pip3 install jupyter ๋ช…๋ น์„ ์‹คํ–‰ํ–ˆ์„ ๋•Œ ๋ฃจํŠธ ์ˆ˜์ค€ ๋””๋ ‰ํ† ๋ฆฌ์ธ ํ˜„์žฌ ๋””๋ ‰ํ† ๋ฆฌ์— jupyter๋ฅผ ์„ค์น˜ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ์•˜์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ๋””๋ ‰ํ† ๋ฆฌ์˜ ์†Œ์œ ์ž๋ฅผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ผ๋ฐ˜ ์‚ฌ์šฉ์ž๋กœ ๋ณ€๊ฒฝํ•˜๋ฉด ๋‚˜์  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ ๋””๋ ‰ํ† ๋ฆฌ๋Š” ๋ฃจํŠธ์šฉ์ด์—ˆ๊ณ  ๋ฐฉ๊ธˆ jupyter๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  ๋‚ด ํ™ˆ ๋””๋ ‰ํ† ๋ฆฌ์— ๋‹ค์‹œ ์„ค์น˜ํ–ˆ๋Š”๋ฐ ๋ชจ๋“  ๊ฒƒ์ด ์™„๋ฒฝํ•˜๊ฒŒ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ €๋Š” win10 ์‚ฌ์šฉ์ž์ด๊ณ  ์ด๋ฏธ ํ•ด๋‹น ๋””๋ ‰ํ† ๋ฆฌ์˜ ์†Œ์œ ์ž๋ผ๋Š” ์‚ฌ์‹ค์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ์ด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์ด ๋ชจ๋“  ์‚ฌ๋žŒ์˜ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด์™€ ๋™์ผํ•œ ์˜ค๋ฅ˜๊ฐ€ ์žˆ์—ˆ๊ณ  ์–ด๋–ค ์†”๋ฃจ์…˜๋„ ๋‚˜๋ฅผ ์œ„ํ•ด ์ผํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. juypter --path๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ jupyter๊ฐ€ ์ €์žฅ๋œ ๊ฒฝ๋กœ๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
๊ตฌ์„ฑ, ๋ฐ์ดํ„ฐ ๋ฐ ๋Ÿฐํƒ€์ž„๋ณ„๋กœ ๋ถ„๋ฅ˜๋œ ๊ฒฝ๋กœ ๋ชฉ๋ก์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” config ์•„๋ž˜์˜ ๊ฒฝ๋กœ๋กœ cd,
์ด๋ ‡๊ฒŒ ์ƒ๊ฒผ๋‹ค
c:\users\dn.user\appdata\local\programs\python\python37\etc\jupyter
๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์—ฌ๊ธฐ๋กœ ๋ณ€๊ฒฝํ•œ ํ›„
jupyter๋ฅผ ๋‹ค์‹œ ์‹คํ–‰ํ–ˆ๋Š”๋ฐ ์˜ค๋ฅ˜๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๋ˆ„๊ตฐ๊ฐ€๋ฅผ ๋•๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

Windows ์‚ฌ์šฉ์ž๋Š” ์–ด๋–ป์Šต๋‹ˆ๊นŒ??

์–ด์ฉŒ๋ฉด ๋‚ด๊ฐ€ ๋” ์ž˜ ์„ค๋ช…ํ–ˆ์–ด์•ผ ํ–ˆ์–ด. ์ €๋Š” Windows ์‚ฌ์šฉ์ž์ด๋ฉฐ ์ผ๋ฐ˜ ๋ช…๋ น์ค„์„ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.

AWS WorkSpace๋ฅผ ์‚ฌ์šฉ ์ค‘์ด์—ˆ๋Š”๋ฐ AWS ์ž‘์—… ๊ณต๊ฐ„ ๋‚ด๋ถ€ ๊ตฌ์กฐ๋กœ ์ธํ•ด ์ด์ƒํ•œ ํŒŒ์ผ ์œ„์น˜ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค!! ๋‚˜์ค‘์— ์•Œ์•˜๋‹ค!! ๊ทธ๋Ÿฌ๋‚˜ ํŒŒ์ผ ์ƒ์„ฑ ๋ฐ ํŒŒ์ผ ์ €์žฅ์— ๋Œ€ํ•œ "๊ถŒํ•œ ๊ฑฐ๋ถ€" ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ์†”๋ฃจ์…˜๊ณผ ์ƒ๋Œ€ ๊ฒฝ๋กœ๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ!!

Mazior์˜ ๋ฐฉ๋ฒ•์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌ ํ•ด์š”!

(XuuLiu๊ฐ€ 2017๋…„ 4์›” 29์ผ์— ๋…ผํ‰ํ•จ)๊ณผ ๋™์ผ: Ubuntu 18.04 LS,
๋Œ€์‹  jupyter-notebook ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋ฉ๋‹ˆ๋‹ค.

์œ„์˜ ์–ด๋Š ๊ฒƒ๋„ ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ–ˆ์ง€๋งŒ ๋ชจ๋“  ํ•˜์œ„ /.ipynb-checkpoints๋ฅผ ์‚ฌ์šฉ์ž์—๊ฒŒ chownํ•˜๊ณ  ํŠธ๋ฆญ์„ ์ˆ˜ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.

Windows ์‚ฌ์šฉ์ž์˜ ๊ฒฝ์šฐ:

์ƒ์„ฑ ๋ฐ ์ˆ˜์ •ํ•˜๋ ค๋ฉด Anaconda ํ”„๋กฌํ”„ํŠธ ๊ด€๋ฆฌ์ž ๊ถŒํ•œ์œผ๋กœ ์‹คํ–‰์„ ์‹คํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋‚ด ๊ธฐ์–ต์€ ๊ฐ€๋“ ์ฐจ ์žˆ์—ˆ๋‹ค. ๋‚˜๋Š” ๋ฌผ๊ฑด์˜ ์ผ๋ถ€๋ฅผ ์˜ฎ๊ฒผ๊ณ  ์ง€๊ธˆ์€ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

  • ๋ฌธ์ œ๋Š” ์ €์™€ ๋น„์Šทํ•ฉ๋‹ˆ๋‹ค. jupyter notebook ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜์—ฌ ์„œ๋ฒ„๋ฅผ ์‹œ์ž‘ํ•˜๋ฉด ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ubuntu@ip-172-31-48-131:~/ssl$ jupyter notebook
[I 05:32:07.950 NotebookApp] Loading IPython parallel extension
[I 05:32:07.952 NotebookApp] Serving notebooks from local directory: /home/ubuntu/ssl
[I 05:32:07.952 NotebookApp] The Jupyter Notebook is running at:
[I 05:32:07.952 NotebookApp] https://(ip-172-31-48-131 or 127.0.0.1):8888/
[I 05:32:07.952 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
  • ํ•˜์ง€๋งŒ Chrome ๋ธŒ๋ผ์šฐ์ €์—์„œ localhost URL์„ ํ†ตํ•ด ์„œ๋ฒ„์— ์•ก์„ธ์Šคํ•˜๋ฉด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
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 "/usr/local/lib/python3.6/dist-packages/tornado/platform/asyncio.py", line 122, in _handle_events
    handler_func(fileobj, events)
  File "/usr/local/lib/python3.6/dist-packages/tornado/stack_context.py", line 300, in null_wrapper
    return fn(*args, **kwargs)
  File "/usr/local/lib/python3.6/dist-packages/tornado/netutil.py", line 262, in accept_handler
    callback(connection, address)
  File "/usr/local/lib/python3.6/dist-packages/tornado/tcpserver.py", line 263, in _handle_connection
    do_handshake_on_connect=False)
  File "/usr/local/lib/python3.6/dist-packages/tornado/netutil.py", line 565, in ssl_wrap_socket
    context = ssl_options_to_context(ssl_options)
  File "/usr/local/lib/python3.6/dist-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
  • ๋‚ด ์‹œ์Šคํ…œ ์ •๋ณด
Distributor ID: Ubuntu
Description:    Ubuntu 18.04.1 LTS
Release:        18.04
Codename:       bionic
  • ๋‚ด ์†”๋ฃจ์…˜ :. jupyter ๋…ธํŠธ๋ถ ๋ช…๋ น ๋Œ€์‹  sudo๋Š” jupyter ๋…ธํŠธ๋ถ --allow-root ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜์—ฌ์ด (๊ทธ๊ฒƒ์ด ์ž‘๋™ํ•˜๋Š” ์ด์œ ๋Š” ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ, ์ •๋ง ๋‚  ์œ„ํ•ด ์ผํ–ˆ์Šต๋‹ˆ๋‹ค.) ์„œ๋ฒ„๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค
# ubuntu@ip-172-31-48-131:~/ssl$ jupyter notebook
 ubuntu@ip-172-31-48-131:~/ssl$ sudo jupyter notebook --allow-root
์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰