基于VirtualBox安装Ubuntu图文教程
Linux(Ubuntu)系统安装图文教程
Linux支持几乎所有的程序设计语言,有丰富的开发工具,我一直提倡在Linux系统下学习编程。即使不做开发人员,随着安可技术,国产化替代的推广,掌握Linux的应用也是我们每名同学工作后必备的技能(如果不是我的学生,可以找自己最方便的学习方式,比如在Windows下学习)。
Linux有很多发行版,我们推荐使用Ubuntu。
本文涉及到的Virtualbox, Ubuntu等工具,可以到https://pan.baidu.com/s/1Da7DaonMnSRFOYK-ng-qIw下载。 提取码: gkpx
1. 基于Windows10系统的WSL(Windows Subsystem for Linux)安装Ubuntu
启用Linux 子系统功能
Win10中点击“开始” -> “设置”

在“设置”中选择“应用”

在“应用和功能”中选择最右的“程序和功能”(注意要全屏,否则看不到)

点击“启用或关闭Windows功能”

选择启用“适用于Linux的Windows子系统”

按系统提示重启系统,这样就启用了Win10的Linux 子系统功能。
当然还可以用命令行完成这个功能,如果没有命令行基础,你可以先阅读一下"Java程序设计的DOS命令基础"这篇博客。
按一下Windows键+R,然后输入powershell就会打开powershell命令行窗口。

输入以下命令,以“系统管理员权限”打开powershell
Start-Process "$PSHOME\powershell.exe" -Verb runas

输入以下命令启用 Linux 子系统功能:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
提示重启系统,输入Y,重启系统。这样也就启用了Win10的Linux 子系统功能。你可以对比一下通过GUI和命令行启用Linux 子系统功能各自的有点和不足,建议慢慢习惯命令行方式。
WSL中安装Ubuntu
点击“开始”->"Microsoft store":

搜索我们要安装的“Ubuntu”:

选择最前面的“Ubuntu”:

获取Ubuntu:

安装Ubuntu:

等待安装完毕:

启动Ubuntu:

第一次启动有个初始化:

输入用户名和密码,注意输入密码时不可见:

这样以后在powershell中输入wsl或ubuntu就可以使用Ubuntu了。
到此,可以应付我们大一大部分的学习任务了,但WSL还是有不少问题的,建议大家看看第二部分,基于VirtualBox安装Uubntu虚拟机。
2. 基于VirtualBox虚拟机安装Ubuntu
一. 下载安装VirtualBox
官网下载VirtualBox,目前版本(20200405):VirtualBox 6.1.4 for Windows hosts x86/amd64
下载好了安装VirtualBox,一路
Next就可以了,这个比较简单。运行VirtulBox程序, 如下图:

配置VirtualBox。按
CTRL+G打开全局设定,根据需要可以设定虚拟脑位置和界面语言:
修改默认虚拟脑位置比如D:\myvbvms可以让自己更方便的查找,备份安装好的虚拟机。

如果界面是英文,可以改成中文:

- 安装VirtualBox Extension Pack
下载, 双击安装,支持USB 2.0 和USB 3.0 设备, VirtualBox RDP, 磁盘加密,虚拟机快照等功能。
二、安装Ubuntu
创建虚拟机
- 运行VirtulBox程序,点击“新建”按钮,新建一个虚拟机。

- 虚拟机名称可以随意输入,示例:
rocedu。操作系统选择Linux,版本选择ubuntu。点击“下一步”。

- 设定虚拟机的内存,此内存即为虚拟机所占用的系统内存,可随意修改,建议不要超过系统内存的1/2。
首先了解自己的笔记本电脑系统内存大小,“我的电脑”->“属性”。样机为16G。
为了方便以后编程学习使用,这里将虚拟内存设为4G。点击“下一步”。

- 为虚拟机创建一块虚拟硬盘。选择“现在创建虚拟硬盘”,并单击“创建”。

如果你安装有问题,可以去别人电脑上默认虚拟脑位置比如D:\myvbvms处拷贝别人安装好的XXX.vdi文件,在此选择“使用已有的虚拟硬盘文件”,然后选中拷贝过来的vdi文件就可以了,下面的安装就不用做了。
在此强烈建议把教程走完,出错了也会有不一样的收获
- 选择虚拟硬盘文件类型。选择默认的VDI(VirtualBox磁盘映像),并单击“下一步”。

- 选择“动态扩展”,并单击“下一步”。
因为分配给虚拟机的内存空间较大,使用时逐渐占用磁盘空间,闲置时自动缩减比较合理,所以选择动态扩展类型。

- 输入虚拟硬盘文件的名称,并选择保存位置。
选择虚拟硬盘大小时一定先确定保存所在位置磁盘的可用大小。可用空间为500G,虚拟硬盘大小设置为64G。单击“创建”。

