初窺服務器
在兩週前,我對服務器是一臉懵逼的,服務器具體是啥?我做深度學習爲啥要用服務器?我該怎麼入手?
經過我的不斷試錯,我終於發現了服務器原來就是可以作爲雲端的一個東西啊,或者說服務器就是可以聯網的一個主機,裏面的操作系統是Linux,我們可以在上面做很多事情,可以通過超級管理員給我們分配的賬號,以及賦予我們的權限,登錄Linux系統,在上面利用服務器的一些配置或者資源做一些事情
登陸方式:
Windows的登錄方式有很多,可以使用本地ssh登錄啊,也可以使用xshell登錄啊,好像還可以使用git啥的
我的最原始的登錄方式:
打開cmd:
ssh(安全終端)的默認端口號是22,所以這裏當然也可以詳細寫一下:
ssh -p 22 [email protected]
這樣的方式當然也是可以的
提一下ssh:
Secure Shell(安全外殼協議,簡稱ssh),一種加密的網絡傳輸協議。可在不安全的網絡中爲網絡服務提供安全的傳輸環境。SSH通過在網絡中創建安全隧道來實現SSH客戶端與服務器之間的連接。雖然任何網絡服務都可以通過SSH實現安全傳輸,SSH最常見的用途是遠程登錄系統,人們通常利用SSH來傳輸命令行界面和遠程執行命令。
登錄服務器以後
還記得我當時初次登錄服務器後,完全一臉懵逼,完全不知道這個東西是什麼,該怎麼去用,有什麼用,所以懵逼了還是有好一會兒啊
那麼登錄了上去之後的正確打開方式是什麼呢?
登錄進去服務器後我們一般是位於我們的用戶界面的,也就是home文件夾下面的用戶裏你的賬戶(Jiang_3)裏,完了你會發現這就是一個Linux的操作系統,那麼作爲機器學習的小白,拿到服務器的第一件事情是啥?那當然是裝庫啊,跑算法啊。
怎麼裝庫?
當登錄上服務器以後我們可以現在自己的賬號裏隨便玩玩兒,先裝一個anaconda吧,(anaconda好啊,好在哪裏?我現在還是python小白,好在哪裏我也說不上來,反正大家都說好那就是好吧),那麼怎麼裝這個anaconda?
安裝軟件自然是看各家操作系統的命令了,比如Ubuntu的安裝就是
wget https://repo.anaconda.com/archive/Anaconda3-5.3.0-Linux-x84_64.sh
下載安裝完成後配置路徑:
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
到這裏我們的安裝差不多就已經足夠了,至於其他的操作則是根據實際情況來看了。
後臺運行
當我們需要將程序放在後臺執行時(https://www.ibm.com/developerworks/cn/linux/l-cn-nohup/index.html) 分爲兩種:
- 將程序脫離當前面界面執行
主要涉及到的有nohup命令以及setsid命令以及在命令末尾加上&等,用於將我們當前的程序進程保持執行
但是這種涉及到的是我們退出登錄的時候,就會自動的關閉服務,這要是碰上斷網,或者關機重啓,可能幾天幾夜的運行就一下子暫停了
- 將程序放在服務器上
這是我認爲最好的一種方法,可以保持當我們退出服務器的時候仍然還是在後臺執行,當我們是使用的時候只需要再次連接就可以
#####怎麼使用呢?
- 首先安裝screen,當然你可以先驗證一下你有沒有安裝:
驗證是否有安裝:
screen
Ubuntu安裝:
apt-get install screen
- screen的常用命令:
screen -list //顯示有哪些後臺(或者screen -ls)
screen -dmS 名字 //用來定義一個不會因爲退出登錄而停止的後臺
當我們想退出當前屏幕:
Ctrl+a d
- 重新連接會話:
screen -r 屏幕號