VM12.0安装Ubuntu16.04+anaconda+pycharm+tensowflow

来源:互联网 发布:java时间相减得到小时 编辑:程序博客网 时间:2024/05/16 13:55

VM12.0安装Ubuntu16.04+anaconda+pycharm+tensowflow

为了安装Linux下的TensorFlow,走了很多弯路。之前在VM上安装过32位Ubuntu虚拟机,为了方便就直接在之前的系统中安装了各种软件,结果安装TensorFlow时失败了,才想起来TensorFlow只支持64位系统,需要重新安装一个虚拟机系统,结果重新安装的虚拟机系统只分配了20g的硬盘,分区的时候还出现问题了,/home目录挂载错了,安装完所有的软件后,发现磁盘内存不够,在Ubuntu上运行Pycharm,加载项目特别慢,根本就不能用,又去网上搜虚拟机Ubuntu扩展磁盘的方法,实验之前没有备份,也没有将已经下载好的软件安装包共享到Windows上,最后gg了,一切都要重来,郁闷,特地记录一下!

  • VM安装Ubuntu虚拟机
  • VM安装VMTOOLS设置共享文件夹
  • 安装anaconda
  • 安装pycharm
  • 安装TensorFlow

VM安装Ubuntu虚拟机

网上已经有很多安装教程了,不多说了,就记录一下吧。

准备工作

首先下载Ubuntu镜像文件,这个在网上搜就可以了,由于是很久之前下载的镜像,就不附链接了。下载VMware,直接在官网上下载就可以了。

VM上安装虚拟机

打开VM,在主页中点击创建新的虚拟机

弹出创建虚拟机向导,按照指示一步步来就可以了,一般选择默认就可以了

根据自己的需求选择 创建多大的虚拟机,以前是默认的20g,实际使用的时候,发现20g不够用,所以这次选择了60g。

一直下一步,就创建好了,进入系统,开始安装。
进入系统后,点击下图图标,会弹出安装向导

选择语言 English,也可以选择中文,这里我选的是英文,点击continue
这里写图片描述
勾选第一栏,第二栏,会安装第三方软件
这里写图片描述
这一步是选择分区方式,第一栏是默认选项,会清理磁盘上所有内容,第二栏需要一个安全密钥启动Ubuntu,第三栏启用逻辑分区管理LVM,第四栏就是自己手动分区。前一次选择的是第四栏,自己手动分区,分区效果不理想,最后扩展磁盘的时候就宕机了,扩展磁盘后grub resource还找不到/boot目录,只好重新安装了。这次还是选择自己分区,试验一下。
这里写图片描述
选择自己分区后,需要自己分区,这里参考一篇博文的分区方法。分区设置
首先添加主分区 我分配了10g给主分区
swap交换分区,创建虚拟机时设置的内存大小 2g
boot分区,存放/boot目录
最后的都分配给home分区 /home
最后的分区结果这里写图片描述
最后选择时区,键盘形式。设置用户名称密码等,就安装完成了。
这里写图片描述
这里写图片描述

至此,Ubuntu16.04的安装就完成了

安装VMTOOLS设置共享文件夹

第一步
启动Ubuntu虚拟机,点击VM菜单栏上的虚拟机,点击安装vmware tools
如果弹出框,选择是。
这里写图片描述
发现在拟机设备下多了VMware Tools这一项,点击它,其里面有一VMwareTools…tar.gz文件
这里写图片描述

接下来我们把VMwareTools…tar.gz文件提取到桌面,提取时,需要先打开终端切换到root用户,否则会提示没有权限extract。
快捷键Ctrl+Alt+T,启动终端,然后切换到root用户(切换命令为:sudo su,回车然后会提示你输入当前登录用户的密码,输入成功后即可进入root用户):
这里写图片描述
桌面的上有了一个vmware-tools-distrib文件夹
这里写图片描述

我们以root用户进入到刚刚提取到的vmware-tools-distrib文件夹下,然后输入命令:./vmware-install.pl 回车就开始安装VMware Tools了,根据其提示输入yes/no,直到出现Enjoy, –the VMware team如下图,就表示安装成功了,然后手动重启虚拟机
这里写图片描述

第二步
在虚拟机中选择我们的虚拟机,单击“编辑虚拟机设置”打开虚拟机设置对话框
单击“选项”标签,然后单击“共享文件夹”。
在默认情况下文件夹共享是禁用状态,我们需要先启用,单击“总是启用”。
单击“添加”按钮,在“添加共享文件夹向导”对话框中,直接单击“下一步”。在下面这一步中,选择我们要共享的文件夹,在名称中可以指定一个名字,一般默认即可。
这里写图片描述

第三步

在Ubuntu的mnt/hgfs目录下即可看到设定的共享文件夹

若/mnt/hgfs目录下看不到共享的文件,则执行下列两条命令:
(1)sudo apt-get install open-vm-dkms
(2) sudo mount -t fuse.vmhgfs-fuse .host:/VM_Shared /mnt/hgfs -o allow_other

在Ubuntu虚拟机下安装插件

sudo apt-get install open-vm-dkms 

出现错误信息
这里写图片描述

使用 apt update 时出现错误

Reading package lists... DoneE: Problem executing scripts APT::Update::Post-Invoke-Success'if /usr/bin/test -w /var/cache/app-info -a -e /usr/bin/appstreamcli; then appstreamcli refresh > /dev/null; fi'E: Sub-process returned an error code

解决方法

