ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Colab] vscode - ssh 연결
    et al 2023. 11. 13. 18:10

    로컬에서 colab의 서버와 연결해서 작업하고 싶다.

    1. drive mount

    from google.colab import drive
    drive.mount('/content/drive')

     

    2. colab-ssh 설치

    !pip install colab-ssh

     

    3. launch_ssh 임포트

    from colab_ssh import launch_ssh

     

    4. ngrok에 로그인

    - ssh를 연결시켜주기 위해 필요한 사이트.

    - 최초 이용시 회원가입해야함.

    아래 사진을 보면, 계정을 연결시키기 위해 필요한 토큰이 있다. 토큰을 복사하자.(2Y73~)

     

    5. 코랩에 토큰을 복사한다.

    NGROK_TOKEN이라는 변수에 토큰을 복사해두고, PASSWORD를 설정해준다.

    # ngrok token을 'NGROK_TOKEN'에 복사한다.
    NGROK_TOKEN = '' # ngrok 토큰
    
    # 아래의 PASSWORD는 ssh 연결 시에 사용될 비밀번호이다.
    PASSWORD = '' # 비밀번호 설정

     

    6. launch_ssh 실행

    launch_ssh(NGROK_TOKEN, PASSWORD)

    warning이 뜨는데,  업데이트하라는 것 같다. 귀찮으므로 패쓰.

    정상적으로 실행되었다면 successfully running이 뜨면서 아래 내용이 출력된다.

    Host google colab ssh

    HostName ~

    User root

    Port ~

     

    여기서 HostName과 Port가 필요하다.

     

    7. vscode 실행, extenstion 설치

    extenstion에서 Remote-SSH를 설치해준다.

     

    8. config 수정

    나중에 다시 접속할 때, 정보가 바뀔 수 있으므로, 수정하는 방법을 알아두자.

    ctrl+shift+P를 눌러서 Remote-SSH까지 검색하면 아래 자동완성들이 뜬다.

    그 중에 Remote-SSH: Add New SSH host를 눌러준다. 그 후에 아래의 command를 입력해준다.

    ssh root@<HostName> -p <PortNumber>

    <HostName>와 <PortNumber>에 코랩에서 출력되었던 HostName과 Port를 각각 넣어주고 enter

    현재 값들과 일치하는지 확인하고 다르다면 현재 값들로 바꿔준다.

     

    9. 비밀번호 입력

    ctrl+shift+P를 눌러서 Remote-SSH까지 검색하면 아래 자동완성들이 뜬다.

    Remote-SSH: Connect to Host 를 눌러주고, 해당 HostName을 눌러주면 진입된다.

    이후 위에서 설정한 비밀번호를 입력해주면 된다.

     

    10. ssh 접속 확인

    terminal에 접속해서, 코랩의 파일 목록을 확인해보자.

    # cd는 chage directory라는 뜻으로, 현재 위치를 변경하는 명령어
    # '..'은 root 위치를 의미.
    cd ..
    # ls는 list로, 파일 목록을 확인하는 명령어
    ls

    ssh가 잘 연결된 것을 알 수 있다.

     

    11. colab drive 파일 위치 변경하는 방법

    추가로 git에서 받은 파일의 위치를 colab 드라이브 내에서 파일 위치를 바꾸는 방법을 알아보자.

     

    참고로, 코랩에서는 리눅스 명령어를 사용하고 싶을 때는 명령어 앞에 '!'를 붙여주면 된다.

    # 원하는 레포지토리 clone
    !git clone https://github.com/victoresque/pytorch-template
    # 현재 디렉토리에서 폴더와 파일을 출력 확인해본다.
    !ls
    # 복사해온 레포지토리 폴더로 현재위치를 변경
    %cd /content/pytorch-template
    # 새로운 폴더로 프로젝트 템플릿을 생성한다.
    !python new_project.py MNIST-example
    
    # 출력: New project initialized at /content/pytorch-template/MNIST-example

    댓글

Designed by Tistory.