1. 程式人生 > >因為機器學習而對伺服器的一些常用操作

因為機器學習而對伺服器的一些常用操作

初窺伺服器

在兩週前,我對伺服器是一臉懵逼的,伺服器具體是啥?我做深度學習為啥要用伺服器?我該怎麼入手?

       經過我的不斷試錯,我終於發現了伺服器原來就是可以作為雲端的一個東西啊,或者說伺服器就是可以聯網的一個主機,裡面的作業系統是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="/HOME/anaconda3/bin:HOME/anaconda3/bin: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 螢幕號