WSL2安装CentOS7和CentOS8

news2024/10/7 16:25:52

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、下载ZIP包?
  • 二、安装
    • 1.打开Windows子系统支持
    • 2.安装到指定位置
    • 3.管理虚拟机
    • 4.配置虚拟机
      • 1.配置国内源
      • 2.安装软件
      • 3.安装第三方源
    • 5.配置用户
      • 1.创建用户
      • 2.赋予sudo权限
      • 3.测试sudo权限
    • 6.配置登录用户
  • 总结


前言

Windows11官方WSL2已经支持UbuntuOpen SUSEDebianOracle等等发行版,由于CentOS也是非常经典的一个发行版,由于官方尚未提供安装方式,所以我整理了下安装方式给有需要的人,方法很简单。


一、下载ZIP包?

这一步比较简单,ZIP包本身也不大,打不开页面的请“科学上网”。
CentOS-WSL

CentOS-8
在这里插入图片描述

CentOS-7
在这里插入图片描述

二、安装

1.打开Windows子系统支持

WSL需要Windows子系统支持和虚拟化支持,打开方式请看我的文章或自行搜索下,方法很简单,这里就不赘述了。

2.安装到指定位置

强烈建议不要安装到C盘,这个虚拟机会越用越大,未来可能把C盘撑爆。虽然可以移动,但是配置起来麻烦,不如一步到位。

首先,在D盘创建一个文件夹CentOS8,如果安装7的话就创建文件夹CentOS7

其次,将下载的ZIP包解压到对应的目录下,你会得到一个压缩文件和一个可执行文件。以CentOS8为例:初始有CentOS8.exerootfs.tar.gz两个文件,中间那个文件是配置后才有的。
在这里插入图片描述
最后,双击CentOS8.exe等待配置完成,这个时候你应该已经进入系统了,使用的用户是root

安装差不多就到这里了,接下来我们简单配置下。

3.管理虚拟机

如果退出了也不用每次都到文件夹下面去打开,你只要执行wsl -d <发行版>就行了。

wsl --list -v
  NAME            STATE           VERSION
* Ubuntu-20.04    Stopped         2
  Ubuntu-22.04    Running         2
  Ubuntu-18.04    Stopped         2
  CentOS8         Stopped         2
  CentOS7         Stopped         2

上面是我安装的所有版本,可以看到CentOS8CentOS7就是我通过前面的方式安装的。

使用下面的命令打开CentOS8

wsl -d CentOS8

接下来最重要的一步配置,主要包括配置国内源配置用户

4.配置虚拟机

1.配置国内源

原始的CentOS8发行版里面是没有源的,无法更新缓存,也就是不能安装软件。

另外,CentOS7发行版里面有国外源,可以缓存,速度没有保证。

这里贴出CentOS8的换源操作,CentOS7的请自行查阅。

#备份原始源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

#下载新的源wget方法
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo

#下载新的源curl方法,这个发行版是没有预装wget的,需要使用curl,效果一样
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo

#替换字段
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*

#缓存
yum clean
yum makecache

2.安装软件

对于习惯使用Debian的用户可能会有差别,他们的很多包名不一样。安装软件没有Debian系那么简单。

这里介绍几个简单的安装包方法:

cmake:

yum install cmake

wget:

yum install wget

和Ubuntu不一样的是,你安装gcc它会同时安装g++,只不过他这里不叫g++

3.安装第三方源

CentOS有一个令人诟病的地方,官方的源有时候安装不了一些软件。比如:ffmpeghtop等等。这个时候就只能通过其它的方法解决了,好在不是太难,当然也够折腾一下的了。

这里以CentOS8安装ffmpeg为例:

sudo yum install https://download1.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm
sudo yum install -y http://rpmfind.net/linux/epel/7/x86_64/Packages/s/SDL2-2.0.14-2.el7.x86_64.rpm
sudo yum install -y ffmpeg

对,没错不出意外的话还是出意外了。SDL2-2.0.14-2.el7.x86_64.rpm这个包不存在,我去网站找了一圈没有找到,这个是ffmpeg依赖的多媒体库,必须装上去才行。

