本文為博主本人原創,禁止轉載!
網上查了好多教程,自己慢慢折騰慢慢琢磨,終於搞出來如何通過ssh遠程登錄7月VIP的GPU服務器,寫個教程給大家分享一下:
首先,我們要知道,從本地登錄到我們的GPU服務器,需要經過以下兩個步驟:
1.從本地登錄到7月的外部服務器。
2.進入外部服務器之后,通過跳板機進入GPU服務器。
而jupyter的相關套件被安裝在了GPU服務器里,所以我們要通過本地瀏覽器打開GPU服務器里的jupyter,需要走兩個步驟,即先將GPU的jupyter導入到外部服務器的一個端口,再將外部服務器的這個端口與我們的本地端口連同。
一.GPU服務器設置
1.新建一個終端(記作終端1),按照7月提供的教程,通過終端1進入GPU服務器
2.注意,在登錄gpu服務器時,需要讓你輸入gpu服務器的密碼,注意此時會出現一個新的ip地址,顯示如下:
julyedu_*****@**.**.**.**'s password:
即這里的julyedu_*****@**.**.**.**,這個ip即gpu跳板機的ip地址,我們記作ip1
2.直接輸入jupyter notebook,此時會出現如下提示:
[I **:**:**.** NotebookApp] Serving notebooks from local directory: /home/julyedu_****
[I **:**:**.** NotebookApp] 0 active kernels
[I **:**:**.** NotebookApp] The Jupyter Notebook is running at: http://localhost:8888/?token=**********************
這里默認在GPU上打通的localhost為8888,不要把這個窗口關閉,一會兒我們會用到這里的"token=******"這里的字符串
二.外部服務器設置
1.新建一個終端(記作終端2),按照7月提供的教程,只進入外部服務器,不進入GPU服務器(即不輸入“gpu”)
2.直接輸入以下內容:
ssh -4 -N -f -L localhost:8***:localhost:8888 julyedu_*****@**.**.**.**
這里的julyedu_*****@**.**.**.**即我們剛才在終端1中得到的ip1,8***你可以任意輸入,只要這個port沒有被占用,利用8080
3.未提示出錯,繼續保留此窗口,記下你這里定義的8***,記作port1.
三.本地服務器設置
1.新建一個終端(記作終端3),此時我們是要將本地的一個端口與七月外部服務器連通:
2.直接在新終端中如下輸入:
ssh -4 -N -f -L localhost:8###:localhost:8*** julyedu_*****@##.##.##.##
這里的8###又是一個新的localhost,你可以自定,並記作port2,后面的8***即剛才的port1。而后面的ip地址##.##.##.##,則是你登錄七月外部服務器的地址,注意不是GPU跳板機的地址(即不是ip1)
3.未提示出錯,繼續保留該終端
四.本地瀏覽器設置
1.直接在瀏覽器中輸入
localhost:8###
這里的8###即剛才輸入的port2,輸入完畢回車,會提示輸入key或者一個token,這里直接將我們終端1中的token等於后面的一串字符復制,粘貼到框內,接着回車。
2.大功告成:
我們熟悉的那個jupyter notebook界面回來了!