• [linux]重拾linux


    起因

    因为想重拾起linux,同时需要用docker起几个镜像,用来学习网络知识。本来想直接去阿里云上买,后来一想自己机器上,起一个linux是个不错的选择,毕竟不花钱!

    还可以用来做本地测试,学习使用linux、docker等。记录下过程,防止以后忘记!(所以不会涉及具体的安装步骤)

    下载

    网易开源镜像站,挑选一个linux下载。我安装linux只要是为了学习运维方面的知识,同时用于进行网络知识方面的实践。如果你跟我一样,推荐Ubuntu server版本,纯字符界面,就跟一个服务器一样。

    安装时,注意:语言选择英文,否则会因为没有安装中文字体,显示字符会出现问题。其它的没有什么特别的直接一步步的走下来就行了。

    ubuntu server语言选成中文,换回英文方法:

    修改Ubuntu的配置文件/etc/default/locale
    将原来的配置内容修改为
    LANG=”en_US.UTF-8″
    LANGUAGE=”en_US:en”
    

    上手

    VirtualBox(后面称作VB)中linux就是一个服务器,我不想直接在上面进行操作,因为上面什么都没有!所以直接采用ssh的方式,也就是使用真实的计算机操作VB中的linux。

    首先,设置VB的网络,设置为NAT(我认为就是本地端口转发,用于与VM的通信)。如下:

    然后,设置端口转发,在真实机下操作:

    • 方法1:直接输入:VBoxManage modifyvm myserver --natpf1 "ssh,tcp,,3022,,22"myserver字段就是VM(虚拟机)的名字。例如我的就是‘learn_networking’。

    • 方法2:保证VM在运行状态下,操作步骤如下:

    最后,在本机中输入:ssh -p 3022 user@127.0.0.1,‘user’字段就是linux中的用户名。连接成功如下:

    最好修改下源(就是apt安装文件的时候去哪里找,否则通过apt安装软件会慢),请参考

    他能干嘛?

    它可以做一个本地的测试环境。比如,VM安装的环境和线上服务器一样。在开发完一个功能之后,通过git,可以先把新的代码部署到刚设置好的本地的VM上,然后在本地测试,如果没有问题,就可以上线了。

    比如:VM起了一个服务,监听的是8000端口,本机上查看效果。我们就可以像上面一样,修改NAT,如果本机想通过127.0.0.1:3008访问VM上的服务,那么我就把NAT改成如下图所示:

    最后,在VM用python的SimpleHTTPServerBaseHTTPServer内建模块,写个简单的server脚本——'test.py',用来演示上面设置的NAT是否成功。代码如下:

    import SimpleHTTPServer
    import BaseHTTPServer
    
    def test():
        BaseHTTPServer.test(SimpleHTTPServer.SimpleHTTPRequestHandler,
    	                    BaseHTTPServer.HTTPServer)
    
    # 默认监听:8000端口
    test()
    

    同目录下,写一个‘index.html’文件,因为SimpleHTTPRequestHandler,默认返回同目录下的index.html文件。

    <!DOCTYPE html>
    <html>
    <head lang="en">
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
    <h1> 我是削微寒的VM:xueweihan</h1>
    <p>用来构建本地的测试环境、学习网络编程的知识、练习linux</p>
    </body>
    </html>
    

    在VM中,执行python test.py,运行效果如下:

    参考

  • 相关阅读:
    【Jdbc/Metadata】借助Metadata获得表字段的设定细节
    MASTER: Multiaspect nonlocal network for scene text recognition
    Centos8 中如何使用journalctl分析日志
    如何调试SSH连接
    如何将lvm卷移动到另一台服务器中
    CentOS8中恢复根目录为默认权限
    lightdb/postgresql中序列的使用以及oracle兼容计划
    PostgreSQL 15 Beta 1 发布
    PostgreSQL 14.3、13.7、12.11、11.16 和 10.21 发布
    MySQL/mariadb到LightDB开发迁移指南
  • 原文地址:https://www.cnblogs.com/xueweihan/p/5463173.html
Copyright © 2020-2023  润新知