初窥服务器
在两周前,我对服务器是一脸懵逼的,服务器具体是啥?我做深度学习为啥要用服务器?我该怎么入手?
经过我的不断试错,我终于发现了服务器原来就是可以作为云端的一个东西啊,或者说服务器就是可以联网的一个主机,里面的操作系统是Linux,我们可以在上面做很多事情,可以通过超级管理员给我们分配的账号,以及赋予我们的权限,登录Linux系统,在上面利用服务器的一些配置或者资源做一些事情
登陆方式:
Windows的登录方式有很多,可以使用本地ssh登录啊,也可以使用xshell登录啊,好像还可以使用git啥的
我的最原始的登录方式:
打开cmd:
ssh(安全终端)的默认端口号是22,所以这里当然也可以详细写一下:
ssh -p 22 Jiang_3@10.108.13.105
这样的方式当然也是可以的
提一下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="/ H O M E / a n a c o n d a 3 / b i n : 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
到这里我们的安装差不多就已经足够了,至于其他的操作则是根据实际情况来看了。
后台运行
当我们需要将程序放在后台执行时(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 屏幕号