- 虚拟机创建完成。也就是说Ubuntu所需的硬件资源准备好了,相当于买了一个没有安装操作系统的电脑主机。

安装Ubuntu 系统软件
在虚拟机上安装Ubuntu和在真实机器上安装没有大的差别。
官网下载桌面版,目前(20200405)推荐版本:Ubuntu 18.04 LTS,最新版本19.10
双击启动创建好的虚拟机

弹出下图对话框,选择启动盘。单击右侧文件夹小图标。

选择虚拟光盘文件ubuntu-19.10.-desktop-amd64.iso,单击“启动”。

- 进入安装界面。 选择“中文简体”,选择“安装Ubuntu”

- 选择“继续”。 网络状况不好可以不选择“安装Ubuntu时下载更新”

- 选择“清除整个磁盘并安装Ubuntu”单击“现在安装”

弹出警告框,选择“继续”。
- 安装过程中时区,用鼠标单击地图中的“中国”,就会选择“上海”,单击“继续”。

语言选“汉语”:

输入个人信息:用户名,口令等。单击“继续”,安装过程可能需要几十分钟,请耐心等待。
安装完毕,重启一下Ubuntu。
安装VirtualBox虚拟机增强功能
注意:以下需要输入命令代码时请注意之间的空格!以及文件名相互对应!
- 进入虚拟机Ubuntu系,安装VirtualBox增强功能,这可以极大的提高虚拟机效率。首先点击VBox菜单栏的“设备”项,选择最下面的“安装增强功能”。

这时可以看到桌面多出一个光盘图标,如果没有,则重试本步。
按
CTRL+ALT+T打开“终端”。输入以下命令(注意空格!注意路径、文件名相互对应。)
输入命令时要根据自己的情况修改,文件名用Tab补全,减少录入错误。

等待几分钟就安装好了!
分配共享数据空间(易出错,新手可以不做)
为了方便虚拟机和宿主机之间的数据传输,我们可以为虚拟机设置一个和主机共享的“数据空间”。VBox为我们提供了这个功能。
- 在VBox主界面左侧选择刚刚创建好的虚拟机,点击上方的“设置”按钮,进入虚拟机配置界面。点击左侧“共享文件夹”按钮,在新窗口中任意选择一个本地文件夹作为共享文件夹。示例选择文件夹位置为C:\rocshare,不要勾选“只读分配”。单击“确定”,并关闭设置窗口。



- 启动Ubuntu,打开终端窗口。(注意空格!)
一个要点是:命令,文件名要通过Tab补全,这样就会减少录入错误。
- 输入命令“sudo mkdir /mnt/shared”。回车后键入密码。
- 继续输入命令“sudo mount –t vboxsf rocshare /mnt/shared" //注意rocshare /mnt/shared 要跟据自己的情况修改
- 输入命令“sudo gedit /etc/fstab”
- 在弹出的文本末尾添加一行下面的内容:
- “rocshare /mnt/shared vboxsf rw,gid=100,uid=1000,auto 0 0”
- 现在打开/mnt/shared文件夹,就可以看到主机对应共享文件夹rocshare中的内容了。这就是宿主机和虚拟机之间的桥梁。
比如我们在Ubuntu中用touch命令新建一个testtest的文件,到宿主机的c://rocshare中就能看到这个文件。


- 至此,虚拟机安装配置完成。
配置Ubuntu
Ubuntu的使用可以参考别出心裁的Linux命令学习法.
- 通过
sudo apt-get update;sudo apt-get upgrade更新一下系统。

- 安装软件。Ubuntu中安装软件比较简单,使用
sudo apt-get install XXX就可以安装XXX软件,比如我们常用的Vim,就可以用sudo apt-get install Vim来安装。

注意:Ubuntu中使用到某个没有安装的软件时,会有贴心的提示,如上图。
我们可以通过apt-cache search XXXX来查找软件库中有没有我们想要安装的软件。比如我们想看看有没有常用的调试工具cgdb,就可以使用apt-cache search cgdb来查找:

找到后就可以通过sudo apt-get install cgdb来安装了。
我们可以一次安装多个软件,比如sudo apt-get install git ddd就会安装分布式版本控制工具git和图形化调试工具ddd:

这提醒我们可以写个脚本简化软件的安装,你可以源源不断的把自己用的软件添加到这个脚本中,方便日后自己安装新系统:


