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中输入wslubuntu就可以使用Ubuntu了。

到此,可以应付我们大一大部分的学习任务了,但WSL还是有不少问题的,建议大家看看第二部分,基于VirtualBox安装Uubntu虚拟机。

2. 基于VirtualBox虚拟机安装Ubuntu

一. 下载安装VirtualBox

  1. 官网下载VirtualBox,目前版本(20200405):VirtualBox 6.1.4 for Windows hosts x86/amd64

  2. 下载好了安装VirtualBox,一路Next就可以了,这个比较简单。

  3. 运行VirtulBox程序, 如下图:

  4. 配置VirtualBox。按 CTRL+G打开全局设定,根据需要可以设定虚拟脑位置和界面语言:

修改默认虚拟脑位置比如D:\myvbvms可以让自己更方便的查找,备份安装好的虚拟机。

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

  1. 安装VirtualBox Extension Pack

下载, 双击安装,支持USB 2.0 和USB 3.0 设备, VirtualBox RDP, 磁盘加密,虚拟机快照等功能。

二、安装Ubuntu

创建虚拟机

  1. 运行VirtulBox程序,点击“新建”按钮,新建一个虚拟机。

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

  1. 设定虚拟机的内存,此内存即为虚拟机所占用的系统内存,可随意修改,建议不要超过系统内存的1/2。

    首先了解自己的笔记本电脑系统内存大小,“我的电脑”->“属性”。样机为16G。

    为了方便以后编程学习使用,这里将虚拟内存设为4G。点击“下一步”。

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

如果你安装有问题,可以去别人电脑上默认虚拟脑位置比如D:\myvbvms处拷贝别人安装好的XXX.vdi文件,在此选择“使用已有的虚拟硬盘文件”,然后选中拷贝过来的vdi文件就可以了,下面的安装就不用做了。

在此强烈建议把教程走完,出错了也会有不一样的收获

  1. 选择虚拟硬盘文件类型。选择默认的VDI(VirtualBox磁盘映像),并单击“下一步”。

  1. 选择“动态扩展”,并单击“下一步”。

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

  1. 输入虚拟硬盘文件的名称,并选择保存位置。

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

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

安装Ubuntu 系统软件

在虚拟机上安装Ubuntu和在真实机器上安装没有大的差别。

  1. 官网下载桌面版,目前(20200405)推荐版本:Ubuntu 18.04 LTS,最新版本19.10

  2. 双击启动创建好的虚拟机



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

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

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

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

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

弹出警告框,选择“继续”。

  1. 安装过程中时区,用鼠标单击地图中的“中国”,就会选择“上海”,单击“继续”。

语言选“汉语”:

  1. 输入个人信息:用户名,口令等。单击“继续”,安装过程可能需要几十分钟,请耐心等待。

  2. 安装完毕,重启一下Ubuntu。

安装VirtualBox虚拟机增强功能