所以,只能另辟蹊径了,接着往下看。

SDL2下载

包含了x86x86_64的两个指令的,按需下载即可。

在这里插入图片描述
下载完成后先安装SDL2,安装完成后再安装ffmpeg就没问题了,实测运行没问题,也支持NVCUVID

同时,WSL的图形界面也是支持的,不需要安装额外的东西。

基本你添加了额外源之后,像htop这种之前不能安装的现在都可以安装了,但可能也不包括所有的包。

其它的包各位另行想办法吧!

5.配置用户

差点漏了很重要的一个配置,我们登录CentOS8CentOS7用的都是root用户,我们可以自己建一个用户,然后将我们的账号设为登录账号,防止一直以root操作引发灾难问题。

1.创建用户

这个比肩简单,Linux应该都一样的。这里我推荐adduser,会默认创建/home/<用户>目录,不用指定额外参数,提示输入密码就完成了。

adduser anold

因为这里没有打开密码验证,可以随便输,只做了简单的弱密码提示,直接过了就行了,没有影响。

2.赋予sudo权限

这里我发现连sudo程序都没有安装,我选择使用另一种方法配置用户的速度权限,那就是修改/etc/sudoers。
这一步一定要在root账户下进行,因为我们创建的用户这会还没有sudo权限。

yum install sudo
vim /etc/sudoers
Defaults    env_keep += "MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE"
Defaults    env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES"
Defaults    env_keep += "LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE"
Defaults    env_keep += "LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY"

#
# Adding HOME to env_keep may enable a user to run unrestricted
# commands via sudo.
#
# Defaults   env_keep += "HOME"

Defaults    secure_path = /sbin:/bin:/usr/sbin:/usr/bin

## Next comes the main part: which users can run what software on
## which machines (the sudoers file can be shared between multiple
## systems).
## Syntax:
##
##      user    MACHINE=COMMANDS
##
## The COMMANDS section may have other options added to it.
##
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
<你的用户>   ALL=(ALL)       ALL

## Allows members of the 'sys' group to run networking, software,
## service management apps and more.
# %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS

## Allows people in group wheel to run all commands
%wheel  ALL=(ALL)       ALL

## Same thing without a password
# %wheel        ALL=(ALL)       NOPASSWD: ALL

## Allows members of the users group to mount and unmount the
## cdrom as root
# %users  ALL=/sbin/mount /mnt/cdrom, /sbin/umount /mnt/cdrom

## Allows members of the users group to shutdown this system
# %users  localhost=/sbin/shutdown -h now

## Read drop-in files from /etc/sudoers.d (the # here does not mean a comment)
#includedir /etc/sudoers.d

注意:sudoers这个文件很重要,修改需要谨慎,如果是WSL我们还可以通过切换root挽救,如果是实体机可能就完犊子了。

重点就在这一句:

<你的用户>   ALL=(ALL)       ALL

这里我之前创建的是anold,所以应该是下面的样子:

anold   ALL=(ALL)       ALL

切记,wq!

3.测试sudo权限

很简单,使用sudo执行程序就行了。先把用户切换到anold,再执行更新源:

下面的命令会要求输入密码,也可以配置不需要输密码,但我是喜欢输密码,因为一方面是安全着想,另一方面是给自己留一个思考的时间,防止造成不可挽回的损害!

su - anold
sudo yum update

不出意外的话,密码验证通过后就开始更新源了,说明sudo权限增加成功了!

6.配置登录用户

不想打字了,我之前一篇文章讲述了Ubuntu配置非root用户为默认用户,同样的方法也适用于CentOS8
WSL配置默认用户


总结

1、有CentOS需求的福音
2、只支持CentOS8CentOS7两个发行版。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/830957.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

iNav飞控之FAILSAFE机制

