一个标准的数据分析码农必须要配一台超薄笔记本和一台高性能服务器,笔记本是日常使用,各种小问题的解决,同时也是用于远程连接终端服务器;高性能服务器就是核心的处理数据的平台,CPU、内存、硬盘容量、GPU等都必须要能满足数据分析和建模的要求。
笔记本强烈建议是Mac家的,无论是流畅度、美学、做工都绝对秒杀其他平台,唯一的缺点就是贵;服务器没有选择,只能用Linux了,ubuntu也是强烈推荐。目前除了打游戏,好像实在是找不到需要用Windows的理由了,奈何马上要奔3了,游戏最多也就是偶尔消遣一下,真要像大学时代钻研一门游戏,那还真的是没有精力。
手头有台闲置的电脑,想搭建一台服务器,为今后的实验室搭建做准备(NGS数据分析,深度学习建模)。
专业的事情还是交给专业的人来办,如果有大量的数据分析要求,建立一个IT部门是必须的,SEG等任务调度系统也是必不可少的,这个时候舍不得花钱那就只能忍受龟速的分析进度了。
先明确自己的使用目的,再来考虑配置设备,否则只会造成资源的损失(金钱、计算资源、精力等)。建议先尽量用免费的,充分了解了之后再入手,Google Colab和Kaggle Kernel先用起来。
参考:
目的:
- 远程数据分析站
- 实验室网站
- 数据库网站
- FTP网站
启动盘
制作U盘启动盘,安装Ubuntu系统
方法很多,装win就用老毛桃,简单快速。
装Linux就用rufus,Ubuntu官方推荐的安装器。推荐还是装desktop把,server是纯命令行,起点有点高。
关于u盘分区的选择,频繁穿插于mac于pc之间者,大批量拷贝大型文件者,请用exfat。
分区
菜鸟方案
“/”与swap两个分区就可以应付绝大多数的应用
常用方案
分为3个区
1. 挂载点/;主分区;安装系统和软件;大小为30G;分区格式为ext4;
2. 挂载点/home;逻辑分区;相当于“我的文档”;大小为硬盘剩下的; 分区格式ext4;
3. swap;逻辑分区;充当虚拟内存;大小等于内存大小(本人2G);分区格式为swap
4. /boot ;引导分区;逻辑分区; 大小为200M ;分区格式为ext4;
Ps:(本人安装的是Ubuntu14.04版本,100G硬盘分区方案)
安装
Dell F12 F8,进入U盘启动,建议把第三方库全部勾选,以免后面出现驱动问题。
Ubuntu基本环境配置
第一步,脱离鼠标:最全整理 | 121个Ubuntu终端常用快捷键
初始化Ubuntu root密码
sudo passwd root
安装git
apt-get update && apt-get install git-core
ssh开放远程登录
dpkg -l | grep ssh sudo apt-get install openssh-server
vim
env
gcc
常用lib
流程工具管理
conda
现在必须装python3版本的了,python2已经不再维护。
python环境配置
R环境配置
番外篇
硬盘U盘挂载
sudo fdisk -l mount -t vfat /dev/sdb1 /media umount /media/
网络访问
可以访问Google等,但是不能访问国内的网站,没有eth0。
解决办法:下载e1000e-3.5.1.tar.gz
sudo make install sudo modprobe e1000e sudo dhclient eth0
vi /etc/network/interface sudo /etc/init.d/networking restart
make
rpm
chrome
cannot resolve hostname
no ethernet connection
eth0,eth1,eth2……代表网卡一,网卡二,网卡三……lo代表127.0.0.1,即localhost
macchanger 修改MAC地址
# macchanger ifconfig eth0 ifconfig eth0 down macchanger -r eth0 ifconfig eth0 up
macchanger --version 查看当前软件的版本 macchanger -s eth0 查看指定网卡的MAC地址 macchanger -e eth0 修改为同一个厂家的随机MAC地址 macchanger -a eth0 修改为不同厂家同一类型的随机MAC地址 macchanger -A eth0 修改为不同厂家不同类型的随机MAC地址 macchanger -r eth0 修改为完全随机的MAC地址 macchanger -l 显示知名厂家的MAC地址段 macchanger --list=Cisco 显示指定厂家关键词的MAC地址段 macchanger -m xx:xx:xx:xx:xx:xx 修改为指定的mac地址 macchanger -mac=xx:xx:xx:xx:xx:xx 功能同上
几个重要的文件:
/etc/network/interface
/etc/resolv.conf
/etc/resolvconf/resolv.conf.d/base
auto eth0 iface eth0 inet dhcp 静态分配的配置方法: auto eth0 iface eth0 inet static address 192.168.205.139 netmask 255.255.255.0 gateway 192.168.205.1
当我们无法获取ip地址时可以使用dhcp来动态获取ip地址,安装dhcpcd5和dhcpcd-gtk
sudo apt-get install dhcpcd5 sudo apt-get install dhcpcd-gtk
使用ifconfig查看网卡名称,比如我本子上的有线网无法获取到ipv4,而我的有线网卡的名称为enp7s0,那么使用下面的命令即可获取到ipv4地址
dhcpcd enp7s0
可以成功获取IP地址
又有个问题,ping百度能找到百度的IP地址,但是就是ping不通:destination host unreachable
网上类似问题:ping 网关 出现Destination host unreachable
驱动下载
ftp服务器
实验室网站服务器
- R shiny,开发简单,但是功能受限
- tripal,专业的基因组学网站,参考文章:Extension modules for storage, visualization and querying of genomic, genetic and breeding data in Tripal databases
docker的利弊
其他:
第一次碰到这种邪门的事,一台电脑可以访问一些网站,却无法访问另一些网站,不是DNS解析的问题,因为IP都无法访问。后来有人解释说是局域网内把该网卡给封了,导致这个物理网卡在局域网内无法访问某些特定的IP。
换台电脑就好了,果然各种千奇百怪的问题都有。