注意:以下需要输入命令代码时请注意之间的空格!以及文件名相互对应!

  1. 进入虚拟机Ubuntu系,安装VirtualBox增强功能,这可以极大的提高虚拟机效率。首先点击VBox菜单栏的“设备”项,选择最下面的“安装增强功能”。

  1. 这时可以看到桌面多出一个光盘图标,如果没有,则重试本步。

  2. CTRL+ALT+T打开“终端”。输入以下命令(注意空格!注意路径、文件名相互对应。

输入命令时要根据自己的情况修改,文件名用Tab补全,减少录入错误。

等待几分钟就安装好了!

分配共享数据空间(易出错,新手可以不做)

为了方便虚拟机和宿主机之间的数据传输,我们可以为虚拟机设置一个和主机共享的“数据空间”。VBox为我们提供了这个功能。

  1. 在VBox主界面左侧选择刚刚创建好的虚拟机,点击上方的“设置”按钮,进入虚拟机配置界面。点击左侧“共享文件夹”按钮,在新窗口中任意选择一个本地文件夹作为共享文件夹。示例选择文件夹位置为C:\rocshare,不要勾选“只读分配”。单击“确定”,并关闭设置窗口。

  1. 启动Ubuntu,打开终端窗口。(注意空格!)

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

比如我们在Ubuntu中用touch命令新建一个testtest的文件,到宿主机的c://rocshare中就能看到这个文件。

  1. 至此,虚拟机安装配置完成。

配置Ubuntu

Ubuntu的使用可以参考别出心裁的Linux命令学习法.

  1. 通过sudo apt-get update;sudo apt-get upgrade 更新一下系统。

  1. 安装软件。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
  1. Vim配置

参考做中学之Vim实践教程.

常见问题

大家可以回复这个帖子,把你遇到的问题和解决方案记录下来,我会把第一个提交的同学的

  • 安装

安装好的虚拟机

上面步骤都很详细了,但总有一些同学无法在VirtualBox上成功安装Ubuntu。虽然说安装不成功也有收获,这是获取软知识的一个过程,但不能正确安装也就无法继续学习。我在此提供一些安装好的虚拟机,每年更新。

安装好的的软件主要涵盖我的课程上可能用到的开发环境(scratch,python,java,c/c++),相关脚本在~/work/roctools.sh中。

以2018年的安装包为例:

找到你的虚拟机安装到哪了:

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

新建一个虚拟机:

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

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

这样就可以使用我安装好的虚拟机了。

其他

想学好Linux,建议再按上面的步骤下载安装一下FedoraCentOS,这样你可以体会不同发行版,桌面版和服务器版的不同,找出共性知识就可以完善自己的知识结构,做到举一反三!相信我,不会浪费你太多时间的。

参考资料


欢迎关注“rocedu”微信公众号(手机上长按二维码)

做中教,做中学,实践中共同进步!



如果你觉得本文对你有帮助,请点一下左下角的“好文要顶”和“收藏该文


基于VirtualBox安装Ubuntu图文教程的更多相关文章

  1. 20155228 基于VirtualBox安装Ubuntu和学习linux命令的学习经历和心得

    一.虚拟机VirtualBox的下载安装 基于VirtualBox虚拟机安装Ubuntu图文教程 虽然娄老师的教程对于VirtualBox的下载安装讲的很简单,可以说是一笔带过,但是我在下载安装的过程 ...

  2. VirtualBox下安装ubuntu图文教程以及软件安装

    一. 下载安装VirtualBox 官网下载VirtualBox,目前版本:VirtualBox 5.1.8 for Windows hosts x86/amd64 下载好了安装VirtualBox, ...

  3. VirtualBox安装Ubuntu教程

    1.VirtualBox虚拟机安装,及VirtualBox安装Ubuntu教程VirtualBox版本为VirtualBox-4.3.12-93733-Win.exe,Ubuntu版本为ubuntu- ...

  4. 分布式进阶(二)Ubuntu 14.04下安装Dockr图文教程(一)

    当前,完全硬件虚拟化技术(KVM.Xen.Hyper-V 等)能在一个物理主机上很好地运行多个互相独立的操作系统,但这也带来一些问题:性能不佳,资源浪费,系统反应迟缓等.有时候对用户来说,完全的硬件虚 ...

  5. Ubuntu下安装JDK图文教程详解 jdk-java6-30 .bin 的处理方法

    Ubuntu下安装JDK图文教程详解 jdk-java6-30 .bin 的处理方法: https://blog.csdn.net/mingjie1212/article/details/485250 ...

  6. Step by Step 真正从零开始,TensorFlow详细安装入门图文教程!帮你完成那个最难的从0到1

    摘要: Step by Step 真正从零开始,TensorFlow详细安装入门图文教程!帮你完成那个最难的从0到1 安装遇到问题请文末留言. 悦动智能公众号:aibbtcom AI这个概念好像突然就 ...

  7. 为了以后愉快的玩耍,Virtualbox安装Ubuntu

    为了以后愉快的玩耍,Virtualbox安装Ubuntu 每次安装虚拟机都是总要折腾一下,毕竟不是特别熟悉,几个小细节总要google半天,为了以后能愉快的玩耍.把这些问题都记录下来,免得再折腾. 此 ...

  8. Oracle 11g R2安装手册(图文教程)For Windows

    1.Oracle 11g R2安装手册(图文教程)For Windows 1.下载Oracle 11g R2 for Windows版本,下载地址如下 官方网站: http://download.or ...

  9. VMware安装CentOS 图文教程

    VMware安装CentOS 图文教程 VMware 下安装CentOS6.2 取消 Easy install模式(此模式不好,很多软件没有安装) http://jingyan.baidu.com/a ...

随机推荐

  1. IT软件开发常用英语词汇

    Aabstract 抽象的abstract base class (ABC)抽象基类abstract class 抽象类abstraction 抽象.抽象物.抽象性access 存取.访问access ...

  2. log的简单说明

    log的简单说明 @(NS3相关)[core][log] NS3中的日志功能是非常完善与灵活,大家有需要显示一些调试或者警告信息时最好使用log,不再使用标准输入来输出中间信息. 头文件:ns3/lo ...

  3. 安卓普通类通过classloader访问资源文件

    Android studio不知道怎么设置,才可以在生成APK时把一些文件打包进去. 但是不管怎么样,放在res文件夹下的东西是一定得打包的.所以把一些资源文件放在res/raw这个文件夹里是科学的. ...

  4. 发现IE6的一个BUG,添加受信任站点后,页面无法跳转

    最近客户爆了一个问题,说是最近使用我们的系统,一登录浏览器就直接关闭了.   经排查,属于IE6设置受信任站点的问题,受信任站点设置了通配符,如 http://192.168.1.* 这样的格式,而我 ...

  5. mysql online ddl

        大家知道,互联网业务是典型的OLTP(online transaction process)应用,这种应用访问数据库的特点是大量的短事务高并发运行.因此任何限制高并发的动作都是不可接受的,甚至 ...

  6. Javascript之旅——第六站:看看writable特性

    说起js中的那些特性标记,总觉得有些怪怪的,那为什么要说到这个attribute,起源于对一个问题的疑问,我们都知道window对象其实就是 浏览器窗口的一个实例,既然是一个实例,那这个实例就应该有“ ...

  7. 【JavaScript】EasyUI框架的Dialog控件根据浏览器分辨率自动调节宽高

    序: 如果单独一个或几个Dialog控件修改成根据浏览器可视界面自动调整高.宽很容易仅仅是一个量变的过程,但如果大量页面都引入了Dialog控件,修改起来是一个很消耗体力的工作.所以接到任务后第一想法 ...

  8. C# 多线程,论多核时代爱恨情仇

    为什么要学习多线程? 2010年1月21日是10年某市公务员考试的报名截止日.因从下午2点开始,用于报名的北京市人事考试网瘫痪,原定于昨天下午5点截止的报名时间延迟至今天上午11点. 2011年3月1 ...

  9. 使用ImitateLogin模拟登录百度

    在之前的文章中,我已经介绍过一个社交网站模拟登录的类库:imitate-login ,这是一个通过c#的HttpWebRequest来模拟网站登录的库,之前实现了微博网页版和微博Wap版:现在,模拟百 ...

  10. Kafka三款监控工具比较(转)

    在之前的博客中,介绍了Kafka Web Console这 个监控工具,在生产环境中使用,运行一段时间后,发现该工具会和Kafka生产者.消费者.ZooKeeper建立大量连接,从而导致网络阻塞.并且 ...