iNav飞控之FAILSAFE机制 1. 源由2. 设计2.1 触发场景2.1.1 上锁时触发2.1.2 解锁时触发 2.2 FAILSAFE策略2.2.1 DROP2.2.2 LAND2.2.3 SET-THR2.2.4 RTH2.2.5 NONE 2.3 异常场景2.3.1 救援上锁2.3.2 救援后解锁2.3.3 FAILSAFE地面预判2.3.4 RTH丢失定位2.3.5 RC链路恢复 3. 重要…

怎样做好字幕翻译服务?

我们知道&#xff0c;字幕泛指影视作品后期加工的文字&#xff0c;往往显示在电视、电影、舞台作品中。字幕翻译就是将外国影片配上本国字幕或者是将本国影片配上外国字幕。那么&#xff0c;字幕翻译的主要流程是什么&#xff0c;怎样做好字幕翻译服务&#xff1f; 据了解&…

二进制链表转整数

给你一个单链表的引用结点 head。链表中每个结点的值不是 0 就是 1。已知此链表是一个整数数字的二进制表示形式。 请你返回该链表所表示数字的 十进制值 。 示例 1&#xff1a; 输入&#xff1a;head [1,0,1] 输出&#xff1a;5 解释&#xff1a;二进制数 (101) 转化为十进…

IDEA超强XSD文件编辑插件-XSD / WSDL Visualizer

前言 XSD / WSDL Visualizer可以简化XML架构定义(XSD)和WSDL文件编辑过程; 通过使用与IntelliJ无缝集成的可视化编辑器&#xff0c;转换处理XSD和WSDL文件的方式。告别导航复杂和难以阅读的代码的挫败感&#xff0c;迎接流线型和直观的体验。 插件安装 在线安装 IntelliJ IDE…

yxBUG记录

1、 原因&#xff1a;前端参数method方法名写错。 2、Field ‘REC_ID‘ doesn‘t have a default value 问题是id的生成问题。 项目的表不是自增。项目有封装好的方法。调用方法即可。 params.put("rec_id",getSequence("表名")) 3、sql语句有问题 检…

【iOS】App仿写--天气预报

文章目录 前言一、首页二、搜索界面三、添加界面四、浏览界面总结 前言 最近完成了暑假的最后一个任务——天气预报&#xff0c;特此记录博客总结。根据iPhone中天气App的功能大致可以将仿写的App分为四个界面——首页&#xff0c;搜索界面&#xff0c;添加界面&#xff0c;浏…

基金公司最佳实践:如何用价值流分析,洞察研发效能瓶颈?

近日&#xff0c;ONES 受邀参加 QECon 2023 全球软件质量&效能大会&#xff08;北京站&#xff09;。在会上&#xff0c;ONES 高级研发总监&首席解决方案架构师陈亮宇&#xff0c;发表了主题为《聚焦价值流分析&#xff0c;寻找研发效能的「北极星」》的演讲&#xff0…

NSX 4.1中新的网络和高级安全功能介绍

我们很高兴地宣布VMware NSX 4.1全面上市&#xff0c;该版本为私有云、混合云和多云的虚拟化网络和高级安全提供了新功能。该版本的新特性和功能将使VMware NSX客户能够利用增强的网络和高级安全&#xff0c;提高运营效率和灵活性&#xff0c;并简化了故障排除的过程。 领先于…

使用免费MES系统的成功经验

随着科技的发展和数字化时代的到来&#xff0c;越来越多的工厂开始采用生产管理软件来提高生产效率和管理水平。 本文将分享一家工厂在使用免费生产管理软件后的成功经验&#xff0c;希望对广大读者有所帮助。 “之前也是在市面上找了很多厂家咨询报价&#xff0c;少则十几万多…

shell脚本清理redis模糊匹配的多个key,并计算释放内存大小

#!/bin/bash# 定义Redis服务器地址和端口 REDIS_HOST"localhost" REDIS_PORT6380# 获取Redis当前内存使用量&#xff08;以字节为单位&#xff09; function get_redis_memory_usage() {redis-cli -h $REDIS_HOST -p $REDIS_PORT INFO memory | grep "used_memo…

一个页面多触发事件需要共用一个接口处理数据,封装回调函数方法回调处理数据