我的安装脚本供大家能参考:
#!/bin/sh
# update system
sudo apt-get update
sudo apt-get grade
sudo apt-get autoremove
# utilities
sudo apt-get install krusader unace unrar zip unzip p7zip-full p7zip-rar sharutils rar uudeview mpack arj cabextract file-roller
sudo apt-get install apvlv biff bsdgames byobu calcurse curl dia dia2code dtach dump fbset filezilla freemind gimp htop iotop jhead ksnapshot multitail moreutils pandoc planner powertop putty python-pip retext rpm screen sniffit socat stardict tmux tpp tree vlc vnc4server xvnc4viewer wireshark xchm xpdf tweak
# cheat
sudo pip install docopt pygments
git clone https://github.com/chrisallenlane/cheat.git
cd cheat
sudo python setup.py install
#vi
cd ~/.vim/bundle
wget http://www.vim.org/scripts/download_script.php?src_id=9679
#java
sudo apt-get install eclipse eclipse-wtp eclipse-emf eclipse-gef netbeans gaphor umbrello umlet
#programming
sudo apt-get install ascii automake bison bison-doc bluefish cgdb clang cmake codeblocks codeblocks-dbg codeblocks-dev cscope cvs dia ddd doxygen doxygen-doc doxygen-gui dstat eclipse eclipse-cdt eclipse-cdt-qt eclipse-cdt-valgrind eclipse-eclox eclipse-egit eclipse-egit-mylyn eclipse-mylyn exuberant-ctags flex fossil fp-compiler fp-ide g++ gcc gdb git gitk git-gui git-doc git-cvs git-svn git-sh gnustep groovy ifstat indent jedit jython libncurses5-dev ncurses-doc libasound2-dev libasound2-doc manpages-posix manpages-posix-dev nasm python-django python-django-doc qtcreator splint sqlite3 libsqlite3-dev sqlitebrowser sqliteman swig2.0 sysstat tcl8.5 tcl8.5-doc tk8.5 tk8.5-doc txt2tags python-pip qtcreator ruby1.9.3 qt4-qmake qtcreator jruby subversion tidy valgrind vim scala
#security
sudo apt-get install lib32z1 libc6-dev-i386 //64->32
sudo apt-get install lib32readline-gplv2-dev
- Vim配置
参考做中学之Vim实践教程.
常见问题
大家可以回复这个帖子,把你遇到的问题和解决方案记录下来,我会把第一个提交的同学的
- 安装
安装好的虚拟机
上面步骤都很详细了,但总有一些同学无法在VirtualBox上成功安装Ubuntu。虽然说安装不成功也有收获,这是获取软知识的一个过程,但不能正确安装也就无法继续学习。我在此提供一些安装好的虚拟机,每年更新。
安装好的的软件主要涵盖我的课程上可能用到的开发环境(scratch,python,java,c/c++),相关脚本在~/work/roctools.sh中。
- 2018年:VirtualBox5.2.18 + Ubuntu18.04 + 安装好的虚拟机(rocedu:rocedu1804) 链接:https://pan.baidu.com/s/1BwZnho87NMUeYHtBfJ9d1A 密码:g2oa
以2018年的安装包为例:
找到你的虚拟机安装到哪了:

通过上面百度网盘链接,把安装好的虚拟机的压缩包``下载了并解压:

新建一个虚拟机:

注意选择“使用已有的虚拟硬盘”

并选好正确的vdi文件:RocEDU.ubuntu1804.vid

这样就可以使用我安装好的虚拟机了。
其他
想学好Linux,建议再按上面的步骤下载安装一下Fedora, CentOS,这样你可以体会不同发行版,桌面版和服务器版的不同,找出共性知识就可以完善自己的知识结构,做到举一反三!相信我,不会浪费你太多时间的。
参考资料
欢迎关注“rocedu”微信公众号(手机上长按二维码)
做中教,做中学,实践中共同进步!

