百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

windows下搭建Linux开发环境

nanshan 2024-11-23 20:14 19 浏览 0 评论

一直想写一下自己的笔记本上是怎么工作的,
本人主要Linux下开发工作, 使用的是surface laptop笔记本




Linux环境

首先必然是需要Linux的, 超薄本所以尽可能占用内存比较小的安装方式; 之前装的是Centos, 今天改装的debian所以记录一下

??使用VirtualBox安装debian虚拟机, 在安装时不安装桌面和xfce, 仅安装命令行版本;
网络: virtualbox采用双网卡的方式Host only+Bridged两个网卡.
主机模式网卡: 用于和物理机通信在debian可以设置为192.168.56.xx网段的静态地址, 物理机可以固定使用该网址访问虚拟机.
桥接模式网卡: 用于访问外网, 使用dhcp模式获取地址

地址:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
 inet 127.0.0.1/8 scope host lo
 valid_lft forever preferred_lft forever
 inet6 ::1/128 scope host
 valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
 link/ether 08:00:27:8f:31:49 brd ff:ff:ff:ff:ff:ff
 inet 192.168.56.101/24 brd 192.168.56.255 scope global enp0s3
 valid_lft forever preferred_lft forever
 inet6 fe80::a00:27ff:fe8f:3149/64 scope link
 valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
 link/ether 08:00:27:90:e6:b6 brd ff:ff:ff:ff:ff:ff
 inet 192.168.1.102/24 brd 192.168.1.255 scope global dynamic enp0s8
 valid_lft 7170sec preferred_lft 7170sec
 inet6 fe80::a00:27ff:fe90:e6b6/64 scope link
 valid_lft forever preferred_lft forever

配置:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto enp0s8
iface enp0s8 inet dhcp

auto enp0s3
iface enp0s3 inet static
 address 192.168.56.101
 netmask 255.255.255.0
# gateway 192.168.56.1

enp0s3就是仅主机模式的网卡, enp0s8则是桥接模式的网卡

debian网络配置文件地址: /etc/network/interfaces

访问Linux

virualbox是可以采用后台启动的方式的, 就是说完全不用打开virtualbox的窗口, 为了方便 我使用了一个ps1脚本

& 'E:\Program Files\Oracle\VirtualBox\VBoxManage.exe' startvm debian -type headless

sleep 20

ssh admin@192.168.56.101

& 'E:\Program Files\Oracle\VirtualBox\VBoxManage.exe' controlvm debian poweroff

本人并不精通ps1脚本, 这个脚本写的也比较随意. E:\Program Files\Oracle\VirtualBox\就是virtualbox的安装地址

??这个脚本的功能就是 1,后台启动debian; 2,ssh链接debian ssh; 3,断开后关闭debian. 这个脚本本人放在桌面上, 另外本人安装了fluent Terminal软件, 可以直接在桌面右键打开, 然后直接运行该脚本.

共享文件夹

virtualbox提供了共享文件夹的选项, 不过需要安装virtualbox的扩展, 这个各位自行寻找

??注意, 安装增强功能之前记得执行安装apt install build-essential;apt install linux-headers-uname -r`` 否则即使成功安装了增强功能, 也没办法挂载!

??此外我添加了开启启动脚本, 每次启动自行加载共享文件夹

