Mover el Sistema de Archivos de WSL a otro disco
Tags: spanish, wsl, terminal, ubuntu
Published: 2021-11-29 16:25:54

Idiomas: [🇺🇸] [English](https://dev.to/equiman/move-wsl-file-system-to-another-drive-2a3d) - [🇪🇸] [Español](https://dev.to/equiman/mover-el-sistema-de-archivos-de-wsl-a-otro-disco-3fbi)

---

Si tu disco `C:` se está quedando sin espacio o prefieres tener tus archivos en un lugar diferente a tu Sistema operativo, es posible mover el Sistema de Archivos de **WSL2** a otro disco en unos cuantos pasos.

## Prerrequisitos

Si estamos usando un usuario diferente a `root`, necesitamos saber cuál es corriendo el siguiente comando (al lado de WSL):

```bash
# Linux Terminal
whoami
```

![who am I](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e6kvdb7puzscbb96q0k5.png)

También necesitamos conocer el nombre de la **distribución** y la **versión** de WSL, ejecutando el siguiente comando en PowerShell (al lado de Windows):

```bash
# PowerShell
wsl --list --verbose
```

![wsl list](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/w2xke436r85ci0t2aqgs.png)

Conociendo el **usuario:** `equiman`, la **distribución:** `Ubuntu` y confirmando que estamos usando la **versión** `WSL 2`, estaríamos listos para la...

![moving day](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9luo23t87clkxk1wzhpx.gif)

##  Mudanza

> Todos los pasos que se describen a continuación se deben ejecutar en PowerShell (al lado de Windows).

Primero necesitamos cerrar todas la terminales que estén usando WSL y luego apagarlo para evitar cualquier corrupción de datos usando el comando.

```bash
# PowerShell
wsl --shutdown
```

Luego procedemos a crear una copia de seguridad (backup) de la **distribución** `Ubuntu`.

```bash
# PowerShell 
mkdir D:\backup
wsl --export Ubuntu D:\backup\ubuntu.tar
```

No te preocupes si no ves algún indicador de progreso. Esto va a tomar un buen tiempo dependiendo de la cantidad de datos que tengas. Tal vez sea buena idea que vayas a tomar un descanso mientras tanto.

![waiting](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/inlo80w5ccpkaxjcnv4d.gif)

Cuando termine, nececitamos **asegurarnos** de que el archivo `D:\backup\ubuntu.tar` fue creado. Luego podemos dar de baja la distribución linux del disco `C:`. Esto va a liberar el espacio tomado por WSL.

> ⚠️ Tenga presente que todo lo que tenga almacenado en el disco virtual de WSL será eliminado, el siguiente comando no solicita ninguna confirmación, así que asegúrese de hacer una copia de respaldo con todo lo que necesite antes!

```bash
# Power Shell
wsl --unregister Ubuntu
```

Ahora, vamos a importarla en un nuevo disco. Yo voy a usar el disco `D:` como ejemplo. 

```bash
# Power Shell
mkdir D:\WSL
wsl --import Ubuntu D:\WSL\ D:\backup\ubuntu.tar
```

Por defecto Ubuntu va a usar por defecto el usuario `root`, para cambiarlo a nuestro usuario necesitamos correr este comando.

```bash
# Power Shell
cd $env:USERPROFILE\AppData\Local\Microsoft\WindowsApps
ubuntu config --default-user equiman
```

> Asegúrese de reemplazar `equiman` con el suyo.

Reinicie WSL ejecutando el siguiente comando `wsl`.

```bash
# PowerShell
wsl --distribution Ubuntu
```

# Recuperación

Si algo sale mal en el proceso, no te preocupes, podemos restaurar nuestro disco WSL desde la copia de seguridad (bakcup).

> ¿No te saltaste este paso? ¿cierto?

![right](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t27z7tqemo0j75hh8ayw.gif)

Solo repite los pasos después de la copia de seguridad.

---

**That’s All Folks!**
**Happy Coding** 🖖

[![cerveza](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/h4zle20oa7anpfjvap8n.png)](https://github.com/sponsors/deinsoftware)