$ sudo pkill -KILL appstreamcli
$ wget -P /tmp https://launchpad.net/ubuntu/+archive/primary/+files/appstream_0.9.4-1ubuntu1_amd64.deb https://launchpad.net/ubuntu/+archive/primary/+files/libappstream3_0.9.4-1ubuntu1_amd64.deb
$ sudo dpkg -i /tmp/appstream_0.9.4-1ubuntu1_amd64.deb /tmp/libappstream3_0.9.4-1ubuntu1_amd64.deb

安装插件

 sudo apt-get install open-vm-tools

会出现各种选项,选择默认按回车就好

安装anaconda

设置好共享文件夹后,在Windows anaconda官网上下载64位Python3.5版本的anaconda后共享到虚拟机上,虚拟机上安装。
Ubuntu默认安装了Python2.7和Python3.5

安装anaconda
从共享文件夹目录中用bash执行.sh文件

sudo bash /mnt/hgfs/vmsharefolders/Anaconda3-5.0.1-Linux-x86_64.sh

读完license 回答yes后开始安装,等待安装完成
路径添加到path 回答yes
这里写图片描述
安装完成

重新打开终端运行Python,发现已经成功安装
这里写图片描述

安装pycharm

安装PyCharm前,先配置PyCharm的JDK环境
Pycharm需要JDK环境解析,否则在安装过程中报错。

在终端执行命令行

sudo add-apt-repository ppa:webupd8team/javasudo apt-get updatesudo apt-get install oracle-java8-installer

安装过程中会跳出Oracle license对话框,选择yes。
安装完成后,运行”java -version”或者”javac -version”查看是否安装成功。

命令行安装pycharnm

 sudo add-apt-repository ppa:mystic-mirage/pycharm #添加源 #安装专业版  (学生官网认证一年免费试用期)  sudo apt update  sudo apt install pycharm  #安装专业版  sudo apt install pycharm-community

命令行安装方便,但是网速下载非常慢==,按Ctrl+Alt+Z暂停下载。
先在官网下载好安装包,通过共享文件夹到Ubuntu上,然后和安装anaconda类似。
安装pycharm,创建快捷方式。

改变pycharm解释权为anaconda Python解释器
1)打开pycharm, 依次点击 file - > Settings(如果以后想所有项目都用anaconda python解释器就点击Default settings) - >Project: xx - >Project Interpreter
2 ) 点击小齿轮,点击弹出来的add local
3)弹出的地址中选择:/usr/local/anaconda2/bin/python这里,然后选择让这个文件当解释器。
先装anaconda再装pycharm可以直接看到有anaconda的解释器,不用add local。

安装TensorFlow

虚拟机上只安装CPU版的TensorFlow。

用anaconda安装TensorFlow。
首先建立一个TensorFlow的运行环境

conda create -n tensorflow py

首先激活conda环境

source activate tensorflow  
sudo apt install python3-pip #安装pip3pip install tensorflow  #安装TensorFlow

如果上步失败了,

$ sudo pip  install --upgrade TF_PYTHON_URL   # Python 2.7$ sudo pip3 install --upgrade TF_PYTHON_URL   # Python 3.N 

网上有教程不是通过conda安装,安装教程,没有设置运行环境直接安装TensorFlow,Ubuntu默认安装的Python是3.5和2.7版本的,直接安装时,安装的pip对应Python3.5,TensorFlow对应的也是Python3.5,但由于之前安装anaconda,默认的Python是3.6的,导致在3.6 的环境中import tensorFlow时出错,找不到对应的模型,于是又卸载对应3.5版本的pip,此时系统中只有对应3.6 的pip,此时 source activate tensorflow 激活环境,再安装TensorFlow。

卸载TensorFlow

sudo pip uninstall tensorflow 

卸载pip

sudo apt-get remove python-pip

查看pip版本
这里写图片描述

安装TensorFlow

pip install tensorflow 

验证安装是否成功时
发现TensorFlow中有runtime 警告,貌似忽略就可以了
这里写图片描述

验证是否安装成功
终端输入Python进入编辑环境

 import tensorflow as tf hello = tf.constant('hello, tensorflow!') sess = tf.Session() print(sess.run(hello))

输出 ‘hello, tensorflow!’ 视为成功

其他出现的问题

E:Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)

解决方法一:找出并杀掉所有 apt-get 或者 apt 进程

$ ps -A | grep apt  #管道组合来得到含有 apt 或者 apt-get 的进程。
cherry@cherry-virtual-machine:~$  ps -A | grep apt  3951 ?        00:00:00 apt.systemd.dai
$ sudo kill -9 processnumber或者$ sudo kill -SIGKILL processnumber        #杀掉每个进程  这里processnumber为 3951。

解决方法二: 删除锁定的文件
一旦你运行了 apt-get 或者 apt 命令,锁定文件将会创建于 /var/lib/apt/lists/、/var/lib/dpkg/、/var/cache/apt/archives/ 中。

这有助于运行中的 apt-get 或者 apt 进程能够避免被其它需要使用相同文件的用户或者系统进程所打断。当该进程执行完毕后,锁定文件将会删除。

首先运行下面的命令来移除 /var/lib/dpkg/ 文件夹下的锁定文件:

$ sudo rm /var/lib/dpkg/lock

之后强制重新配置软件包:

$ sudo dpkg --configure -a

也可以删除 /var/lib/apt/lists/ 以及缓存文件夹下的锁定文件:

$ sudo rm /var/lib/apt/lists/lock$ sudo rm /var/cache/apt/archives/lock

接下来,更新你的软件包源列表:

$ sudo apt update或者$ sudo apt-get update

pycharm中配置TensorFlow

安装好TensorFlow后,在pycharm中配置设置解释器
add local 里面添加路径
打开终端
激活tensorflow 后查看路径再添加到解释器即可

$source activate tensorflow$which python

这里写图片描述

tensorflow中使用jieba,安装方式

pip install jieba