zoukankan      html  css  js  c++  java
  • esp8266之lubuntu的环境搭建(1)——linux系统升级(从14.04.1升级到16.04.6)

    0、序言
    本来可以直接使用乐鑫公司搭建好的linux环境的,他是基于14.04.1的版本,其实也不是很老,而且安信可也有ESP32 lubuntu下的环境,把ESP32和ESP8266开发环境都集成到lubuntu 32位虚拟机中,但是是百度云链接,因此暂时不下载,保存先,该虚拟机在VMware12以上环境下打开,请广大开发者自行下载。

    后来,想折腾一下,在原来的基础上升级一下,以前也真是没有接触过,趁疫情的原因,尝试一把。

    1、安装基础环境
    a、把乐鑫官方提供的lubuntu环境下载,速速超级快,链接可以参考8266的编程指南《2a-esp8266-sdk_getting_started_guide_cn》pdf

       b、把vmbox下载,上面下载好的压缩包里面有这个软件,我重新下载新的。一样可以使用的。然后安装这个软件。我的结果如下:

      2、创建虚拟机

    导入 ESP8266_lubuntu_20141021.ova文件,找一个硬盘空间大一点的,导入即可。
    期间遇到了一点小小的挫折,就是bios没有开启虚拟化,会出现如下的报警,因此要解决“VT-X”的问题。

    那么就进入bios的cpu选项,security选项,把所有的选项都enable,这样就可以看到虚拟化已开启的信息了。

    开启界面如下:

    我这个是i3 6006U的cpu,台式机的i3-8100就没有问题,应该是考虑到性能原因了。上面也是找了很多网站才发现的解决方案。

    3、更新软件源

    道理都懂,感谢国内的软件提供商,方式有3种,
    A、命令行来更新,这个可以参考中科大的镜像源说明help文档,参考;https://mirrors.ustc.edu.cn/repogen/
    http://mirrors.ustc.edu.cn/help/ubuntu.html
    现在linux的发展越来越好了,感谢国家的大学提供了这么多的软件源,使我们能够快素更新软件。

    B、编辑文件更新,vim /etc/apt/sources.list,替换成中科大或清华的,我使用清华的。
    参考清华大学的使用帮助:https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/

    C、图形界面更新
    就是简单的,软件升级那里即可。

    最后输入
    sudo apt-get update

      sudo apt-get upgrade

      sudo apt-get update 仅仅是从 sources.list 文件定义的源中取同步包的索引文件而并没有真正意义上的更新软件,而 sudo apt-get upgrade 命令才是根据 upgrade 同步后的包的索引文件来进行软件地更新。

    4、开始升级系统

    升级系统使用的是 sudo apt-get dist-upgrade,更新软件和系统升级都需要比较长的时间。

    这是我更新完毕的画面:

     在更新期间,会提示你个别信息,需要自己去确认的,之前因为我没有合理处理grub的部分,导致软件升级出问题,索性就系统升级了。

    还好系统升级了,完美无瑕的进入了16.04.6的版本,之前我设置的alias也都是没有改变(这鞥可以选择,反正升级比较人性化,易用化),很舒服。

    5、删除不必要的软件,给Ubuntu系统清理垃圾

    参考:https://blog.csdn.net/levon2018/article/details/81746613

    不过与你想象的可能有很大的不同,Ubuntu系统在运行时是不会产生无用垃圾的。这一点与Windows系统有很大的不同。但是我们在升级系统时,软件管理器下载的软件包,系统则不会自动删除,其实这样做也是考虑到你可能会再次安装从而加快再次安装的速度考虑。当然了,我们普通用户,一旦下载安装完毕,其安装包也就没有存在的必要了,当然如果你是要安装更新并管理一大堆电脑的系统管理员就另当别论咯。更何况,我们再次安装时,只要你选择了一个合适的软件源,那下载速度一样是飞快的。因此,我们隔一段时间就可清理一下apt-get等软件管理器下载下来的安装包咯。

    a、我们先看一下,这些安装包占了多大空间吧。按快捷键ctrl+alt+t打开终端,输入命令

    du  –h  /var/cache/apt/archives

    回车之后,我们就可以看到安装包所占用的空间咯。

    那我们就来删除这些软件包吧。若你生性小心谨慎,那就只删除那些你已经将其卸载掉的软件的软件。删除你已经卸载掉的软件包的命令为

    sudo apt-get autoclean

    若你想清理出更多的空间,而且网速又比较快的话,那你大可以把电脑上存储的安装包全部卸载咯,命令为

    sudo apt-get clean

    还有一类软件包,我们每个人都应该删除,那就是你已经卸载了,但是一些只有它依赖而别的软件包都不需要的软件包还留在你的系统里。说简单点就是,类似于你在windows系统中卸载软件时残留在系统里的垃圾咯。卸载这些孤立包的命令为

    sudo apt-get autoremove

    b、删除不用的老旧内核
    若你的系统更新过好多次,如Ubuntu,在系统升级的过程中,其所使用Linux内核也可能更新。因此,升级多次后,你的boot文件夹就会变得比较大,其原因就是因为虽然系统更新升级了新内核,但是老内核依然留在了你的系统中。也许你会说系统太笨了,不知道升级了新的就该把老的删除吗?实际上,不删除掉老的内核也是一种安全测试。虽然说,系统升级包在释放出之前已经进行了广泛的测试,但依然可能有意外存在,所以才不删除掉老的内核,以便于使用新升级的内核无法启动时,你能马上使用老内核进行启动,不至于导致你无法进入系统的悲剧。不过在你升级完毕,重启后能进入系统后,说明新内核已经很好的兼容了你的电脑,那么你就可以放心大胆的删除掉老内核咯,也好腾出更多空间让你使用哦。

    不过老内核时一定要小心,那就是——千万不要删错咯。所以删除之前要先看一看你现在正在使用的内核是哪一个。方法是在终端中输入命令

    uname –r,然后看其显示的内核版本是多少。看准了自己使用的内核后,你就可以放心大胆的删除那些不用的老内核。

    打开终端,敲入命令dpkg --get-selections | grep linux

    然后将不用的内核文件image、头文件headers删除掉就可以咯。在终端中输入命令

    sudo apt-get purge  内核文件名  头文件名

    删除内核后,就可以省下很多空间哦
    这块我没有很完整的截图,但是删除完后,我只剩两个内核:

    dpkg --get-selections |grep linux-image命令可以查看内核信息

    参考:https://www.cnblogs.com/yc_sunniwell/archive/2010/07/15/1778265.html

    https://blog.csdn.net/hahavslinb/article/details/45196961

     由于保守起见,没有删除generic这个。暂时不影响,随便他了。

    6、压缩虚拟机 vdi 文件 

    升级后,虚拟机文件变得很大了,6.9G了,本来才2.3G

    因此网上找方法:参考了https://tsov.net/uupee/23672/

    我按照下面的步骤进行的:

    virtualBox压缩虚拟机文件
    一、启动虚拟机
        在虚拟机系统里执行:
                碎片整理: sudo dd if=/dev/zero of=zero.fill
                删除碎片文件: sudo rm -f zero.fill

    这两个命令不做也行,有一次我执行了后,系统提示无足够空间,导致,虚拟机下次无法开机,因此,这个不做也可以,谨慎!!!!

    经过几次安装不同版本的linux,发现这个命令是可以正常工作的,就是需要时间,记得一定要执行删除操作~!!

      完成指令后关闭虚拟机。
    二、宿主机以管理员模式打开命令提示符,执行以下命令:
            cd 虚拟机安装的目录。
            开始执行压缩命令: VboxManage modifyhd "虚拟机文件名.vdi" --compact

    压缩命令如下画面:也是等待一段时间的。

      最后我的虚拟机文件只有4G多了。

    7、总结

    为何我折腾一下升级呢,其实是不用升级的,清华大学的镜像源中有14.04的,最老可以使用12.04的,说明使用14.04是可以的。但是纵向多学习一下,而且升级了系统对自己了解linux比较有好处。因此特意花了一晚上和一早上的时间来 折腾一下,巩固以前Linux的操作,找回过去的记忆。

    下一篇文章记录下如何用共享文件来学习c语言的编译。

  • 相关阅读:
    SVN 安装 使用指南
    使用angular-cli快速搭建项目命令
    angular 路由的引用
    c#默认类的修饰符。
    c#
    js改变dom对象样式
    jquery常用函数
    PHP 文件上传
    php 表单代码
    Python 条件语句
  • 原文地址:https://www.cnblogs.com/CodeWorkerLiMing/p/12316538.html
Copyright © 2011-2022 走看看