版权声明:自由转载-非商用-非衍生-保持署名| Creative Commons BY-NC-ND 3.0
如果你觉得本文对你有帮助,请点一下左下角的“好文要顶”和“收藏该文”
基于VirtualBox安装Ubuntu图文教程的更多相关文章
- 20155228 基于VirtualBox安装Ubuntu和学习linux命令的学习经历和心得
一.虚拟机VirtualBox的下载安装 基于VirtualBox虚拟机安装Ubuntu图文教程 虽然娄老师的教程对于VirtualBox的下载安装讲的很简单,可以说是一笔带过,但是我在下载安装的过程 ...
- VirtualBox下安装ubuntu图文教程以及软件安装
一. 下载安装VirtualBox 官网下载VirtualBox,目前版本:VirtualBox 5.1.8 for Windows hosts x86/amd64 下载好了安装VirtualBox, ...
- VirtualBox安装Ubuntu教程
1.VirtualBox虚拟机安装,及VirtualBox安装Ubuntu教程VirtualBox版本为VirtualBox-4.3.12-93733-Win.exe,Ubuntu版本为ubuntu- ...
- 分布式进阶(二)Ubuntu 14.04下安装Dockr图文教程(一)
当前,完全硬件虚拟化技术(KVM.Xen.Hyper-V 等)能在一个物理主机上很好地运行多个互相独立的操作系统,但这也带来一些问题:性能不佳,资源浪费,系统反应迟缓等.有时候对用户来说,完全的硬件虚 ...
- Ubuntu下安装JDK图文教程详解 jdk-java6-30 .bin 的处理方法
Ubuntu下安装JDK图文教程详解 jdk-java6-30 .bin 的处理方法: https://blog.csdn.net/mingjie1212/article/details/485250 ...
- Step by Step 真正从零开始,TensorFlow详细安装入门图文教程!帮你完成那个最难的从0到1
摘要: Step by Step 真正从零开始,TensorFlow详细安装入门图文教程!帮你完成那个最难的从0到1 安装遇到问题请文末留言. 悦动智能公众号:aibbtcom AI这个概念好像突然就 ...
- 为了以后愉快的玩耍,Virtualbox安装Ubuntu
为了以后愉快的玩耍,Virtualbox安装Ubuntu 每次安装虚拟机都是总要折腾一下,毕竟不是特别熟悉,几个小细节总要google半天,为了以后能愉快的玩耍.把这些问题都记录下来,免得再折腾. 此 ...
- Oracle 11g R2安装手册(图文教程)For Windows
1.Oracle 11g R2安装手册(图文教程)For Windows 1.下载Oracle 11g R2 for Windows版本,下载地址如下 官方网站: http://download.or ...
- VMware安装CentOS 图文教程
VMware安装CentOS 图文教程 VMware 下安装CentOS6.2 取消 Easy install模式(此模式不好,很多软件没有安装) http://jingyan.baidu.com/a ...
随机推荐
- IT软件开发常用英语词汇
Aabstract 抽象的abstract base class (ABC)抽象基类abstract class 抽象类abstraction 抽象.抽象物.抽象性access 存取.访问access ...
- log的简单说明
log的简单说明 @(NS3相关)[core][log] NS3中的日志功能是非常完善与灵活,大家有需要显示一些调试或者警告信息时最好使用log,不再使用标准输入来输出中间信息. 头文件:ns3/lo ...
- 安卓普通类通过classloader访问资源文件
Android studio不知道怎么设置,才可以在生成APK时把一些文件打包进去. 但是不管怎么样,放在res文件夹下的东西是一定得打包的.所以把一些资源文件放在res/raw这个文件夹里是科学的. ...
- 发现IE6的一个BUG,添加受信任站点后,页面无法跳转
最近客户爆了一个问题,说是最近使用我们的系统,一登录浏览器就直接关闭了. 经排查,属于IE6设置受信任站点的问题,受信任站点设置了通配符,如 http://192.168.1.* 这样的格式,而我 ...
- mysql online ddl
大家知道,互联网业务是典型的OLTP(online transaction process)应用,这种应用访问数据库的特点是大量的短事务高并发运行.因此任何限制高并发的动作都是不可接受的,甚至 ...
- Javascript之旅——第六站:看看writable特性
说起js中的那些特性标记,总觉得有些怪怪的,那为什么要说到这个attribute,起源于对一个问题的疑问,我们都知道window对象其实就是 浏览器窗口的一个实例,既然是一个实例,那这个实例就应该有“ ...
- 【JavaScript】EasyUI框架的Dialog控件根据浏览器分辨率自动调节宽高
序: 如果单独一个或几个Dialog控件修改成根据浏览器可视界面自动调整高.宽很容易仅仅是一个量变的过程,但如果大量页面都引入了Dialog控件,修改起来是一个很消耗体力的工作.所以接到任务后第一想法 ...
- C# 多线程,论多核时代爱恨情仇
为什么要学习多线程? 2010年1月21日是10年某市公务员考试的报名截止日.因从下午2点开始,用于报名的北京市人事考试网瘫痪,原定于昨天下午5点截止的报名时间延迟至今天上午11点. 2011年3月1 ...
- 使用ImitateLogin模拟登录百度
在之前的文章中,我已经介绍过一个社交网站模拟登录的类库:imitate-login ,这是一个通过c#的HttpWebRequest来模拟网站登录的库,之前实现了微博网页版和微博Wap版:现在,模拟百 ...
- Kafka三款监控工具比较(转)
在之前的博客中,介绍了Kafka Web Console这 个监控工具,在生产环境中使用,运行一段时间后,发现该工具会和Kafka生产者.消费者.ZooKeeper建立大量连接,从而导致网络阻塞.并且 ...