Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
U kunt elke Linux-distributie in het Windows-subsysteem voor Linux (WSL) gebruiken, zelfs als deze niet beschikbaar is in de Microsoft Store, door het te importeren met een tar-bestand.
In dit artikel wordt beschreven hoe u de Linux-distributie, CentOS, importeert voor gebruik met WSL door het tar-bestand te verkrijgen met behulp van een Docker-container. Dit proces kan worden toegepast om elke Linux-distributie te importeren.
Een tar-bestand voor de distributie verkrijgen
Eerst moet u een tar-bestand ophalen dat alle binaire Linux-bestanden voor de distributie bevat.
U kunt een tar-bestand op verschillende manieren verkrijgen, waaronder:
- Download een opgegeven tar-bestand. U vindt een voorbeeld voor Alpine in de sectie 'Mini Root Filesystem' van de alpine Linux-downloadsite .
- Zoek een Linux-distributiecontainer en exporteer een exemplaar als tar-bestand. In het onderstaande voorbeeld ziet u dit proces met behulp van de CentOS-container.
Een tar-bestand verkrijgen voor CentOS-voorbeeld
In dit voorbeeld gebruiken we Docker binnen een WSL-distributie om het tar-bestand voor CentOS te verkrijgen.
Vereiste voorwaarden
- U moet WSL hebben ingeschakeld met een Linux-distributie waarop WSL 2 wordt uitgevoerd.
- Docker Desktop voor Windows moet zijn geïnstalleerd met de WSL 2-engine ingeschakeld en integratie ingeschakeld. Zie de Docker Desktop-licentieovereenkomst voor updates over de gebruiksvoorwaarden.
De tar exporteren uit een container
Open de opdrachtregel (Bash) voor een Linux-distributie die u al hebt geïnstalleerd vanuit de Microsoft Store (Ubuntu in dit voorbeeld).
Zorg ervoor dat Docker Desktop wordt uitgevoerd (of als Docker is geïnstalleerd in de WSL-distributie, start de service met
sudo service docker start)Voer de CentOS-container uit in Docker:
docker run -t --name wsl_export centos ls /Exporteer de container-ID naar een tar-bestand op de gekoppelde C-schijf.
docker export wsl_export > /mnt/c/temp/centos.tar
De container opschonen
docker rm wsl_export
Met dit proces wordt het CentOS-tar-bestand geëxporteerd uit de Docker-container, zodat we het nu kunnen importeren voor lokaal gebruik met WSL.
Het tar-bestand importeren in WSL
Zodra u een tar-bestand klaar hebt, kunt u het importeren met behulp van de opdracht:
wsl.exe --import <Distro> <InstallLocation> <FileName> [Options]
Options:
--version <Version>
--vhd
CentOS-voorbeeld importeren
Het CentOS-distributie tar-bestand importeren in WSL:
Open PowerShell en zorg ervoor dat u een map hebt gemaakt waarin u de distributie wilt opslaan.
cd C:\temp mkdir E:\wslDistroStorage\CentOSGebruik de opdracht
wsl --import <Distro> <InstallLocation> <FileName>om het tar-bestand te importeren.wsl --import CentOS E:\wslDistroStorage\CentOS .\centos.tarGebruik de opdracht
wsl -l -vom te controleren welke distributies u hebt geïnstalleerd.Gebruik ten slotte de opdracht
wsl -d CentOSom uw zojuist geïmporteerde CentOS Linux-distributie uit te voeren.
WSL-specifieke onderdelen toevoegen, zoals een standaardgebruiker
Wanneer u deze --importgebruikt, wordt u standaard altijd gestart als hoofdgebruiker. U kunt uw eigen gebruikersaccount instellen, maar houd er rekening mee dat het installatieproces enigszins varieert op basis van elke verschillende Linux-distributie.
Als u een gebruikersaccount wilt instellen met de CentOS-distributie die we zojuist hebben geïmporteerd, opent u eerst PowerShell en start u op in CentOS met behulp van de opdracht:
wsl -d CentOS
Vervolgens, open uw CentOS-commando-interface. Gebruik deze opdracht om sudo- en wachtwoordinstellingenprogramma's te installeren in CentOS, een gebruikersaccount te maken en in te stellen als de standaardgebruiker. In dit voorbeeld is de gebruikersnaam 'caloewen'.
Opmerking
U wilt de gebruikersnaam toevoegen aan het sudoers-bestand, zodat de gebruiker sudo kan gebruiken. Met de opdracht adduser -G wheel $myUsername wordt de gebruiker myUsername toegevoegd aan de wielgroep. Gebruikers in de wielgroep krijgen automatisch sudo-bevoegdheden en kunnen taken uitvoeren waarvoor verhoogde machtigingen zijn vereist.
yum update -y && yum install passwd sudo -y
myUsername=caloewen
adduser -G wheel $myUsername
echo -e "[user]\ndefault=$myUsername" >> /etc/wsl.conf
passwd $myUsername
U moet nu die instantie afsluiten en ervoor zorgen dat alle WSL-instanties worden beëindigd. Start uw distributie opnieuw om de nieuwe standaardgebruiker te zien door deze opdracht uit te voeren in PowerShell:
wsl --terminate CentOS
wsl -d CentOS
U ziet nu [caloewen@loewen-dev]$ als de uitvoer op basis van dit voorbeeld.
Zie Instellingen configureren met .wslconfig en wsl.conf voor meer informatie over het configureren van WSL-instellingen.
Een aangepaste Linux-distributie gebruiken
U kunt uw eigen aangepaste Linux-distributie maken, verpakt als een UWP-app, die zich precies gedraagt als de WSL-distributies die beschikbaar zijn in de Microsoft Store. Zie Een aangepaste Linux-distributie voor WSL maken voor meer informatie.
Windows Subsystem for Linux