// 事件共用方法queryData(code,data,callback){let params{code:code, //根据实际情况传入参数data:data //根据实际情况传入参数} // 传入借口参数this.$axios({url:, // 接口url地址method:post, // 接口类型params:params // 接口接收参数}).then((res)>{if(res&am…

有防水性能不错的耳机吗?这几款耳机游泳的时候都可以戴

Hey&#xff0c;朋友们&#xff01;清爽初夏是不是又到了减肥塑形的好时候了呢&#xff1f;不知道有没有喜欢一边运动一边听音乐的小伙伴呢&#xff1f;运动健康的同时又放松心情确实一举多得。不过现在市面上大多数耳机都不适合我们在运动中携带&#xff0c;常常会因为我们运动…

【工具】自动搜索Research网站的学术会议排名

转载请注明出处&#xff1a;小锋学长生活大爆炸[xfxuezhang.cn] Research.com是一个可以搜索学术会议网站的影响因子的网站。 好用是好用&#xff0c;但有一个缺点&#xff1a;得手动选择类目。有这么多类目&#xff0c;一个个手动选也太累了。 所以做了一个自动搜索的小工具&a…

图片资源

1.TextureType&#xff1a; Default&#xff1a;默认图片类型 Normal&#xff1a;法向贴图 Editor GUI&#xff1a;编辑器使用的图片 Sprite&#xff1a;精灵格式图片 Cursor&#xff1a;鼠标贴图 Cookie&#xff1a;灯光Cookie贴图 Lightmap&#xff1a;灯光贴图 Single…

aws的EC2云服务器自己操作记录

亚马逊官网有免费试用1年的服务器 以下内容参考 1. 启动生成实例 1.1 创建实例时需要生成 使用的默认的 Debian 和 一个.pem后缀的秘钥 1.2 网上下一个Mobaxterm ,实例名是公有 IPv4 DNS 地址 ,使用SSH连接,登录名是admin 1.3 登录进去后 输入用户名 admin 后进去,sudo …

【赠书活动|第三期《Spring Cloud Alibaba核心技术与实战案例》】

文章目录 特色内容简介作者简介抽奖方式 特色 不留遗漏&#xff1a;全面覆盖Dubbo核心知识点 直击要害&#xff1a;实战化案例精准定位技术细节 学以致用&#xff1a;精要式演示确保开发、学习不脱节 潜移默化&#xff1a;研磨式知识讲解渗透技术要点 提升效率&#xff1a;垂直…

W5100S-EVB-PICO做DNS Client进行域名解析

前言 在上一章节中我们用W5100S-EVB-PICO通过dhcp获取ip地址&#xff08;网关&#xff0c;子网掩码&#xff0c;dns服务器&#xff09;等信息&#xff0c;给我们的开发板配置网络信息&#xff0c;成功的接入网络中&#xff0c;那么本章将教大家如何让我们的开发板进行DNS域名解…

【网络安全带你练爬虫-100练】第16练:使用session发送请求

目录 一、目标1&#xff1a;使用seesion进去请求 二、网络安全O 一、目标1&#xff1a;使用seesion进去请求 &#xff08;1&#xff09;应用&#xff1a; 通过创建会话&#xff08;session&#xff09;对象来请求并爬取返回的数据包 情景&#xff1a;需要登录才能爬取的网…

深度学习Redis(4):哨兵

前言 在 Redis&#xff08;3&#xff09;&#xff1a;主从复制 中曾提到&#xff0c;Redis主从复制的作用有数据热备、负载均衡、故障恢复等&#xff1b;但主从复制存在的一个问题是故障恢复无法自动化。本文将要介绍的哨兵&#xff0c;它基于Redis主从复制&#xff0c;主要作…

HET-1型多功能二维材料转移平台

HET-1型多功能二维材料转移平台 产品介绍 HET-1型二维转移平台适用于石墨烯、各类过渡金属化合物、黑磷等多种单层及其多层二维材料的精确定位转移及范德瓦尔斯异质结的准确制备&#xff0c;实现了低维材料转移的精确可视化操作。本套转移平台由转移台模块、样品台模块、显微观…