当前位置: 首页 > news >正文

Windows11专业版使用虚拟化技术安装Linux(CentOS7)

Windows11专业版使用虚拟化技术安装Linux(CentOS7)

1.Windows11版本信息

2.启用wsl2及Hyper-V相关功能

#wsl2Enable-WindowsOptionalFeature-Online-FeatureName$("Microsoft-Windows-Subsystem-Linux","VirtualMachinePlatform","Containers")#Hyper-V方式一Enable-WindowsOptionalFeature-Online-FeatureName$("Microsoft-Hyper-V","VirtualMachinePlatform","Containers")-All#Hyper-V方式二Enable-WindowsOptionalFeature-Online-FeatureNameMicrosoft-Hyper-V-All#关闭(重置)Hyper-VDisable-WindowsOptionalFeature-Online-FeatureNameMicrosoft-Hyper-V-All Disable-WindowsOptionalFeature-Online-FeatureNameVirtualMachinePlatform Disable-WindowsOptionalFeature-Online-FeatureNameContainers bcdedit /set hypervisorlaunchtype off bcdedit /enum|findstr"hypervisorlaunchtype"

3.虚拟化技术之WSL2

3.1Win11命令行wsl命令无法使用

WSL出现问题,提示“系统找不到相关路径”或者“系统找不到指定的文件“

3.2CentOS7-下载

Windos11下通过WSL安装centos7系统

记录:wsl2 安装 centOS7 一些问题解决 并 使用shell 工具连接

3.3CentOS7-安装

3.4DockerDesktop版本信息

窗户 |Docker 文档下载地址1下载地址2

3.5wls相关命令

#查看WSL版本信息wsl--version#查看WSL状态wsl--status#列出已安装的 Linux 发行版wsl-l-v#终止特定实例(如果需要终止该子系统)wsl--terminateCentOS7#重启wsl服务wsl--shutdown#设置默认 Linux 发行版(若想将CentOS7设为默认)wsl --set-default CentOS7#将WSL版本设置为1或2wsl --set-version#设置默认 WSL 版本为2wsl --set-default-version2#运行特定的Linux发行版wsl--distribution--user#以特定用户的身份运行wsl-u, wsl--user#更改发行版的默认用户wsl config --default-user#注销或卸载 Linux 发行版wsl--unregisterCentOS7cdD:\Environment\CentOS7 Remove-Item ext4.vhdx wsl--list--all#进入指定的子系统wsl-dCentOS7#更新WSL至最新版wsl--update#启用 systemd 管理 Linux 服务echo-e"[boot]\nsystemd=true"|sudotee-a/etc/wsl.confexit;wsl--shutdownwsl-dCentOS7

4.虚拟化技术之Hyper-V

4.1Hyper-V网络配置

4.2CentOS7-下载

CentOS 7镜像下载本文使用的版本是CentOS-7-x86_64-DVD-1810-7.6.iso

4.3CentOS7-安装

hyper-v安装linux系统,Hyper-V虚拟机上安装一个图形界面的Linux系统

4.4CentOS7网络配置

#查看宿主机Win11的ip地址ipconfig

cd/etc/sysconfig/network-scripts/

#手动编辑ifcfg-eth0文件viifcfg-eth0#或用以下内容直接替换TYPE=EthernetPROXY_METHOD=noneBROWSER_ONLY=noBOOTPROTO=dhcpDEFROUTE=yesNETMASK=255.255.255.0IPV4_FAILURE_FATAL=yesIPV6INIT=noIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=stable-privacyNAME=eth0UUID=0fad1e43-a8f0-4534-aca5-626e713336bfDEVICE=eth0ONBOOT=yesDNS1=8.8.8.8IPADDR=192.168.1.110PREFIX=24GATEWAY=192.168.1.1LAST_CONNECT=1384407977

检查网络是否已经连通

pingwww.baidu.com

4.5虚拟机的导出与导入

4.6虚拟机重命名

5.yum命令使用异常

CentOS7报错解决:Cannot find a valid baseurl for repo: base/7/x86_64

cd/etc/yum.repos.dsed-i's/mirrorlist/#mirrorlist/g'CentOS-*sed-i's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g'CentOS-* yum clean all&&yum makecache yum-yupdate yum-yinstallgcc gcc-c++makewgetyum-yinstallopenssl* openssh* yum-yinstallvimtarnet-tools ncurses

6.ssh服务及防火墙相关设置

systemctlenablesshd.service systemctl start sshd.servicerpm-qa|grepfirewalld;rpm-qa|grepfirewall-config yum-yinstallfirewalld firewall-configrpm-qifirewalld firewall-config systemctlenablefirewalld.service# 重启防火墙开机自启动systemctl restart firewalld.service# 重启防火墙服务firewall-cmd--version# 查看防火墙版本firewall-cmd --list-all# 查看已开放的端口firewall-cmd--permanent--zone=public --add-port=22/tcp# 开通sftp服务22默认端口firewall-cmd--reload# 刷新防火墙,重新载入# 关闭Selinux策略setsebool-Pftpd_full_access onsed-is#enforcing#disabled#g /etc/sysconfig/selinuxsetenforce0&&getenforce getenforce

