debian配置CUDA7.5及其吐槽

来源:互联网 发布:手机一键还原软件 编辑:程序博客网 时间:2024/05/22 22:24

老板让我在服务器上配个CUDA7.5开发环境,正在写毕业论文的我一开始真的是强烈拒绝的,结果可想而知,还是接了任务。从中午开始到晚上,经历了从地上到地狱再到半空的赶脚。

说说具体情况。一台服务器可以连接外网,另外两台没有外网ip,只有内网可以访问,服务器都是debian系统。

首先要让内网服务器可以访问外网,并且能够让apt更新源。于是各种折腾,用动态代理来解决内网访问外网的问题。在具有外网ip的服务器上配置动态代理,这里用的是TinyProxy。然后需要在只能访问内网的服务器上配置环境变量export http_proxy=http://username:password@proxyserver:port。如果代理服务器没有密码,username和password以及@可以省略。开始的时候将这句环境变量放到/etc/profile文件中,坑爹的事发生了,source了一下,然后重启网络连不上服务器了(哭)。找老师开了四层机房的门,进去连上CRT显示器,把/etc/profile中的http_proxy 这句注释掉,重启网络才连通了内网。吓得我都不敢再往这个文件里写任何东西,还是乖乖的在命令行黑窗窗里敲这条命令吧。好不容易连上了,也让准备放假封门的同学久等了(实在对不住了),我就赶紧跑上实验室去了。不敢再用服务器折腾,再连不上网我可就惨了,还是用自己的电脑实验,按部就班设置好代理,wget试了试百度(测网速的网站^__^),看到连到了代理服务器,终于可以上外网了。

乌云终于散开了点,开始装CUDA7.5,进到CUDA官网开始下载,
https://developer.nvidia.com/cuda-downloads/。没有debian系统选个ubuntu14.04,Installer Type选deb(local),服务器上下载速度杠杠的。然后按照下面的方法装到第二步更新源的时候,发现update卡住了,猜想可能没有连到代理服务器上,去代理服务器上查看日志/tmp/tinyproxy.log最后几行果然没有更新,apt就没有使用代理。啊,肿么办肿么办,一通乱查,各种实验终于解决了。建立/etc/apt/apt.conf文件,里面添加 Acquire::http::Proxy “http://proxyserver:port“; 期间被坑了一次。代理地址一定要打双引号,最后的分号也需要。。如果还需要https、ftp代理,只需要替换http就ok。怀着忐忑的新型,update源试试,成功了,小激动。

铺垫终于做好了,终于开始主题了,还是像上面一样,安装CUDA的第三步的时候sudo apt-get install cuda,提示缺少各种依赖,于是我就一层一层的去找,人工递归的感觉真不爽。装了几个,有的包还装不了,崩溃掉,最终放弃治疗了。最后用sudo apt-get -f install修复了一下依赖项,不过还是不行,但是正常安装还是需要哦。 开始网上找新的方法,期间老板给我发了一份CUDA的英文安装手册,满满的英文,长长的步骤,还是驱动的安装,都快疯了,我的毕业论文、毕业论文、毕业论文( ▼-▼ )。开始想着要不明天去给服务器装个Ubuntu得了,但是想想好不容易配的hadoop集群,还是不忍心。开始继续寻找方法,终于找到了救命的方法,感谢这位大哥无私的奉献:http://www.myexception.cn/cuda/2017261.html。
还是自己总结一下吧,以备后用:
1. 还是进入到CUDA下载页面,Installer Type选择runfile(local),不要选择deb包,下载CUDA ToolKit。
2. 下载GPU Development Kit。
3. 安装CUDA需要的库 sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev
4. 安装Development Kit:sudo ./cuda_352_39_gdk_linux .run
5. 安装CUDA:sudo ./cuda_7.5.18_linux.run,安装过程直接根据提示进行下去即可
6. 配置环境变量:
export PATH=/usr/local/cuda-7.5/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-7.5b64:$LD_LIBRARY_PATH
可以写入到.bashrc文件中也可写到/etc/profile中,以便所有人可以使用。
7. 验证nvcc -V

看到验证成功的时候真是太激动了,差点就要放弃了,还好坚持了下来。最后还装了一个mono,它可以在linux上运行C#代码。

一天就这样结束了,回来吐吐槽记录记录,明天继续写论文,fighting。

0 0
原创粉丝点击