본문 바로가기

개발 일지, etc/Linux

[Ubuntu(Linux)] 리눅스 서버 구축 1. 가상환경 및 주피터 노트북 세팅

+ 20240821

tensorflow-gpu는 tf의 버전이 1.15를 초과할 경우 따로 설치하지 않아도 됩니다.

 

Reference에서 확인할 수 있듯이, 이미 서버 구축 방법 및 CUDA 세팅 방법에 관한 설명이 되어 있으나, 현재와 달라진 커맨드가 존재하여 수정된 내용을 정리합니다.

1. Anaconda 설치

wget https://repo.anaconda.com/archive/Anaconda3-2024.02-Linux-x86_64.sh
bash Anaconda3-2024.02-Linux-x86_64.sh
#약관 끝까지 내리고 yes 입력

source ~/.bashrc

#conda 커맨드를 사용할 수 없다고 나올 경우
vi ~/.bashrc
#https://sacko.tistory.com/29 vi 사용법 숙지 후 아래 줄 추가
export PATH="/home/{username}/anaconda3/bin:$PATH"
#:wq 눌러 저장하고 source ~/.bashrc

conda init
source ~/.bashrc
#위 코드 입력 후 이름 옆에 (base) 뜨는지 확인

2. 가상환경 생성 및 활성화

conda create -n {가상환경_이름} python={버전}

conda env list
conda activate {가상환경_이름}

conda install tensorflow
# conda install tensorflow-gpu
conda install pytorch
conda install simplejson
conda install jupyter notebook

3. 주피터 노트북 설정

# (base) 환경에서 진행
pip install jupyter notebook
jupyter-notebook --generate-config

ipython

In[1]: from jupyter_server.auth import passwd
In[2]: passwd()
# 비밀번호 생성 후 암호화된 비밀번호 복사
In[3]: exit()

mkdir Analysis
cd Analysis
# 아래 현 주소 복사해두기
pwd

cd ~/.jupyter
#vi로 주피터 노트북 설정 파일 실행
vi jupyter_notebook_config.py
c = get_config()
c.JupyterApp.config_file_name = 'jupyter_notebook_config.py'

# esc, enter 누르고 / 입력한 뒤 키워드 검색하면서 주석 지워 입력하기
# 접속 허용 ip 
c.ServerApp.allow_origin = '*'

# 서버 ip(내 컴퓨터 사설 ip 주소 입력)
c.ServerApp.ip = '사설 ip 주소'

# 주피터 노트북 실행 시 url 출력
c.ServerApp.open_browser = False

# 주피터 노트북 비밀번호
c.ServerApp.password = u'암호화된 비밀번호 붙여넣기'

# 주피터 노트북 포트 설정(꼭 8888 아니어도 괜찮음)
c.ServerApp.port = 8888

# 주피터 노트북 홈 디렉토리 설정
c.ServerApp.notebook_dir = 'pwd 주소 붙여넣기'

# 이후 esc, enter 누르고 :wq 입력한 뒤 enter 눌러 저장하고 나오기
# 가상환경 활성화
conda activate {가상환경}

# 가상환경 커널 추가
python -m ipykernel install --user --name={가상환경} --display-name="{가상환경_커널}"

# (base)로 환경 변경
conda activate base

# 주피터 노트북 실행
jupyter notebook

#cf
# 적용된 가상환경 커널 목록
jupyter kernelspec list

# 적용된 가상환경 커널 적용 해제
jupyter kernelspec uninstall 가상환경_이름

# 가상환경 삭제
conda env remove -n 가상환경_이름

4. tensorflow 에러 해결

4-1. AttributeError: module 'numpy' has no attribute 'object'

에러 코드에 존재하는 파일의 np.object를 np.object_로, np.bool을 np.bool_로 수정해서 저장하면 해결된다.

 

4-2. AttributeError: module 'numpy' has no attribute 'int'.

에러 코드에 존재하는 파일의 np.int를 int로 수정해서 저장하면 해결된다.

 

4-3. AttributeError: module 'numpy' has no attribute 'typeDict'

다음 코드를 실행시키고, 나머지 버전 폴더를 삭제한다.

conda install numpy==1.23.5

 

4-4. FileNotFoundError: [Errno 2] No such file or directory: '/home/chanyong/anaconda3/envs/New_Env/lib/python3.8/site-packages/numpy-1.23.5.dist-info/METADATA'

해당 폴더를 삭제하면 해결된다.

5. torch 에러 NameError: name '_C' is not defined

다음 코드를 터미널에 실행시킨다.

conda install Cython

 