7.搭建开发环境

7.1安装docker

Docker安装篇(CentOS7安装)

Docker入门

cat/etc/redhat-release yum removedockerdocker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine yum-yinstallgcc gcc-c++ yum-yinstallyum-utils device-mapper-persistent-data lvm2 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo yum makecache fast yuminstalldocker-ce docker-ce-cli containerd.io systemctl startdockerdockerversion

配置docker镜像源

mkdir-p/etc/docker vi/etc/docker/daemon.json//daemon.jsonwe文件内容如下{"registry-mirrors":["https://cr.laoyou.ip-ddns.com","https://image.cloudlayer.icu","https://hub.fast360.xyz","https://docker-0.unsee.tech","https://docker-cf.registry.cyou","https://docker.1panel.live","https://pwhs9o2u.mirror.aliyuncs.com"]}chmod777/etc/docker/daemon.json systemctl daemon-reload systemctl restart docker

7.2docker常用命令

systemctl startdockersystemctl statusdockersystemctlenabledockerdockernetwork inspect bridgedockerexec-itmysqlping192.168.1.110#windows使用 findstr ,linux使用 grepdockerinspect oralce11g|grepIPAddressnetstat-tanlp|grep3306dockerport mysqlnetstat-ano|findstr :3306dockerexec-itmysqlbashdockersystem prune-adockerps-a#更新容器至自启动状态dockerupdate 0af13655f6d6--restart=always

7.3安装mysql数据库

#拉取镜像dockerpull mysql:8.0.21#查看镜像dockerimages#运行镜像,启用mysql实例dockerrun-d--namemysql-p3306:3306-eMYSQL_ROOT_PASSWORD=mc123456--restart=always mysql:8.0.21dockerupdate 0af13655f6d6--restart=always firewall-cmd--permanent--zone=public --add-port=3306/tcp firewall-cmd--reloaddockerps-alldockerrm容器ID

7.4安装redis数据库

dockersearch redisdockerpull redisdockerrun-p6379:6379--nameredis-d--restart=always redis

7.5安装oracle数据库

dockerpull iatebes/oracle_11gdockerrun-d--privileged=true--nameoralce11g-p1521:1521-eORACLE_SID=orcl-eORACLE_PWD=oracle-eENABLE_ARCHIVELOG=true--restart=always iatebes/oracle_11gdockernetwork inspect bridgedockerexec-itoralce11gping172.17.0.2dockerinspect oralce11g|findstr IPAddressdockerport mysqldockerexec-itoralce11gbashsu- oracle sqlplus /nolog conn / as sysdba ALTERUSERsystem IDENTIFIED BY oracle;GRANT SYSDBA TO system;exit;su- oracle sqlplus / as sysdba conn system/root as sysdba;# 查询实例selectinstance_name fromv$instance;show parameter name# 查询数据库selectname fromv$datafile;# 创建表空间create tablespace CK_BUS_TABLE_SPACE datafile'/opt/oracle/app/oradata/orcl/CK_BUS_TABLE_SPACE.dbf'size 200m autoextend on extent managementlocalsegment space management auto;# 查询数据库selectname fromv$datafile;# 创建用户并指定表空间# CREATE USER 用户 IDENTIFIED BY 用户密码 DEFAULT TABLESPACE NOTIFYDB;CREATEUSERCK_BUS IDENTIFIED BY ck_bus DEFAULT TABLESPACE CK_BUS_TABLE_SPACE;# 给用户授予dba的权限grant SYSDBA to CK_BUS;# 登录账号conn CK_BUS/ck_bus as sysdba;select* from dual;exit;

ORA-01950: no privileges on tablespace ‘USERS’ 处理

--检查当前配额SELECTtablespace_name,max_bytesFROMdba_ts_quotasWHEREusername='CK_BUS';-- 给某个用户在 CK_BUS_TABLE_SPACE 表空间上无限制使用权限ALTERUSERCK_BUS QUOTA UNLIMITEDONCK_BUS_TABLE_SPACE;-- 或者分配固定配额,比如 1000MALTERUSERCK_BUS QUOTA1000MONCK_BUS_TABLE_SPACE;--ORA-01045: user lacks CREATE SESSION privilege; logon deniedgrantcreatesession,resourcetoCK_BUS;

7.6安装Java环境

Docker 安装JDK1.8

dockerpull java:8dockerrun-d-it--namejava8--restart=always java:8dockerexec-itjava8 /bin/bashjava-version

7.7部署Java项目

