首先还是记录一下,学习大数据经常离不开各种各样的宏包,需要搭配各种各样乱七八糟的环境,老实说一开始也是把虚拟机当做“工具人”使用,不过后来越发觉得Linux作为开源系统的优越,搭配环境的舒适。作为服务器or数据库的必备系统,熟练使用并能够搭配一个使用舒适的环境,应当是吾辈“代数据”人的必修科目,针对Ubuntu专门开了一篇Blog,记录一下,以防忘记。
一、环境变量
1.1 Linux常见指令
我直接当场CV侠,算了我懒了,上大佬整理的: Linux常用命令
1.2 环境变量说明
其实是用了Linux才知道,我们所谓的命令,之所以能够在输入一个“Python”的时候能够迅速反应过来并对应上Python.exe程序的同时还能帮我们顺便sh(start)了,是因为这个程序被纳入了系统变量,能够快速被系统执行
就算是我用了快两三年了,也没有发现,在安装使用的时候,一些曾经复制粘贴的东西,它到底有啥用,
1.3 deb文件如何安装
sudo dpkg -i xxx.deb
1.4 gedit批量注释
sudo apt-get install gedit-plugins
然后在gedit里面进行修改插件,勾选代码注释:
然后 ctrl+M
即可完成快捷注释
1.5 ubuntu下命令——以窗口的形式打开某个目录
nautilus Folder_Path
1.6 ubuntu定时任务
解放双手,释放劳动力,早日成为脚本大师
指令 | 说明 |
---|---|
crontab -e | 使用crontab自带的编译器nano进行编译 |
crontab -l | 查看当前该用户任务 |
进去后按照例子改写程序就ok咯:
前缀的说明:
* * * * *
- - - - -
| | | | |
| | | | +----- 星期中星期几 (0 - 6) (星期天 为0)
| | | +---------- 月份 (1 - 12)
| | +--------------- 一个月中的第几天 (1 - 31)
| +-------------------- 小时 (0 - 23)
+------------------------- 分钟 (0 - 59)
注:要表示频率的话,也就是说每xx小时或者xx分钟执行一次指令,就在对应时间下面输入*/x
- 其中 f1 是表示分钟,f2 表示小时,f3 表示一个月份中的第几日,f4 表示月份,f5 表示一个星期中的第几天。program 表示要执行的程序。
- 当 f1 为 * 时表示每分钟都要执行 program,f2 为 * 时表示每小时都要执行程序,其馀类推
- 当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,f2 为 a-b 时表示从第 a 到第 b 小时都要执行,其馀类推
- 当 f1 为 */n 时表示每 n 分钟个时间间隔执行一次,f2 为 */n 表示每 n 小时个时间间隔执行一次,其馀类推
- 当 f1 为 a, b, c,… 时表示第 a, b, c,… 分钟要执行,f2 为 a, b, c,… 时表示第 a, b, c…个小时要执行,其馀类推
crontab报错:errors in crontab file, can't install //这种情况一般就是你代码敲错咯
二、Hadoop集群配置
Hadoop 伪分布式配置-easy版本
Hadoop安装教程_单机/伪分布式配置-normal版本
三、Spark环境配置
四、Python环境配置
4.1 Anaconda安装
4.2 Jupyter安装
4.2.1 Jupyter目录安装
!pip install jupyter_contrib_nbextensions
jupyter contrib nbextension install --user
4.3 Pycharm安装
官网下载最新版:https://www.jetbrains.com/zh-cn/pycharm/download/download-thanks.html?platform=linux&code=PCC
下载后解压,这是进入./bin/
目录下执行.sh
文件就可以了,为了更方便使用,我们添加sh文件到ubuntu桌面应用(快捷启动):
Step1: 在桌面建立文件pycharm.desktop
:
gedit pycharm.desktop
在文本中输入:
[Desktop Entry]
Version=1.0
Type=Application
Name=Pycharm
Icon=${homepath}/pycharm/bin/pycharm.png
Exec=${homepath}/pycharm/bin/pycharm.sh
MimeType=application/x-py;
Name[en_US]=pycharm
保存并退出
Step2: 修改权限以及执行方式
修改权限:
修改执行方案:
双击执行pycharm.desktop
Step3: 添加至用户文件
cd ~/桌面
sudo cp pycharm.desktop /usr/share/applications/
这时就可以在应用程序中找到pycharm了,同理其他程序也是一样的步骤。
4.4 pip又卡了?
像Windows里面的指令一样,在环境中声明一个pip的Download全局变量:
gedit ~/.pip/pip.conf
没有的话就直接创建:
mkdir ~/.pip
在pip.conf文件中加入:
[global]
index-url = https://mirrors.aliyun.com/pypi/simple
[install]
trusted-host=mirrors.aliyun.com
url里的内容可以随便改,国内知名的还有清华源,balabala一大堆。
五、一些有用的Tools
5.1 中文输入法配置
5.2 系统语言配置(专八大佬自行忽略)
5.3 一个漂亮的桌面&关闭自动休眠
实际上我找到这个软件的时候完全是出于想要关闭Ubuntu18的自动休眠功能(是真的可恶,我开着的SparkContext上个厕所回来就歇逼了),找了许多方案,电源里的空白屏幕Ture off也好,Scream saving也好,改关的都关了,然而。。。没x用
好不容易找了个针对Ubuntu18的,是让我安装Gnome-tweak这个工具:
sudo apt install gnome-tweak-tool
启动:
gnome-tweaks
然后,这个位置就能更改主题和光标风格,Darkmode yyds!
同时,这个位置就能关闭,自动休眠模式:
5.4 磁盘扩容
我是在VMware里装的ubuntu18,所以磁盘扩容需要经历两个过程:
- 物理扩容
- 逻辑扩容
如果是在自家电脑的硬盘里装的单系统Linux可以跳过逻辑扩容,硬盘一插,系统一装,直接Finsh
如果是双系统电脑的话,你不加硬盘,那就只有“Windows兄弟挤挤咯”,调整一下各自的逻辑存储方案,具体咋做我也不知道了,因为我懒,不愿意承担一个系统中毒直接double kill的悲剧,等有空了TryTry也行
如果是Windows主宰,Linux工具人,OK砸门可以一起开始了
5.4.1 物理扩容
直接在VMWare里面处理:
更改磁盘容量,确定,然后开机。
5.4.2 逻辑扩容
安装Gparted,用过Diskgenuine吧,这个就跟它差不多:
sudo apt-get install Gparted
安装完了就直接在应用栏打开Gparted:
将空余空间压榨完,全部分给主盘,相当于一台机器一个C盘(这里不需要吐槽哈,我创建虚拟机肯定只需要主要运行几个程序就够了,并且又不需要联网,又不会中毒,有没有个人财产,所以一般情况下我是不会想去开多个盘的)
5.4.3 动态监听GPU使用情况
watch -n 1 nvidia-smi
结果如图:
六、报错大全
6.1 git出现Could not resolve proxy: https的错误
解决方案:git出现Could not resolve proxy: https的错误
设置git代理:
git config --global --unset http.proxy
git config --global --unset https.proxy
git config --global http.proxy 'socks5://127.0.0.1:1080'
git config --global https.proxy 'socks5://127.0.0.1:1080'
6.2 google chrome 10080端口受限
google-chrome --explicitly-allowed-ports=10080 http://8.131.84.6:10080/
6.3 apt-get 时 E: 无法定位软件包 cuda
sudo cp /etc/apt/sources.list /etc/apt/sources_init.list
sudo gedit /etc/apt/sources.list
deb http://mirrors.aliyun.com/ubuntu/ xenial main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb http://archive.ubuntu.com/ubuntu/ trusty main universe restricted multiverse
sudo apt-get update
sudo apt-get xxx(之前没有解析的包)
6.4 su:认证失败
sudo passwd
>>>安装电脑时的启动密码
>>>重设root密码
6.5 E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系
首先需要安装 aptitude:
sudo apt-get install aptitude
aptitude 安装包:
sudo aptitude install xxx(要修复安装的内容)
6.6 fatal error: pgenheaders.h: 没有那个文件或目录
这个提示我去下载装好pgenheaders.h这个头文件,Ubuntu的话可以通过这个网站直接search,然后用sudo apt-get install +这个dev或其他类型文件,该文件里面含有了这个头文件。注意你要找的文件可能跟我的不一样!
处理方法:
sudo apt-get install + xxx-dev