在阿里云上搭建爬取某信的公众号文章的程序时,发现需要验证码验证,技穷之后考虑做一个验证码识别程序,所以开始在服务器上搭建机器学习平台,
背景,服务器上已经有其他应用在跑着了,所以不想停服,
初始环境:
centos7
gcc
Python2.7

目标环境:

Python3.6

TensorFlow 1.8

(因为可能存在系统问题,所以建议先根据后面的排错查看gcc版本以及其他信息,)

找了找其他人的经验,觉得可以参考这篇的方法,https://www.jianshu.com/p/98f8b55a4191

1、Python3.6
安装Python3.6,这个是之前装好的,没有用anaconda,就是原始安装的,
2、TensorFlow
按照教程的方法,pip安装TensorFlow 1.8之后测试时,发现报错:
/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found
Failed to load the native TensorFlow runtime。
这里是gcc的问题了,开始找办法,
首先排查一下这里(https://www.jianshu.com/p/4115338fba2d)提到的问题有没有出现,
之后再看,一般出现这个问题时是系统安装了高版本gcc之后没有重新配置系统的超链接指向新的gcc程序,这个问题一查都是全系统搜索找到新的gcc的库位置,重建软连接就行了,一般都这样处理:https://blog.csdn.net/libaineu2004/article/details/77100132
但是我这就特殊了,系统中没有更高版本了,find / -name libstdc++.so.6*之后最高就是3.4.19,没有20,那只好升级呗,
结果:yum provides libstdc++.so.6
之后,查到的跟人家的不一样:
一般的,

Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: centos.ustc.edu.cn
* extras: centos.ustc.edu.cn
* updates: centos.ustc.edu.cn libstdc++-4.8.-.el7.i686 : GNU Standard C++ Library
Repo : base
Matched from:
Provides : libstdc++.so.

我的:

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: centos.ustc.edu.cn
* extras: centos.ustc.edu.cn
* updates: centos.ustc.edu.cn libstdc++-4.8.5-11.el7.i686 : GNU Standard C++ Library
Repo : base
Matched from:
Provides : libstdc++.so.6 libstdc++-4.8.5-28.el7_5.1.i686 : GNU Standard C++ Library
Repo : @update
Matched from:
Provides : libstdc++.so.6 libstdc++-4.8.5-28.el7_5.1.i686 : GNU Standard C++ Library
Repo : @updates
Matched from:
Provides : libstdc++.so.6

本来想找个什么办法直接升级到下一版本,但是没找到,怎么升级都报:
Package libstdc++-4.8.5-28.el7_5.1.i686 already installed and latest version
只好手动编译安装更高版本gcc,具体方法看这里:
https://blog.csdn.net/leiting_imecas/article/details/60813164
直接升级到libstdc++.so.6.0.21,升级完就好了,
中途貌似会有个报错,

make[]: *** [build/genmddeps] Error
make[]: Leaving directory `/opt/mylinux/build/gcc-build/gcc'
make[]: *** [all-stage1-gcc] Error
make[]: Leaving directory `/opt/mylinux/build/gcc-build'
make[]: *** [stage1-bubble] Error
make[]: Leaving directory `/opt/mylinux/build/gcc-build'
...

这时需要升级一下g++,https://www.cnblogs.com/Anker/p/3203402.html

**编译过程非常耗时,我当时CPU100%跑了接近两小时,这样就会挤掉系统中正在跑的其他程序,如果你还部署了其他应用建议再检查下他们是否都还能正常服务,**
之后再Python import tensorflow时就正常了,

3、jupyter,具体方案在这里:https://blog.csdn.net/ys676623/article/details/77848427
这个教程中修改完服务器端的jupyter的配置文件,配置文件中填写的密码应该是ipython给出的那个全部字符串,改完后是这样的:
c.NotebookApp.password = u'sha1:XXXXXX'
修改完服务器端的jupyter的配置文件后应该启动jupyter:
jupyter notebook --ip=0.0.0.0 --no-browser --allow-root
此时就已经可以正常在本地使用阿里云上的jupyter了,

就这样了,有其他问题欢迎留言讨论,

参考材料:https://www.cnblogs.com/faramita2016/p/7512471.html

阿里云服务器端配置TensorFlow & jupyter的更多相关文章

  1. Chromebook 阿里云ECS 配置 jupyter Notebook

    前言 新购入一台Chromebook Pixel ,为方便机器学习编程,用学生版的阿里云ECS搭建了jupyter Notebook 为减少下次踩坑,参考链接记录如下: 参考链接 阿里云使用笔记(一) ...

  2. 阿里云Maven配置,Maven仓库配置,Maven镜像配置

    阿里云Maven配置,Maven仓库配置,Maven镜像配置 ======================== 蕃薯耀 2018年1月29日 http://www.cnblogs.com/fanshu ...

  3. 阿里云linux配置ftp服务

    阿里云linux配置ftp服务 一.ftp服务安装 运行以下命令安装ftp yum install -y vsftpd 运行以下命令打开及查看etc/vsftpd cd /etc/vsftpd ls ...

  4. 阿里云服务器 配置 tomcat 发布spring boot项目 的具体操作 【使用公网ip】

    1.前言 spring boot 转成war包 后用tomcat发布的具体操作在我另一篇随笔有详细记载,不论是window系统还是Linux系统,tomcat的发布配置都是一样的,所以这里不具体讲这个 ...

  5. 阿里云Centos配置iptables防火墙

    虽说阿里云推出了云盾服务,但是自己再加一层防火墙总归是更安全些,下面是我在阿里云vps上配置防火墙的过程,目前只配置INPUT.OUTPUT和FORWORD都是ACCEPT的规则 一.检查iptabl ...

  6. 阿里云CentOS配置iptables防火墙[转]

    虽说阿里云推出了云盾服务,但是自己再加一层防火墙总归是更安全些,下面是我在阿里云vps上配置防火墙的过程,目前只配置INPUT.OUTPUT和FORWORD都是ACCEPT的规则 一.检查iptabl ...

  7. 阿里云安装配置mysql(centos版)

    这种是利用yum下载的也可以使用xftp上传 1,安装mysql数据库 a)下载mysql源安装包:wget http://dev.mysql.com/get/mysql57-community-re ...

  8. 阿里云yum配置

    CentOS 安装源列表见 CentOS Mirror List.本文使用阿里云安装源安装官方源和扩展源.其他安装源也可以参考. 依次执行命令. #使用 yum-config-manager 软件包命 ...

  9. Maven中阿里云私服配置

    在国内maven仓库连接速度太慢 ,虽然对于很多互联网企业和大中型软件公司,建个镜像是分分钟的事.但对于个人开发者确实是个问题.解决办法可以用阿里云的MAVEN私服.有两种方法: 1.在$MAVEN_ ...

随机推荐

  1. 利用ESLINT进行js 语法检查,以及局部安装时遇到的一些坑

    1)安装ESlint,这里我说一下全局安装,一会我会说我为什么不局部安装. npm install eslint -g 2)创建一个你的项目文件夹,随便起个名字吧,并初始化 cd myapp npm ...

  2. 如果固定电脑ip地址

    打开网络和共享中心 点击详细信息,即可看到IP地址.子网掩码.默认网关.DNS服务器信息 点击本WLAN状态->属性 找到Internet 协议版本 4(TCP/IPv4) 用鼠标左键单击两下 ...

  3. windows上编译zlib-1.2.8

    MSVC编译 使用VS(x86)命令行工具进入到zlib根目录,执行 nmake -f win32/Makefile.msc ,在根目录下生成:zlib.lib(静态库)  zdll.lib(动态库的 ...

  4. OpenStack VS Kubernetes,谁是你心中的王者?

      当下云计算的领域里热度最高的两个项目,无疑是OpenStack和Kubernetes.如果云计算是一个风起云涌的江湖,毫不夸张的说OpenStack和Kubernetes就是江湖里的泰山北斗.Op ...

  5. [物理学与PDEs]第4章第3节 一维反应流体力学方程组 3.2 一维反应流体力学方程组的 Lagrange 形式

    1.  一维粘性热传导反应流体力学方程组的 Lagrange 形式 $$\beex \bea \cfrac{\p \tau}{\p t'}-\cfrac{\p u}{\p m}&=0,\\ \ ...

  6. XSS攻击常识及常见的XSS攻击脚本汇总

    一.什么是XSS? XSS全称是Cross Site Scripting即跨站脚本,当目标网站目标用户浏览器渲染HTML文档的过程中,出现了不被预期的脚本指令并执行时,XSS就发生了. 这里我们主要注 ...

  7. nnet3bin/nnet3-xvector-compute.cc

    将特征在xvector神经网络模型中前向传播,并写出输出向量.我们将说话人识别的特定神经网络结构的输出向量或embedding称之为"Xvector".该网络结构包括:帧级别的多个 ...

  8. 【Java】Java随手记

    System.out.printf() : System.out.printf("%d",x);               输出整数 System.out.printf(&quo ...

  9. Python3 字符串与hex之间的相互转换

    在字符串转换上,python2和python3是不同的,在查看一些python2的脚本时候,总是遇到字符串与hex之间之间的转换出现问题,记录一下解决方法. 1. 在Python2.7.x上,hex字 ...

  10. Django跨域请求

    一.jsonp方式 同源策略会阻止ajaxa请求,但不阻止src. jsonp方式其实是利用了<script>标签可以直接跨域的性质,在body中生成一个<script>标签, ...