#编写Dockerfile文件#导入java项目依赖FROM java:8#暴露java项目的端口EXPOSE8099# 将本地的 JAR 文件复制到容器中COPY ck-bus-admin-1.0.0-BOOT.jar /app.jar# 运行 JAR 文件CMD["java","-jar","/app.jar"]#将Dockerfile文件和java项目的jar包上传至linux的同一级目录#执行镜像构建命令dockerbuild-tck_bus.#查看java项目镜像构建情况dockerimages#启动java项目dockerrun-d--nameck_bus-test-p8099:8099--restart=always ck_bus#查看java项目执行日志dockerlogs ck_bus-testcurl192.168.1.110:8090#进入java项目容器之内dockerexec-itck_bus-testbash#查看docker容器执行情况dockerps-a#删除java项目步骤,停止服务,删除容器,删除镜像dockerstop ck_bus-testdockerrmck_bus-testdockerrmi ck_bus

8.Windows安装oracle轻量连接

无需安装Oracle客户端,轻松实现ODBC链接Oracle数据库

通过ODBC连接Oracle数据库

官网下载

下载Microsoft Visual C++ 2005 Service Pack 1 Redistributable Package MFC 安全更新

删除未使用的驱动

注册表路径:计算机\HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI

#新建文件夹 D:\ProgramFiles\Oracle\instantclient_11_2\network\ADMIN #新建文件 tnsnames.ora 并添加如下内容 # tnsnames.ora Network Configuration File: D:\ProgramFiles\Oracle\instantclient_11_2\network\ADMIN\tnsnames.ora # Generated by Oracle configuration tools. LISTENER_ORCL = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.110)(PORT = 1521)) ORACLR_CONNECTION_DATA = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) ) (CONNECT_DATA = (SID = CLRExtProc) (PRESENTATION = RO) ) ) ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.110)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) ) #新建文件 listener.ora 并添加如下内容 # listener.ora Network Configuration File: D:\ProgramFiles\Oracle\instantclient_11_2\network\ADMIN\listener.ora # Generated by Oracle configuration tools. SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = CLRExtProc) (ORACLE_HOME = D:\ProgramFiles\Oracle\instantclient_11_2) (PROGRAM = extproc) ) ) LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.110)(PORT = 1521)) (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) ) )

9.Windows跟踪命令提示符cmd的执行情况

SxsTrace Trace -logfile:d:\SxsTrace.etl SxsTrace Parse -logfile:d:\SxsTrace.etl -outfile:d:\SxsTrace.txt

http://www.cnnetsun.cn/news/4309636.html

相关文章:

  • 用AI让AI更聪明:最小Agent的四大关键工程实践
  • GradCuit:信用分配梯度流如何增强大模型潜在空间推理
  • ComfyUI工作流从零搭建:从文生图到AI视频生成全攻略
  • CAD 2027零基础入门:安装、画图到出图全流程避坑指南
  • DeepSeek V4 Flash 接入 Codex 完整指南:配置、API Key与报错排查
  • Wasserstein距离度量下的ULA混合时间测量与Python实验
  • 中段面试制胜指南:二面三面与HR面全攻略
  • STM32U3 USBX设备开发:HAL PCD初始化“缺失”的真相与排查
  • Dubbo面试八股文:服务暴露、Nacos适配与性能调优全解析
  • Adapter+持续学习:恶意流量识别少样本增量更新的新思路
  • Goose AI Agent 入门指南:10 分钟装好跑通第一次会话,MCP 扩展 70+ 外部工具
  • 英伟达拟收购Hugging Face:AI模型分发与GPU推理生态将如何重塑
  • Starship 提示符 5 分钟上手:3 行配置改出你自己的终端提示符
  • BT 公共 Tracker 列表上手指南:选列表、配 qBittorrent、验证效果
  • 如何搭建 Gitea Actions 自动化流水线
  • OBS Studio 免费直播录制教程:从零搭场景到稳定开播
  • 3 分钟给 Windows 减重:Win11Debloat 卸载预装软件与隐私优化上手指南
  • 算力黑洞下的AI成本控制:大模型API选型与优化指南
  • DBeaver 插件安装与冲突排查完全指南:第三方扩展怎么选、怎么集成
  • Cloudflare Computer同步协议30分钟深入:从ChangeEntry到applyChanges全流程
  • Wi-Fi室内定位实战指南:不依赖UWB/蓝牙的低成本部署方案
  • 全桥峰值电流控制实战:LAT1319 Push-Pull模式斜坡补偿与调试
  • 一周入门大模型:从本地部署到LoRA微调完整路线
  • AI写代码的完整边界:从工具选型到本地部署实践指南
  • 工具调用不能只看演示效果
  • 文献综述怎么按主题分类而不是逐篇罗列:BunnyScholar三版综述生成实测
  • Docker中轻量化部署Windows X Lite完整指南:三步跑通容器
  • 如何用 3 条命令跑通 Expo:React Native 跨端开发的快速上手指南
  • STM32WL5MOC RTC走时偏差实测:从软件排错到硬件根因分析
  • 从时间戳到任务网:WBS与关键路径驱动项目排期实战