NOI Linux 进阶使用技巧

0.前言

本篇文章主要是面向准备使用 NOI Linux 作为写代码系统甚至主力系统的同学们,因此本文已经假定读者已经会安装 NOI Linux 虚拟机,有一定的虚拟机使用经验并且懂得一些基础的 Ubuntu 使用方法。

但是经过一下午的大战配置,作者本人不建议使用 NOI Linux 作为主力系统(应该也没人会这么用吧),可能是 CCF 阉割的原因导致网络连接部分好像功能有缺失,导致可能出现主机有网络但是虚拟机没有网并且还无法设置的情况。不过它作为一个纯粹的写代码系统还是很合适的,毕竟系统已经安装好了很多现成的 IDE 或是文本编辑器。另外系统也比较轻量,没有无关功能。同时还可以熟悉 NOI Linux 使用以防止 NOI 赛场上出现不熟悉系统的情况。

虽然我可能到不了 NOI 赛场。

另外如果你使用的是虚拟机那么要保证实体机内存足够,8G 左右,并且尽量使用固态硬盘以避免不必要的卡顿。

笔者使用的是 VMware Workstation 15 安装的系统,因此以下教程偏向于 VMware 端。

1.如何安装 VMware Tools

可能有些读者并不在意过小的窗口,但是安装 VMware Tools 是接下来新建共享文件夹的必要操作。

当你按照习惯在 VMware 里点击了 “安装 VMware Tools” 选项,成功在虚拟机里找到插入的光盘后,你可能看到如下界面,然后发现:

我不会安装啊!

img

解决方法:

首先,打开中间那个文件(如果提示用什么打开选择归档管理器),然后点击左上角的”提取“,推荐选择主目录,然后点击右上角的“提取”。

img

等待提取完成后,打开刚刚提取出的文件夹,里面应该是这样的:

img

在空白处右键,点击”在终端打开“,输入以下指令:

1
sudo ./vmware-install.pl

然后可能提示要输入密码,输入即可。注意终端并不会显示你输入的密码,你只需要输入密码后点击回车,等待一会儿,如果密码正确自然会执行。(如果提示找不到命令,请确认你输入的文件名是否有误,如果确实无误请自行 bing:如何在 Ubuntu 安装 Perl)

img

接下来一路输入 yes 和回车,全部按照默认设置安装即可。(当然你也有兴趣也可以自己读一读内容自己决定)

安装完后建议重启电脑,然后虚拟机大小就正常了。

2.如何新建共享文件夹

可能你需要在虚拟机和实体机之间传输文件,那么显然,比赛时那种能在虚拟机和实体机同步的共享文件夹就是很好的选择。

不过需要注意的是,在 Ubuntu 中只能在共享文件夹新建名字长度为 的文件夹,建议在 Windows 下新建文件夹。

操作前提:安装 VMware Tools。

在关机状态下(不关机也可以,不过建议操作完后注销或重启),点击编辑虚拟机设置-选项-共享文件夹-添加,然后按照提示添加即可。

img

添加完后,你的共享文件夹位置在 /mnt/hgfs 里面,如果你不会打开,在”文件“应用里点击”其他位置“-”计算机“,然后按路径打开即可。

img

这是你可能会感觉很麻烦,难道每次打开都要进入这个路径,可不可以放在桌面上呢?

那就是下一篇教程的内容了。

3.修改共享文件夹位置

提示:请保证新的文件夹里是空的。如果失效了,重新按照流程来操作即可。

这里以桌面为例。(PS:为什么明明桌面上有两个图标(名字为用户名的文件夹和回收站)却是空文件夹?因为那两个图标仅是一个快捷方式,你去文件里真正打开会发现是空的)

img

首先打开主文件夹,右键”桌面“,点击”属性“,找到”上级文件夹“后面的路径,请记好。

然后按照上图右下角窗口的路径,打开 vmware-tools 文件,使用任何一个文本编辑器打开都可以。

然后按下 Ctrl+F 搜索 ”vmhgfs_mnt”,找到这个名字的变量,将后面的值修改为你刚刚的上级文件夹路径+你想要把共享文件夹放进去的文件夹名称。比如我这里就是 /home/noilinux/桌面。

img

注意前面不要少”/“!不要丢了外面的双引号!不要在语句尾画蛇添足加逗号或是分号!

保存,如果要求输入密码就输入,然后过一会应该就自动刷新了,或者你着急可以注销或是重启即可生效。

效果如下:

img

4.对于内置 IDE 和文本编辑器的评价

这里主要评价一些有比较现代的 UI 的软件,对于剩下偏硬核的为了新手友好就不评价了。(其实是我也不会用)

VS code(自己使用强推)

优点:强大的代码补全,如果可以安装扩展功能非常强大,自带终端。

缺点:扩展和中文翻译需要联网下载扩展,比赛别想用。编译需要手写 json 文件,略显麻烦。

Sublime Text(比赛和平时都可以使用)

优点:比 VS code 更轻量化,有还算可以的代码补全,有中文,可以单文件编译,性能好,可以打开几百行大样例。

缺点:终端不显示返回值,修改编译选项需要修改程序内部配置文件(可以自己上网搜怎么改),不支持调试。

Geany(比赛强推)

优点:轻量化的 IDE,支持单文件编译,有中文,修改编译选项可以直接从菜单修改,开箱即用,基本不需要配置。

缺点:不支持调试,代码补全相当鸡肋。

Code::Blocks

优点:唯一支持调试的,有代码补全。

缺点:过于笨重,编代码还要新建项目,不支持单文件编译,无中文,修改编译选项也比较麻烦。

5.后记

不建议更新系统或软件,因为我们不知道 CCF 改过的东西更新后还能不能给正常工作。

以后有了新发现会加上来的。