새 디렉토리 만들어서 다시 import torch 한 결과 오류가 뜨지 않았다.

 

6. 백그라운드에서 주피터 노트북 실행시키기

# ssh에서 주피터 노트북 실행
jupyter notebook
#jupyter lab
# ctrl + z 눌러서 stop
bg
disown -h
jobs

 

Reference :

https://coding-yoon.tistory.com/152

 

주피터 노트북 개인 딥러닝 서버 만들기 ! (1) with Window10, Pytorch

이번에 컴퓨터를 맞추면서 그래픽카드 RTX 2060 super를 구매했습니다. 저만의 딥러닝 서버를 만들어 놓으면 어디서든 야외에서 노트북으로 가볍게 작업할 수 있습니다. ( 얼마나 작업을 할지 모르

coding-yoon.tistory.com

https://gooopy.tistory.com/132

 

Python 리눅스 서버에 분석 환경 구축3 - 가상환경 활성화와 주피터 노트북

리눅스 서버에 가상 환경 활성화와 주피터 노트북 세팅 지금까지 파이썬 기반 오프라인 분석 서버 구축을 위한 밑 작업을 해보았다. 이번 포스트에서는 오프라인 우분투 환경에 에 이전에 만들

gooopy.tistory.com

https://jongsky.tistory.com/65

 

jupyter notebook 서버설정, 원격접속 설정(feat. ubuntu 22.04)

1. 글을 작성하게 된 계기 jupyter notebook을 통해 서버에 접속해서 코딩을 하는 경우가 많다. (리소스 자원 또는 공간의 제약을 이겨내기 위해) 그래서 이번에는 새로운 환경에서 jupyter ntoebook을 서

jongsky.tistory.com

https://sacko.tistory.com/29

 

Linux 다뤄보는 문과생 (5) - vi, 리눅스로 문서 편집

사실 리눅스를 사용하면서 제일 불편했던 것이 vi 편집기였다. 외부에서 원격으로 접속했을 때 문서편집을 해야 했을 때는 vi나 vim으로 들어가 문서를 편집하였는데 내가 무슨 실수를 했는지 알

sacko.tistory.com

https://stackoverflow.com/questions/76943786/modulenotfounderror-no-module-named-notebook-auth

 

ModuleNotFoundError: No module named 'notebook.auth'

I am setting up Jupyter notebook environment from remote server. When I import notebook.auth it report error like this : >>> from notebook.auth import passwd Traceback (most recent call la...

stackoverflow.com

https://mingyu6952.tistory.com/entry/Anaconda-conda-install-%EA%B3%BC-pip-install%EC%9D%98-%EC%B0%A8%EC%9D%B4%EC%A0%90

 

[Anaconda] conda install, pip install 차이

pip install과 conda install을 혼용하면, 버전 차이로 인한 dependancy error가 생길 수 있다. 따라서 개념을 명확히 하고 error를 예방하고자 한다. pip? conda? pip : python의 정식 지원을 받는 패키지만을 관리하

mingyu6952.tistory.com

https://stackoverflow.com/questions/75353067/attributeerror-module-numpy-has-no-attribute-object

 

AttributeError: module 'numpy' has no attribute 'object'

AttributeError: module 'numpy' has no attribute 'object' enter image description here I tried reinstall numpy, and importing numpy with path

stackoverflow.com

https://beausty23.tistory.com/238

 

[에러 해결] NameError: name '_C' is not defined

"NameError: name '_C' is not defined" Jupyter Notebook를 사용 중에, Anaconda prompt를 통해 새로운 라이브러리를 설치한 후 설치한 라이브러리를 사용하려 import하려 하니 위 에러가 발생했다. 보통의 경우 jupyter

beausty23.tistory.com

https://glanceyes.com/entry/%EC%9B%90%EA%B2%A9-%EC%84%9C%EB%B2%84%EC%97%90%EC%84%9C-Jupyter-Notebook-%EB%98%90%EB%8A%94-Jupyter-Lab%EC%9D%84-%EC%8B%A4%ED%96%89%ED%95%98%EC%97%AC-%EC%A0%91%EC%86%8D%ED%95%98%EA%B8%B0

 

원격 서버에서 Jupyter Notebook 또는 Jupyter Lab을 실행하여 접속하기

자신에게 할당받거나 또는 자신이 운영 중인 서버가 있는데, 이를 원격으로 접속하여 jupyter 환경을 이용하고 싶을 때 유용할 수 있다. 인터넷 환경이 갖춰진 곳에서 웹 브라우저만 있어도 본인

glanceyes.com