Embrace the Eternity——OpenSuse折腾记

为什么要折腾

相信童鞋们日常使用的系统大部分都是Windows

少数土豪又优雅的童鞋用的是介个(土豪走开(╯‵′)╯炸弹!•••*~)

题主我之前是用Windows的

RGB!

但是当我想要做一个爬虫时:

发生了这样的错误:

我自然就想到了Windows的编码默认是GBK的,而现在通用的都是UTF-8的编码,不能忍啊!

看来Windows是用不下去了,这里的空气都是酸的,是时候去南极呼吸一下新鲜空气了。

没错就是这只企鹅,Linux发行版大多是开源的,所以这是免费的系统,用户无需付费。

而Linux的桌面发行版太多了

有deb系:Debian,Ubuntu等

有rpm系:Redhat(付费操作系统),centos(多用于的服务器),fedora等

之前我也用过Ubuntu,这几乎是大家入门Linux的首选,不为别的,就为Ubuntu库里茫茫多的软件,和网上多如牛毛的教程(苏大VPN也只测试Ubuntu下的deb这样真的好吗! )相比之下其他发行版简直就是暗淡无光

但deb系好用的apt管理工具在我的手下一直出现问题,安装依赖太过于随便,以至于写在某个软件后安装其他软件的时候会出现以来无法安装从而一脸懵逼不知所措的情形

所以我选择Yast管理工具,来自OpenSuse

(就是这只蜥蜴)

它来自SuSE Enterprise的开源部分,以求稳著称并且有相当漂亮的KDE Plasma 5 桌面

下面就讲给大家讲述我5天6次重装的血的教训

(为保证截图质量,部分图片可能来自虚拟机安装截图)

安装目标:

安装anaconda3,nvidia闭源驱动,Cuda套件以及Tensorflow

准备工作

首先你要有一块空闲的磁盘空间,可以在你现有硬盘上划分一块出来,或者给他一个独立的驱动器(强烈建议使用SSD,请不要再希捷SSHD上安装系统,实在是慢,sshd的特性用来安装系统性价比太低,还不如7200rpm的硬盘,这是我试水的经验,仅供参考)

安装系统方法比较多。我采用U盘安装。

首先把ISO文件下载下来:

https://software.opensuse.org/distributions/leap

(建议普通用户选择Leap,滚动发行版太激进)

然后用UltraISO写入硬盘镜像到U盘

安装工具准备妥当

开始安装

在开始安装前建议进入BIOS查看设置(最好把Secure Boot关闭方便后期安装一些驱动时少一些麻烦)

并将U盘选择为第一启动序列

然后我们开搞

选择Installation

此处建议选择English,如果此时选择简体中文的话会导致生成的用户文件夹时中文的,这会让Shell命令非常痛苦,所以我们选择后期更改界面语言

接着我们到了关键的磁盘分区部分:

选择Edit Proposal Settings

我使用如下设置:

Snapshots可以快速恢复系统,很是贴心(真的贴心啊,我一开始选择XFS,结果驱动崩了都没法救)

至于具体的分区方案,可以在Expert Partitioner里面调整,这里各取所需,我认为/home选择XFS,并给opensuse单独开一个efi分区,避免和windows共用一个,以保证安全。除了/home其他都直接交给根目录就好,不必操心。(折腾分区表就耗费了我好几次尝试,并且sshd反应贼慢,天灭希捷)

然后下一步的时区设置可以自由更改,我改到了上海,其他不动。NTP时间同步服务器可以连一下,如果第一个服务器地址不行就换第二个,我就是第一个死活连不上。

Next

我们选择KDE

然后下一步

打开SSH的两个相关项,方便以后使用

点击Install就是安装了(其实我建议在安装时断网进行,否则安装时要联络OpwnSuse的官方源,速度十分缓慢并且偶尔会连不上,导致安装过程假死,过好久才会出现连接超时的提示选项,十分烦人)

之后是漫长的读条

安装完成后系统会自行重启

然后就可以登录桌面了

嗯,黑暗中的一点绿(好像没什么不对XD)

(特别提醒:建议您使用有线网络。

如果您的无线网卡时intel的那么恭喜你,免驱了,如果是博通的或是Athero的那么可能需要更新系统并安装相应驱动,如果您只有上述无线网卡并不幸因此无法联网,请尽量使用支持的有线网络联网搜索安装驱动,过程可能十分曲折非常抱歉。我的博通BCM-94360用的是broadcom-wl)

由于国内网络环境,我们做的第一件事就是更改软件源

然后选择它:

将原有的四个enable的源取消

并添加国内源,我选择TUNA

单机Add->Specify URL

输入TUNA上的网址