localhost:~$ systemctl status rc-local
● rc-local.service - /etc/rc.local Compatibility
 Loaded: loaded (/lib/systemd/system/rc-local.service; enabled-runtime; vendor preset: enab Drop-In: /usr/lib/systemd/system/rc-local.service.d
 └─debian.conf
 Active: active (exited) since Sat 2019-09-28 16:01:43 CST; 8min ago
 Docs: man:systemd-rc-local-generator(8)
 Process: 408 ExecStart=/etc/rc.local start (code=exited, status=0/SUCCESS)

这是rc.local服务, debian是默认关闭的并且也没有/etc/rc.local文件

不过

#!/bin/sh

#

# rc.local

#

# This script is executed at the end of each multiuser runlevel.

# Make sure that the script will "exit 0" on success or any other

# value on error.

#

# In order to enable or disable this script just change the execution

# bits.

#

# By default this script does nothing.

mount -t vboxsf winsf /home/ad/winsf

exit 0

我们可以自己添加一个/etc/rc.local脚本, 添加可执行权限, 然后systemctl start rc-local即可, 这样开机就可以自行运行该脚本挂载共享文件夹

物理机

包管理工具

scoop

??我主要用于安装git,gcc,make,lua等, 我仅用来管理开发相关软件, 非常好用

集成IDE

因为不管什么都需要加载虚拟机然后运行也很麻烦, 于是我使用了CLion

??对于一些程序, 我也会直接在windows上直接编译直接运行.

编辑器

??正常的话, 我使用的是sublime, markdown使用的是typora

然后有需要一起交流Linux技术的可以私信1,有很多资源共享。


相关推荐

0722-6.2.0-如何在RedHat7.2使用rpm安装CDH(无CM)

文档编写目的在前面的文档中,介绍了在有CM和无CM两种情况下使用rpm方式安装CDH5.10.0,本文档将介绍如何在无CM的情况下使用rpm方式安装CDH6.2.0,与之前安装C5进行对比。环境介绍:...

ARM64 平台基于 openEuler + iSula 环境部署 Kubernetes

为什么要在arm64平台上部署Kubernetes,而且还是鲲鹏920的架构。说来话长。。。此处省略5000字。介绍下系统信息;o架构:鲲鹏920(Kunpeng920)oOS:ope...

生产环境starrocks 3.1存算一体集群部署

集群规划FE:节点主要负责元数据管理、客户端连接管理、查询计划和查询调度。>3节点。BE:节点负责数据存储和SQL执行。>3节点。CN:无存储功能能的BE。环境准备CPU检查JDK...

在CentOS上添加swap虚拟内存并设置优先级

现如今很多云服务器都会自己配置好虚拟内存,当然也有很多没有配置虚拟内存的,虚拟内存可以让我们的低配服务器使用更多的内存,可以减少很多硬件成本,比如我们运行很多服务的时候,内存常常会满,当配置了虚拟内存...

国产深度(deepin)操作系统优化指南

1.升级内核随着deepin版本的更新,会自动升级系统内核,但是我们依旧可以通过命令行手动升级内核,以获取更好的性能和更多的硬件支持。具体操作:-添加PPAs使用以下命令添加PPAs:```...

postgresql-15.4 多节点主从(读写分离)

1、下载软件[root@TX-CN-PostgreSQL01-252software]#wgethttps://ftp.postgresql.org/pub/source/v15.4/postg...

Docker 容器 Java 服务内存与 GC 优化实施方案

一、设置Docker容器内存限制(生产环境建议)1.查看宿主机可用内存bashfree-h#示例输出(假设宿主机剩余16GB可用内存)#Mem:64G...

虚拟内存设置、解决linux内存不够问题

虚拟内存设置(解决linux内存不够情况)背景介绍  Memory指机器物理内存,读写速度低于CPU一个量级,但是高于磁盘不止一个量级。所以,程序和数据如果在内存的话,会有非常快的读写速度。但是,内存...

Elasticsearch性能调优(5):服务器配置选择

在选择elasticsearch服务器时,要尽可能地选择与当前业务量相匹配的服务器。如果服务器配置太低,则意味着需要更多的节点来满足需求,一个集群的节点太多时会增加集群管理的成本。如果服务器配置太高,...

Es如何落地

一、配置准备节点类型CPU内存硬盘网络机器数操作系统data节点16C64G2000G本地SSD所有es同一可用区3(ecs)Centos7master节点2C8G200G云SSD所有es同一可用区...

针对Linux内存管理知识学习总结

现在的服务器大部分都是运行在Linux上面的,所以,作为一个程序员有必要简单地了解一下系统是如何运行的。对于内存部分需要知道:地址映射内存管理的方式缺页异常先来看一些基本的知识,在进程看来,内存分为内...

MySQL进阶之性能优化

概述MySQL的性能优化,包括了服务器硬件优化、操作系统的优化、MySQL数据库配置优化、数据库表设计的优化、SQL语句优化等5个方面的优化。在进行优化之前,需要先掌握性能分析的思路和方法,找出问题,...

Linux Cgroups(Control Groups)原理

LinuxCgroups(ControlGroups)是内核提供的资源分配、限制和监控机制,通过层级化进程分组实现资源的精细化控制。以下从核心原理、操作示例和版本演进三方面详细分析:一、核心原理与...

linux 常用性能优化参数及理解

1.优化内核相关参数配置文件/etc/sysctl.conf配置方法直接将参数添加进文件每条一行.sysctl-a可以查看默认配置sysctl-p执行并检测是否有错误例如设置错了参数:[roo...

如何在 Linux 中使用 Sysctl 命令?

sysctl是一个用于配置和查询Linux内核参数的命令行工具。它通过与/proc/sys虚拟文件系统交互,允许用户在运行时动态修改内核参数。这些参数控制着系统的各种行为,包括网络设置、文件...

取消回复欢迎 发表评论: