因為機器學習而對伺服器的一些常用操作
初窺伺服器
在兩週前,我對伺服器是一臉懵逼的,伺服器具體是啥?我做深度學習為啥要用伺服器?我該怎麼入手?
經過我的不斷試錯,我終於發現了伺服器原來就是可以作為雲端的一個東西啊,或者說伺服器就是可以聯網的一個主機,裡面的作業系統是Linux,我們可以在上面做很多事情,可以通過超級管理員給我們分配的賬號,以及賦予我們的許可權,登入Linux系統,在上面利用伺服器的一些配置或者資源做一些事情
登陸方式:
Windows的登入方式有很多,可以使用本地ssh登入啊,也可以使用xshell登入啊,好像還可以使用git啥的
我的最原始的登入方式:
開啟cmd:
ssh(安全終端)的預設埠號是22,所以這裡當然也可以詳細寫一下:
這樣的方式當然也是可以的
提一下ssh:
Secure Shell(安全外殼協議,簡稱ssh),一種加密的網路傳輸協議。可在不安全的網路中為網路服務提供安全的傳輸環境。SSH通過在網路中建立安全隧道來實現SSH客戶端與伺服器之間的連線。雖然任何網路服務都可以通過SSH實現安全傳輸,SSH最常見的用途是遠端登入系統,人們通常利用SSH來傳輸命令列介面和遠端執行命令。
登入伺服器以後
還記得我當時初次登入伺服器後,完全一臉懵逼,完全不知道這個東西是什麼,該怎麼去用,有什麼用,所以懵逼了還是有好一會兒啊
那麼登入了上去之後的正確開啟方式是什麼呢?
登入進去伺服器後我們一般是位於我們的使用者介面的,也就是home資料夾下面的使用者裡你的賬戶(Jiang_3)裡,完了你會發現這就是一個Linux的作業系統,那麼作為機器學習的小白,拿到伺服器的第一件事情是啥?那當然是裝庫啊,跑演算法啊。
怎麼裝庫?
當登入上伺服器以後我們可以現在自己的賬號裡隨便玩玩兒,先裝一個anaconda吧,(anaconda好啊,好在哪裡?我現在還是python小白,好在哪裡我也說不上來,反正大家都說好那就是好吧),那麼怎麼裝這個anaconda?
安裝軟體自然是看各家作業系統的命令了,比如Ubuntu的安裝就是
下載安裝完成後配置路徑:
export PATH="/PATH"
- 請記住這個命令,大概是因為我的賬戶是使用者許可權,所以每次上線都要再次配置路徑,才可以使用anconda
anaconda中集成了conda,conda這個將所有檔案全部看作包的管理模式是真的很強。
檢視是否是最新版:
conda update conda
conda怎麼用?
conda作為我們建立各個python版本的環境必不可少的東西,常用操作有:
- 建立一個conda環境:
conda create --name 環境名 python=版本號
- 檢視環境列表:
conda info --envs
- 啟用某個環境:
source activate 環境名
- 關閉環境:
source deactivate
更新pip:
pip install --upgrade pip
安裝tensorflow:
pip install tensorflow
到這裡我們的安裝差不多就已經足夠了,至於其他的操作則是根據實際情況來看了。
後臺執行
- 將程式脫離當前面介面執行
主要涉及到的有nohup命令以及setsid命令以及在命令末尾加上&等,用於將我們當前的程式程序保持執行
但是這種涉及到的是我們退出登入的時候,就會自動的關閉服務,這要是碰上斷網,或者關機重啟,可能幾天幾夜的執行就一下子暫停了
- 將程式放在伺服器上
這是我認為最好的一種方法,可以保持當我們退出伺服器的時候仍然還是在後臺執行,當我們是使用的時候只需要再次連線就可以
#####怎麼使用呢?
- 首先安裝screen,當然你可以先驗證一下你有沒有安裝:
驗證是否有安裝:
screen
Ubuntu安裝:
apt-get install screen
- screen的常用命令:
screen -list //顯示有哪些後臺(或者screen -ls)
screen -dmS 名字 //用來定義一個不會因為退出登入而停止的後臺
當我們想退出當前螢幕:
Ctrl+a d
- 重新連線會話:
screen -r 螢幕號