https://mirrors.tuna.tsinghua.edu.cn/opensuse/update/leap/42.3/non-oss/

https://mirrors.tuna.tsinghua.edu.cn/opensuse/update/leap/42.3/oss/

https://mirrors.tuna.tsinghua.edu.cn/opensuse/distribution/leap/42.3/repo/non-oss/

https://mirrors.tuna.tsinghua.edu.cn/opensuse/distribution/leap/42.3/repo/oss/

这四个软件源

在OpenSuse下的某些闭源软件或版权软件在单独的Packman软件源下

添加:https://mirrors.tuna.tsinghua.edu.cn/packman/suse/openSUSE_Leap_42.3/

点击OK将自动更新并重建缓存数据

接下来执行Online Update

可能会更新内核,请重启

然后就能进入正题了

安装Anaconda3

在官网上下载对应的安装包:https://repo.continuum.io/archive/Anaconda3-5.0.1-Linux-x86_64.sh

然后打开命令行

使用 bash /Path to anaconda/Anaconda3-5.0.1-Linux-x86_64.sh

请不要使用sudo安装anaconda,以减少后期维修问题。

按提示进行后并确认您的安装路径是/home/Your Name/anaconda3

然后一路下一步等到出现这个:

填入yes

然后完成安装

接着更改anaconda的源为国内源,我依然选择tuna详见:https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/

Pip改源请看:https://mirrors.tuna.tsinghua.edu.cn/help/pypi/

*重要*

安装完anaconda后,anaconda把自己加进了bash的PATH,并且是把自己加在了最前面,这就很有问题了,亲测在KDE桌面环境下,按照之前的配置,会无法进入桌面,提示:Cannot call D-Bus。这是因为系统自带的python2.7有相关支持库,而anaconda没有,于是解决方案是修改path

打开shell:

vi ~/.bashrc

将export PATH=“/Path to anaconda/anaconda3/bin:$PATH“

改成export PATH=“$PATH: /Path to anaconda/anaconda3/bin“

保存并退出

使用 source ~/.bashrc更新PATH

然后默认的python指令就是启动系统自带的python了,桌面可以进入了

而此时打开anaconda的python就需要使用# python3.6或者/path to anaconda/bin/python来启动,anaconda的pip使用/path to anaconda/bin/pip来调用

安装nvidia驱动

请不要到nvidia官网去下载linux驱动,请使用社区提供的安装方法:

https://en.opensuse.org/SDB:NVIDIA_drivers

此步骤请全称是用root进行

打开shell :#su –

进入管理员

然后zypper rm drm-kmp-default

一路下一步

然后zypper addrepo –refresh http://http.download.nvidia.com/opensuse/leap/42.3 NVIDIA

接着zypper install-new-recommends

这将会安装十几个包且下载速度极为缓慢,请耐心等待并保持网络畅通,如果之前没有安装系统更新的话会有三十多个包要安装,所以建议在执行此步骤之前进行系统更新保证您的系统是最新的。

安装完成后再shell中可使用nvidia-smi命令检查是否已安装驱动。

安装cuda

此处以安装Cuda9.1为例

从nvidia官网上下载cuda的安装包

然后使用 bash /Package Name.sh来启动安装

一开始是冗长的许可证和文件说明,貌似只能按着回车往下挪,注意是挪!左下方的进度条太感人了,然后就是安装选项阶段:

*重要*

千万不要安装cuda自带的驱动,这会将之前千辛万苦安装好的驱动配置文件毁掉,并且让你开机面对黑屏,无能为力!所以第一个一定要选择n

其余的默认选项就好,cuda example可以不装

Anaconda安装tensorflow

之所以选择anaconda就是因为他有一个强大的包管理工具conda并且包含了许多科学计算需要的库

正如上所说conda是一个包管理器,也就是说和pip是差不多的但是conda的库没有pip多,很多开源程序库也只有pip有,所以得用上文的办法来给anaconda添加pypi里的包

此处安装tensorflow使用conda即可

打开shell 无需sudo,因为我们的anaonda实在home目录下的

所以直接 #conda install tensorflow-gpu(没有nvidia的童鞋去掉-gpu即可)

然后我惊奇的发现:

Anaconda帮我装了CUDA!!!

太贴心了好吗,我之前白搞了欸

(装了CUDA驱动且没有snappershot而重装了一次的我XP)

好啦,这次安装经历到此结束,感谢各位看官的耐心阅读,如果有什么问题欢迎向我提出,我们一起探讨

下期我可能会给大家带来笔记本安装Bumblebee实现linux下的Optimus双显卡应用的教程又或者是Docker相关的简单介绍

我们下期见啦

最后怼一波NVIDIA:

图文:LionTao

编辑:囧星人

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20180205G1FFVR00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券