linux
multi-system
中文名:《我把双系统放入vBox并行》
双系统同时运行:宿主机Ubuntu,虚拟机DELL9020原装“正版”Win7。
Linux
我用Linux办公,不喜盗版讨厌弹窗等等,不过我觉得用Linux是不需要理由的。领来新机直接U盘装Ubuntu 14.04 x64,看到大家用Windows居多,所以本着有备无患留下了Windows,grub直接引导就变成双系统,硬盘分区如下:
1 | ~$ lsblk |
可恶的Windows占用了两个主分区,一个是所谓的boot。我把Linux装到了逻辑分区,这个无所谓了,grub大叔能叫起床就OK了。(sda3是逻辑分区的标识,Linux我只分了两个,还预留了200G的空白分区,备用)
Win
我不用Windows系统,一直都是Ubuntu一个系统,最多考试什么需要IE的场合用下。然而有一天,小鬼(一个不支持Linux的所谓互联网大公司,不支持也就罢了,源里还有个不能用的软件拉嘲讽)作祟,Web版本也不让用了,开源大神一度辛苦抓包维护的pidgin插件lwqq不能用了。
最不折腾的方案是虚拟机了,然而我一个懒人,懒得下镜像,懒得装盗版系统,懒得下直接下不确定安全的vmdk/vdi文件用,就想用现成的系统。有句话叫:没有做不到,只有想不到。虚拟的磁盘文件都可以,然而我有真的,不用白不用。
折腾
我最不喜欢折腾,Linux下我不会在乎系统多起个服务进程的,但是Windows没用的开机启动,用不着的服务关一个少一个,少一个系统就少一份维护。我真的最不喜欢折腾,软件都是直接装源里的,除非有bug不想忍时才偶尔编译安装新版本。
开工
首先创建一个类似链接文件的虚拟机磁盘文件,命令如下:
1 | vboxmanage internalcommands createrawvmdk -filename /path/to/new/vmlink/file/Win7HD.vmdk -rawdisk /dev/sda -partitions 1,2 -mbr /path/to/mbr/win7.mbr -relative |
MBR
大家都知道MBR,我就不卖弄了,有真的最好,没有真的弄个假的先凑合下吧。安装完Linux后我的MBR默认引导GRUB,可以导出一份(dd/fdisk/gdisk等等),也可以先搞个假的512bytes 二进制文件。(虚拟机可以有自己的MBR,赞赞)
chmod
默认/dev/sda*
是没有写权限的,so (作为一个懒人,必须搞个自动的: update-rc.d
)
1 | sudo chmod o+rw /dev/sda1 /dev/sda2 |
建议用命令,也可以自己写个sh放到对应的/etc/rc?.d/下面(利用rc.d启动级别,密码可以跳过。)
VBox
含有自己mbr的虚拟机磁盘镜像文件建立好了,如下:
1 | $ ll Win7HD* |
下来当然创建虚拟机,同时添加磁盘文件(注:仅需要添加Win7HD.vmdk这一个文件就好)
FIX
如果你的mbr是真的,如我在装Ubuntu之前备份了mbr这步可以跳过。修复MBR对大家不是什么难题,最方便的是在虚拟机中挂载个iso镜像文件,启动顺序设置CD优先启动。
我挂载了个PE的iso文件,进入PE直接修复引导…
取消挂载的iso文件,或者改下顺序,然后,重启~ 双系统一起运行,竣工 吼吼!
Other
- 网络:虚拟机网络建议选择NAT模式,然后给虚拟机分配个IP。起初我的双系统是同样的IP,不会存在冲突,现在只好再申请一个IP分配上,使用NAT方便宿主机和虚拟机通信。
- 软件:Windows虚拟机下输入法我用小狼毫,通讯软件我用Lite版本。
- 操作:起初我尝试过用远程登录虚拟机的方式,因为虚拟机快捷键是系统级别的,远程桌面可以降到软件级,方便统一操作,但还是鸡肋。最后修改虚拟机设置“Auto Capture Keyboard”,结合工作空间Workspaces给虚拟机单用一个工作空间。
U:
虚拟机可以保存状态,而不需要每次开机,又一次效率提升。
END
本文介绍了借助vbox并行运行双系统的实践,提供了Linux下部分关键命令。我想做一款IM,一款立足Linux的IM,一款和世界共通的IM,然而在“鸡犬之声相闻(lǎo sǐ bù xiāng wǎng lái)”的中国(中:通假字),很难作出这样的IM,有很多做好的却又被不可用。最后的最后给无数开源贡献者点个赞…
a cup of vps
习惯了谷歌搜索,还真的离不开了… (注:本文更新过)
Buy VPS
购买个VPS吧,选了款便宜点的,bandwagon 19.9$/Y(支持支付宝付款),这个我是新来的,就不搬门弄斧了…
购买成功后,操作系统选Ubuntu16.04,和我现在用的一样,主要是方便,首次密码登录添加公钥,安卓可以使用JuiceSSH客户端。。。
shadowsocks
先装个服务吧,本着不折腾的折腾原则。
server
先启动个服务吧,脚本奉上:
1 | apt-get update && apt-get -y install python-pip && pip install -U pip && pip install shadowsocks |
安装完毕,可以直接用命令ssserver
启动服务,推荐写个json,参数不懂问man
老师,或者帮助,官网文档都可以。
1 | echo '{ |
至此服务端启动OK,其中端口和密码自己设置。
client
安装方式一样,只是启动的时候用sslocal
命令,可以直接指定参数启动,也可以写个配置文件。
推荐火狐浏览器,因为火狐浏览器有单独的网络配置,而chrome等用的系统代理配置。
nginx
大家对nginx和gunicorn(uwsgi的一种)一定不陌生,其中有个名词叫反向代理,我的理解nginx反向代理是,自己有的(像js,css之类的)直接给你,没有的,去找gunicorn取来后给你。
Apply
“Nginx, Show me google homepage…” 没有取了来给我,哈哈哈 :)
不要想太复杂,Github上有现成的(我不喜欢编译,但偶尔编译下还是可以滴),注有个组建我更新了下,然后configure命令修改后是下面这样的:(前两个版本号稍有更新)
1 | apt-get -y install build-essential git gcc g++ make && mkdir wen.lu && cd wen.lu && git clone https://github.com/cuber/ngx_http_google_filter_module && git clone https://github.com/yaoweibin/ngx_http_substitutions_filter_module && wget "http://nginx.org/download/nginx-1.10.2.tar.gz" && tar xzvf nginx-1.10.2.tar.gz && wget "ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.39.tar.gz" && tar xzvf pcre-8.39.tar.gz && wget "http://zlib.net/zlib-1.2.8.tar.gz" && tar xzvf zlib-1.2.8.tar.gz && wget "https://www.openssl.org/source/openssl-1.1.0c.tar.gz" && tar xzvf openssl-1.1.0c.tar.gz && cd nginx-1.10.2 && \ |
下来修改下配置,修改的地方如下:
1 | resolver 8.8.8.8; |
然后启动ngins,访问[My VPS HIDE],久违的谷歌出现了。
http支持了,https如今也已经支持,使用Let’s encrypt证书,使用证书需要域名,免费域名申请的较晚,所以https及证书支持较晚。
the End
all in one last. 感谢阅读,我本地代理默认监听0.0.0.0,局域网的小伙伴有福了哈。
advanced linux
本文介绍几个Ubuntu进阶的操作。
先晒晒我信攥的电脑
- CPU:E3-1231 V3 (3.4GHz*8 志强四核八线程)
- 内存:Kingston 8G (骇客神条 1866MHz)
- 主板:ASUS B85-PLUS R2.0
- 显卡:NVIDIA GeForce GT 730
CPU,内存没得说,显卡很一般,Linux用完全足够了,如果想超频主板可用Z97K,我不超频也足够了
显卡驱动
志强CPU不集成GPU,所以需要独立显卡,显卡驱动是避免不了的。更多关于显卡的介绍,推荐
官方闭源驱动
官网按型号下载驱动,然后进入命令行(tty1-6),关闭Xorg,sh
装驱动,然后启动Xorg。
1 | sudo service lightdm stop |
包管理器直接装
sudo apt-get install nvidia-331 nvidia-prime nvidia-settings
331是我装时候仓库中最新的。
装完后,不测试下?
工具: glxgears
奇怪,人家都说是评分多少万,为啥我的几乎定在60FPS? 原来是设置里开了,垂直同步,取消后评分正常。
GRUB2 引导
(Ubuntu 14.04下)grub引导选项主要是由/boot/grub/grub.cfg控制的,不过这个文件是自动生成的,我们一般编辑/etc/default/grub,然后通过命令sudo update-grub
应用改动。
常用选项
- 启动顺序
GRUB_DEFAULT
默认是0 - 延时时间
GRUB_TIMEOUT
就是显示grub菜单的时间(单系统默认不显示,开机按Shift即可。) - 想开机进命令行修改
GRUB_CMDLINE_LINUX_DEFAULT="text"
- 添加内核参数
GRUB_CMDLINE_LINUX=""
添加你想加的参数,如reboot=a
无论修改什么,都别忘了修改后更新grub!
新内核
说到内核,你知道你的内核版本么?还记得命令uname -r
吧。
编译内核
我编译过内核,那是因为第一次主板有问题,关机后自动重启,我由于设备教新,所以怀疑驱动等问题。按照wiki我尝试修改了CPU选项和电源选项,不过后来确认是主板问题,跑华硕售后,确认主板有问题,然后换了主板。我不敢大言不惭教大家编译内核,我想说的是新内核源里就有,用新内核不一定需要自己编译。还有我想说的是编译过程比较久,我3.4GHz*8的主频,需要1h这么久。
装新内核
就不教大家装包了,大家都会。不过我想提醒大家的是,装新内核时有几个包需要统一装,不要漏了哪个。
apt-get install linux-headers-x.xx \
linux-headers-x.xx-generic \
linux-image-x.xx-generic \
linux-image-extra-x.xx-generic```
四个包,x.xx是版本号,自行替换。
目前源里版本更新到3.16.0-31了,Linux内核最新版本已经到4.0了,告诉大家个好消息,4.0版本以后,Linux再也不要求大家重启了,厌倦了Windows反复重启的可要牢记哦。
## 总结
最后再次提醒大家修改grub设置后,不要忘记update-grub哦。
assembled computers
欣赏台式机的性能,所以一直计划这亲自攥台PC,话说我真不懂攥机,权当是分享下“失败”的经验吧。
配单
- CPU:E3-1231 V3 (3.4GHz*8 志强四核八线程)
- 内存:Kingston 8G (骇客神条 1866MHz)
- 主板:ASUS B85-PLUS R2.0
- 显卡:NVIDIA GeForce GT 730
- 硬盘:希捷1T,7200转 (机械硬盘)
- 键鼠:DeLUX竖式鼠标, PERIXX分离式键盘 (有线,人体工学)
- 电源:航嘉400W
我曾想过,用i5集显(i5性价比较高,所以没选i7),不过最后还是用E3独显了。(E3不集成GPU,所以需要配独显)
问题
我新组的电脑装了Ubuntu,然后无法关机,关机后等3s自动重启。。。
起初,我怀疑是Linux系统问题,内核都编译了(主要修改CPU和电源相关选项,CPU果然给力,一个小时内就可编译完毕),后来用WinPE试,还是关不了,然后用Windows试,装了官方驱动,还是关不掉…
几经折腾,最后断定是主板问题,跑了趟赛格,更换了主板(还好没有超过一个月包换)。
一切正常了。。。
总结
用Linux容易,做Linux不易,且行且珍惜。。。
learn linux
许多尝试过Linux过的,说起Linux总是一堆问题,外加一堆不习惯。我厌倦了Windows,尤其是中国特色下的 Windows,厌倦了杀毒软件,厌倦了盗版软件,所以决定换Linux。在换Linux的过程中,不能说没有问题,但基本是一帆风顺的,所以计划写本文。
How to learn Linux?
说实话,我学Linux(Ubuntu)并不久,不敢妄言怎么去学Linux,只是分享下我是怎么学Linux的。
No VMs
不要用虚拟机,也不建议刚装Linux,在Linux下装虚拟机装Windows。虚拟机的性能会大打折扣,虚拟机下优盘挂载、共享文件、屏幕大小等也不是一开始就合适的,所以不建议使用虚拟机。
Ubuntu支持wubi.exe,但我推荐最好是全新安装,安装一个系统最好,双系统也还好。
Habit
不要说什么不习惯,我想说和Windows不一样就对了,本身就不是Windows。声明下,不要提到Linux就是命令行,图形界面已经很成熟了。Linux下可以说没有不能改的,同时Linux发行版众多,和Windows习惯相同的也是有的。
Install
我推荐全新安装Linux,但是安装盘有时候并不是那么好制作,Windows下有名的工具UltraISO,并不能制作可用的Ubuntu启动U盘。不过制作好的Linux LiveCD功能可是相当强大的,Windows下工具也是有的:UNetbootin && Live USB Creator
看到这里,我建议有机会搞个LiveCD启动下玩玩。(注意备份资料,误操作全新安装会丢失硬盘数据),进入Linux后很多安装都是图形化的(如Ubuntu,SUSE,Debaian,Fedora,LinuxMint…),保留以前系统的,务必选择高级,自定义分区,不会破坏现有系统和引导的。
Guide
学习Linux,最好有本书作为指导,指导方向。版本选择可以选和书一致的,不过新几个版本也没有问题。建议:用长期支持的稳定版本!
SoftWare
软件安装尽量直接用软件中心的图形话界面,初学请避免编译安装。编译安装很好很强大,但是有不少人死在了无尽的编译中。
Linux下软件很丰富,可是你用的不一定有,有些游戏真的不能玩,但是Linux下有游戏,有不少游戏。举个例子,迅雷没有,可是同类的下载软件有一堆…
很多没有QQ就活不了的,我想说:你想用的QQ真不怎么有,虽说Linux下有解决方案,可是问题不是Linux,问题是永远不会是第一腾讯!!!
Linux下最直接的是WebQQ, 然后是Pidgin+lwqq插件,然后还有Wine和收费版的Wine:CrossOver
总结
想学Linux的就勇敢去学,失败的人总是在找借口,成功的人总是在找方法。