Win10+Ubuntu18.04LTS双系统安装记录[1]
本文记录过程的时候会同时记录踩过的坑, 这些坑有一些是由于我自己的操作不当, 还有一些是由于网上的教程版本过旧或书写错误造成的, 我都会记录下来, 但是文中的一些文本的描述会与系统标准输出的文本有一定差异, 只要不影响命令的运行的文字笔者不会过分追求一字不差. 那么我们开始吧.
双系统安装准备
- 在Ubuntu官网下载
Ubuntu18.04LTS
. 虽然Ubuntu19.10
已经问世, 但是考虑到LTS
版本的长期支持, 还是选择了这个版本; - 关闭
Windows10
中电源设置中的快速启动
; - 下载
UltraISO
作为启动盘制作工具; -
SanDisk USB3.0 32G
U盘一个作为启动盘; - 在
BIOS
中关闭Secure Boot
. - 在硬盘中[2]压缩出至少
25G
的空间作为Ubuntu
的系统盘, 我因为考虑到可能长期使用, 压缩了100G
, 但是现在已经有不够用的趋势了……
在我尝试压缩我的机械硬盘的时候Windows
提示我
而我的机械硬盘上还有300G
的空余空间, 我没多想, 只是认为是磁盘里碎片太多, 导致无法找出100G
连续的空间进行压缩, 于是我运行了磁盘优化, 但是优化完还是报错, 这时我感觉问题不像我想的那样, 问了google
才知道我的磁盘已经在我不知道是什么的时候变成了动态磁盘[3]!
而这块动态磁盘还被分成了4个区, 尽管我的机械硬盘在Win
中显示为一块磁盘. 这下知道问题所在就该着手解决了, 查了google知道可以用分区助手
或DiskGenius
来实现动态磁盘逆转回基本磁盘, 在用移动硬盘备份好机械硬盘里所有的文件后开始运行软件, 应该是我的磁盘型号的问题, 这两个软件都无法处理, 只能将其格式化, 转换为基本磁盘后再压缩出100G
.
开始操作
安装Ubuntu18.04
用
UltraISO
将ubuntu1804
刻录进U盘;重启电脑, 进入
BIOS
, 选择USB
启动;进入
Ubuntu
的grub
界面后会选择试用(try ubuntu without installing)
还是安装(install ubuntu)
, 都可以, 如果选择Try ubuntu
会在桌面的左上角出现一个install
, 双击即可. 选择安装Ubuntu
.选择语言为
汉语
选择
为图像或无线硬件, 以及MP3和其它媒体安装第三方软件
我取消了勾选, 而由于我的安装Ubuntu时下载更新
默认勾选且无法选择就只能勾选
但是在后续的使用中发现缺少了很多依赖, 并不知道是不是安装时这个选项造成的, 但是还是勾选上吧, 只是安装时间会长一些.
- 选择安装类型
我看到的几乎所有的教程中都提到了要选择其他选项
, 而正常来说应该在其他选项
的下一个界面中出现100G
的空闲空间才对, 但是我只有几个1M
的空闲空间, 为此我还返回Windows
重新格式化了机械硬盘, 重新压缩卷, 但是都没有用. 后来问了我的同学, 他表示直接选择第一个选项安装Ubuntu, 与其他系统共存
就可以, 开机时可以自动使用Ubuntu
的grub2
引导系统, 选完了之后开始安装, 重启电脑.
又出问题了. 我的系统重启后可以进入Ubuntu
的grub2
, 选择进入Ubuntu
, 在开机图标界面停留了很长时间, 我就强制关机了, 开机再进入Ubuntu
的时候同样是停在了开机图标界面, 当我打算再次强制关机甚至重装系统的时候, 电脑自己关机了, 我不确定这和我第一次的强制关机是否有关系. 在我查了一些文档后发现可能和我的nvidia
显卡有关, 即Ubuntu
中没有nvidia
显卡的驱动, 而独显又主动启动, 导致了开机时的bug
, 这里我尝试了两种方法, 均可以进入系统
- 在
grub2
界面将光标停在Ubuntu
, 按e
, 找到quiet
, 在后面加上nouveau.modeset=0
, 按F10
保存, 进入系统. - 在
grub2
界面选择第二个选项Advance
, 然后选择Resume boot
, 进入系统.
进入系统后要开始下载nvidia
的驱动, 打开终端, 输入
$ ubuntu-drivers devices
可以看到类似下面的输出
== /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 ==
modalias : pci:v000010DEd00001C8Dsv00001028sd000007E1bc03sc02i00
vendor : NVIDIA Corporation
model : GP107M [GeForce GTX 1050 Mobile]
driver : nvidia-driver-430 - distro non-free
driver : nvidia-driver-435 - distro non-free recommended
driver : nvidia-driver-390 - distro non-free
driver : xserver-xorg-video-nouveau - distro free builtin
可以看到我的显卡型号是GP107M [GeForce GTX 1050 Mobile]
, 推荐的驱动是nvidia-driver-435 - distro non-free recommended
, 我使用的是默认安装
$ sudo ubuntu-drivers autoinstall
也可以使用apt
安装, 比如sudo apt install nvidia-340
可以安装340
版本的驱动. 安装驱动后就可以重启电脑, 这时不会卡开机界面了[4]
安装Ubuntu下的基本软件
安装文本编辑器vim
在终端输入
$ sudo apt-get install vim
即可安装, 可以在终端中输入
$ vimtutor
可以查看vim
自带的简易教程, 但是如果终端是UTF8
编码, 中文是LANG
环境, 那么这个命令是看不到中文版的教程的, 可以在终端运行
$ iconv -f gb2312 -t utf8 /usr/share/vim/vim80/tutor/tutor.zh.euc -o ~/vimtutor.txt
其中的vim80
为自己的vim
版本, 如果不确定的话可以cd \usr/share/vim && ls
看一下, 会将vimtutor.txt
的中文版输出到~
目录下.
安装TexLive
关于安装教程可以在啸行的install-LaTeX项目处下载, 有很详细的教程, 这里我就说几个要注意的点.
-
先卸载
Ubuntu
预装的TeXLive
,本来我以为Ubuntu
是不自带TeXLive
的, 就直接装了TL2019
, 但是当我想要用
$ tlmgr update --self --all
升级宏包时, 提示我TeXLive
的版本不匹配
而且当我使用tex -v
查看版本的时候, 发现输出的是TeXLive2017
, 然后可以按照install-latex
中提到的方法卸载, 虽然安装后再卸载也没出什么问题, 但是安装前还是卸一下好一点.
- 中文索引引擎
zhmakeindex
在Windows
添加这个引擎并不难, 从CTAN上下载, 或从leo-liu的zhmakeindex项目clone
到本地, 但是后者需要自己用go
编译, 具体教程可以参考图灵社区, 有必要一提, 我在照教程实践的时候, 在安装zhmakeindex一步中并没有完成, 报了一个我看不懂的错
由于我不会GOLANG
, 也就没有去查相关原因, 知道的大佬可以在评论区补充.
在Windows
下直接将编译好的zhmakeindex.exe
复制到C:\texlive\2019\bin\win32
即可, 在命令行中进入写有索引的文件夹中, 执行
zhmakeindex filename
即可生成索引文件 filename.ind
.
而在Ubuntu
下编译失败后我也尝试用这种方法将zhmakeindex
直接复制进/usr/local/texlive/2019/bin/x86_64-linux
, 然后执行
$ zhmakeindex filename
但是Ubuntu
并不认识这个命令, 在群里交流了一下,
在下载的目录里执行
$ ls -hal
会返回下面的结果
可以发现zhmakeindex
没有执行权限x
. 于是执行
$ chmod +x zhmakeindex
为zhmakeindex
添加执行权限, 在该文件夹下的终端运行
$ zhmakeindex
如果得到以下的输出
即表示可以执行, 这时可以选择sudo cp ./zhmakeindex /bin/
方便调用, 或者在~/.bashrc
或~/.zshrc
中添加别名后更新
alias zhmakeindex="/usr/local/texlive/2019/bin/x86_64-linux/zhmakeindex"
其中/usr/local/texlive/2019/bin/x86_64-linux/
为存有改过权限的zhmakeindex
文件的目录
然后
$ source ~/.zshrc
即可.
安装MATLAB
装MATLAB
没有什么好说的, 我的学校提供了教育版的MATLAB
, 所以不涉及到破解, 一切按流程走就行, 注意最后填写可使用的用户时的用户名填对.
安装VSCode
及配置
可以从官网上下载*.deb
文件安装, 或者从Ubuntu软件
中安装, 我选择的是后者.
暂时我对VSCode
的使用就是作为LaTeX
的编辑器, 下载的插件有
LaTeX Workshop
Markdown All in One
Chinese (Simplified) Language Pack for Visual Studio Code
settings.json
的内容在这里
另外根据我的packages
使用习惯增加了用户代码片段latex.json
, 在这里
安装通讯工具wine+qq
由于腾讯最近发布的QQ for Linux2.0
体验极差, 还是只能选择wine+QQ!
的方式解决, 具体教程可以看撸Linux上的教程, 在我的电脑上没有问题, 可以完美的使用.
输入法fcitx-rime
以小鹤音形配置
这个东西在我用linux
虚拟机的时候就把我折磨地痛不欲生, 网上现存的教程太少了, 只能参考其他教程顺藤摸瓜.
在安装小鹤音形之前, 我曾使用自带的ibus
输入法中的双拼简单替代, 使用体验并不是太好, 出现的问题有输入法响应不及时, 以及在部分软件中无法被呼出, 比如TeXStudio
, 放弃. 也使用过Sougou
中的双拼, 出现的问题有候选区乱码 , 并且尝试了解决办法后依然没有解决, 还有一点不符合我使用习惯: 无法设置在中文输入方式下输入半角符号 , 最终还是选择rime
挂接码表, 但是还有一个问题就是最新几版的码表已经被隐藏了, 在小鹤音形网盘中的码表资源较旧, 但也不是不能用, 就凑合一下吧.
- 首先下载
fcitx-rime
$ sudo apt-get install fcitx-rime
- 在小鹤音形网盘中下载
小鹤音形Rime平台for Linux.zip
, 解压后会发现有一个bin
文件夹, 还有几个*.yaml
文件. - 按照我找到的几乎所有教程都说要把所有文件复制到
~/.config/fcitx/rime
下, 但是这么做的话在部署的时候报错, 看一下log
文件, 里面有为数不多的我能看懂的
E1021 19:55:48.464576 31050 deployment_tasks.cc:242] source file 'flypyplus.dict.yaml' does not exist.
E1021 19:55:48.492090 31050 deployment_tasks.cc:242] source file 'flypy.dict.yaml' does not exist.
表示rime
找不到上面两个文件, 而rime
要用这两个文件来生成对应的bin
文件来调用, 但是在鹤大提供的包里直接把编译结果bin
文件给出来了, 那就是为什么rime
找不到这两个文件的问题了.
- 将
bin/
文件夹下的所有*.bin
文件都拿出来, 放到~/.config/fcitx/rime
下, 再进行部署就行了. - 也可以在这个文件夹下的
flypy_user.txt
,flypy_top.txt
,flypy_sys.txt
来添加自己的编码, 这里就不赘述了.
小飞机
由于某些原因, 这里只贴一个项目链接
配置zsh
因为最近刚学了git
, 并且有项目在Github上, 而Ubuntu
自带的bash
并不显示git
的分支等信息, 用起来并不是很顺手, 于是用zsh
来美化一下. 安装及配置的教程可以看这里.
尾声
至此我的Ubuntu
的配置已经可以满足日常使用, 分配出来的100G
空间还剩下25G
, 看起来还是不太够用, 不过对于不在Linux
下玩游戏来说使用也够了, 就这样吧. 如果有表述错误还请评论区指正