GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo particionar y formatear una unidad en Linux

En la mayoría de los sistemas informáticos, Linux o de otro tipo, cuando conecta una unidad de memoria USB, recibe una alerta de que la unidad existe. Si la unidad ya está particionada y formateada a su gusto, solo necesita que su computadora incluya la unidad en algún lugar de la ventana del administrador de archivos o en su escritorio. Es un requisito simple y que la computadora generalmente cumple.

A veces, sin embargo, una unidad no está configurada de la manera deseada. Para esos momentos, necesita saber cómo encontrar y preparar un dispositivo de almacenamiento conectado a su máquina.

¿Qué son los dispositivos de bloque?

Un disco duro se conoce genéricamente como un "dispositivo de bloque" porque los discos duros leen y escriben datos en bloques de tamaño fijo. Esto diferencia un disco duro de cualquier otra cosa que pueda conectar a su computadora, como una impresora, un gamepad, un micrófono o una cámara. La manera fácil de enumerar los dispositivos de bloque conectados a su sistema Linux es usar el lsblk (lista de dispositivos de bloque) comando:

$ lsblk
NAME                  MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
sda                    8:0    0 238.5G  0 disk  
├─sda1                 8:1    0     1G  0 part  /boot
└─sda2                 8:2    0 237.5G  0 part  
  └─luks-e2bb...e9f8 253:0    0 237.5G  0 crypt
        ├─fedora-root    253:1    0    50G  0 lvm   /
        ├─fedora-swap    253:2    0   5.8G  0 lvm   [SWAP]
        └─fedora-home    253:3    0 181.7G  0 lvm   /home
sdb                   8:16    1  14.6G  0 disk  
└─sdb1                8:17    1  14.6G  0 part

Los identificadores de dispositivos se enumeran en la columna de la izquierda, cada uno de los cuales comienza con sd , y terminando con una letra, comenzando con a . A cada partición de cada unidad se le asigna un número, comenzando con 1 . Por ejemplo, la segunda partición de la primera unidad es sda2 . Si no está seguro de qué es una partición, no hay problema; siga leyendo.

El lsblk El comando no es destructivo y se usa solo para probar, por lo que puede ejecutarlo sin temor a arruinar los datos en una unidad.

Pruebas con dmesg

En caso de duda, puede probar las asignaciones de etiquetas de dispositivos observando el final del dmesg comando, que muestra las entradas recientes del registro del sistema, incluidos los eventos del kernel (como conectar y desconectar una unidad). Por ejemplo, si quiere asegurarse de que una memoria USB es realmente /dev/sdc , conecte la unidad a su computadora y ejecute este dmesg comando:

$ sudo dmesg | tail

La unidad más reciente de la lista es la que acaba de conectar. Si la desconecta y vuelve a ejecutar ese comando, verá que el dispositivo se ha eliminado. Si lo vuelve a enchufar y ejecuta el comando, el dispositivo estará allí. En otras palabras, puede monitorear el conocimiento del núcleo de su disco.

Comprender los sistemas de archivos

Si todo lo que necesita es la etiqueta del dispositivo, su trabajo está hecho. Pero si su objetivo es crear una unidad utilizable, debe darle un sistema de archivos a la unidad.

Si no está seguro de qué es un sistema de archivos, probablemente sea más fácil entender el concepto aprendiendo qué sucede cuando no tiene ningún sistema de archivos. Si tiene una unidad de repuesto que no contiene ningún dato importante , puede seguir este ejemplo. De lo contrario, no intente este ejercicio, porque DEFINITIVAMENTE BORRARÁ DATOS, por diseño.

Es posible utilizar una unidad sin un sistema de archivos. Una vez que haya identificado definitivamente y correctamente una unidad, y haya absolutamente verificado que no contiene nada importante, conéctelo a su computadora, pero no lo monte. Si se monta automáticamente, desmóntelo manualmente.

$ su -
# umount /dev/sdx{,1}

Para protegerse contra errores desastrosos de copiar y pegar, estos ejemplos usan el improbable sdx etiqueta para la unidad.

Ahora que la unidad está desmontada, intente esto:

# echo 'hello world' > /dev/sdx

Acaba de escribir datos en el dispositivo de bloque sin que esté montado en su sistema o sin tener un sistema de archivos.

Para recuperar los datos que acaba de escribir, puede ver los datos sin procesar en la unidad:

# head -n 1 /dev/sdx
hello world

Eso pareció funcionar bastante bien, pero imagina que la frase "hola mundo" es un archivo. Si desea escribir un nuevo "archivo" usando este método, debe:

  1. Sepa que ya existe un "archivo" en la línea 1
  2. Sepa que el "archivo" existente ocupa solo 1 línea
  3. Descubra una forma de agregar nuevos datos, o reescriba la línea 1 mientras escribe la línea 2

Por ejemplo:

# echo 'hello world
> this is a second file' >> /dev/sdx

Para obtener el primer archivo, nada cambia.

# head -n 1 /dev/sdx
hello world

Pero es más complejo obtener el segundo archivo.

# head -n 2 /dev/sdx | tail -n 1
this is a second file

Obviamente, este método de escritura y lectura de datos no es práctico, por lo que los desarrolladores han creado sistemas para realizar un seguimiento de lo que constituye un archivo, dónde comienza y termina un archivo, etc.

La mayoría de los sistemas de archivos requieren una partición.

Creación de particiones

Más recursos de Linux

  • Hoja de trucos de los comandos de Linux
  • Hoja de trucos de comandos avanzados de Linux
  • Curso en línea gratuito:Descripción general técnica de RHEL
  • Hoja de trucos de red de Linux
  • Hoja de trucos de SELinux
  • Hoja de trucos de los comandos comunes de Linux
  • ¿Qué son los contenedores de Linux?
  • Nuestros últimos artículos sobre Linux

Una partición en un disco duro es una especie de límite en el dispositivo que le dice a cada sistema de archivos qué espacio puede ocupar. Por ejemplo, si tiene una memoria USB de 4 GB, puede tener una partición en ese dispositivo que ocupe todo el disco (4 GB), dos particiones de 2 GB cada una (o 1 y 3, si lo prefiere), tres de alguna variación de tamaños, y así sucesivamente. Las combinaciones son casi infinitas.

Suponiendo que su disco sea de 4 GB, puede crear una gran partición desde un terminal con GNU partido comando:

# parted /dev/sdx --align opt mklabel msdos 0 4G

Este comando especifica primero la ruta del dispositivo, según lo requiera parted .

El --alinear opción permite separados encuentre el punto óptimo de inicio y finalización de la partición.

La mklabel El comando crea una tabla de particiones (llamada etiqueta de disco ) en el dispositivo. Este ejemplo usa el msdos etiqueta porque es una etiqueta muy compatible y popular, aunque gpt es cada vez más común.

Los puntos inicial y final deseados de la partición se definen en último lugar. Dado que --align opt se usa la bandera, separada ajustará el tamaño según sea necesario para optimizar el rendimiento de la unidad, pero estos números sirven como guía.

A continuación, cree la partición real. Si sus opciones de inicio y finalización no son las óptimas, sepárese te advierte y te pregunta si quieres hacer ajustes.

# parted /dev/sdx -a opt mkpart primary 0 4G
Warning: The resulting partition is not properly aligned for best performance: 1s % 2048s != 0s
Ignore/Cancel? C                                                          
# parted /dev/sdx -a opt mkpart primary 2048s 4G

Si ejecuta lsblk nuevamente (es posible que deba desconectar la unidad y volver a conectarla), verá que su unidad ahora tiene una partición.

Crear manualmente un sistema de archivos

Hay muchos sistemas de archivos disponibles. Algunos son gratuitos y de código abierto, mientras que otros no lo son. Algunas empresas se niegan a admitir sistemas de archivos de código abierto, por lo que sus usuarios no pueden leer desde sistemas de archivos abiertos, mientras que los usuarios de código abierto no pueden leer desde sistemas cerrados sin aplicarles ingeniería inversa.

A pesar de esta desconexión, hay muchos sistemas de archivos que puede usar, y el que elija depende del propósito de la unidad. Si desea que una unidad sea compatible con muchos sistemas, su única opción en este momento es el sistema de archivos exFAT. Microsoft no ha enviado el código exFAT a ningún kernel de código abierto, por lo que es posible que deba instalar la compatibilidad con exFAT con su administrador de paquetes, pero la compatibilidad con exFAT está incluida tanto en Windows como en MacOS.

Una vez que haya instalado la compatibilidad con exFAT, puede crear un sistema de archivos exFAT en su disco en la partición que creó.

# mkfs.exfat -n myExFatDrive /dev/sdx1

Ahora su disco es legible y escribible por sistemas cerrados y por sistemas de código abierto que utilizan módulos kernel adicionales (y aún no autorizados por Microsoft).

Un sistema de archivos común nativo de Linux es ext4. Podría decirse que es un sistema de archivos problemático para las unidades portátiles, ya que conserva los permisos de los usuarios, que a menudo son diferentes de una computadora a otra, pero generalmente es un sistema de archivos confiable y flexible. Siempre que se sienta cómodo administrando los permisos, ext4 es un excelente sistema de archivos registrado para unidades portátiles.

# mkfs.ext4 -L myExt4Drive /dev/sdx1

Desconecte su unidad y vuelva a conectarla. Para unidades portátiles ext4, use sudo para crear un directorio y otorgar permiso a ese directorio a un usuario y un grupo común en todos sus sistemas. Si no está seguro de qué usuario y grupo usar, puede modificar los permisos de lectura/escritura con sudo o raíz en el sistema que tiene problemas con la unidad.

Uso de herramientas de escritorio

Es genial saber cómo manejar unidades con nada más que un shell de Linux interponiéndose entre usted y el dispositivo de bloque, pero a veces solo desea tener una unidad lista para usar sin tanto sondeo perspicaz. Las excelentes herramientas de los desarrolladores de GNOME y KDE pueden facilitar la preparación de la unidad.

GNOME Disks y KDE Partition Manager son interfaces gráficas que brindan una solución todo en uno para todo lo que este artículo ha explicado hasta ahora. Inicie cualquiera de estas aplicaciones para ver una lista de dispositivos conectados (en la columna de la izquierda), cree o cambie el tamaño de las particiones y cree un sistema de archivos.

La versión de GNOME es, como era de esperar, más simple que la versión de KDE, así que haré una demostración de la más compleja:es fácil descubrir los discos de GNOME si eso es lo que tiene a mano.

Inicie KDE Partition Manager e ingrese su contraseña de root.

En la columna de la izquierda, seleccione el disco que desea formatear. Si su unidad no aparece en la lista, asegúrese de que esté enchufada y luego seleccione Herramientas.> Actualizar dispositivos (o F5 en su teclado).

No continúe a menos que esté listo para destruir la tabla de particiones existente de la unidad. Con la unidad seleccionada, haga clic en Nueva tabla de particiones en la barra de herramientas superior. Se le pedirá que seleccione la etiqueta que desea asignar a la tabla de particiones:gpt o msdos . El primero es más flexible y puede manejar unidades más grandes, mientras que el segundo es, como muchas tecnologías de Microsoft, el estándar de facto por la fuerza de la cuota de mercado.

Ahora que tiene una tabla de particiones nueva, haga clic derecho en su dispositivo en el panel derecho y seleccione Nuevo para crear una nueva partición. Siga las indicaciones para configurar el tipo y el tamaño de su partición. Esta acción combina el paso de partición con la creación de un sistema de archivos.

Para aplicar sus cambios a la unidad, haga clic en Aplicar en la esquina superior izquierda de la ventana.

Discos duros, discos fáciles

Tratar con discos duros es fácil en Linux, y es aún más fácil si entiende el idioma de los discos duros. Desde que cambié a Linux, he estado mejor equipado para preparar las unidades de la forma en que quiero que funcionen para mí. También me ha resultado más fácil recuperar datos perdidos gracias a la transparencia que proporciona Linux cuando se trata de almacenamiento.

Estos son algunos consejos finales, si desea experimentar y obtener más información sobre los discos duros:

  1. Haga una copia de seguridad de sus datos, y no solo de los datos del disco con el que está experimentando. Todo lo que se necesita es un movimiento en falso para destruir la partición de un disco importante (que es una excelente manera de aprender a recrear particiones perdidas, pero no es muy divertido).
  2. Verifique y luego vuelva a verificar que la unidad a la que se dirige es la unidad correcta. Con frecuencia uso lsblk para asegurarme de que no he movido los discos sobre mí mismo. (Es fácil quitar dos unidades de dos puertos USB separados y luego volver a conectarlas sin pensar en un orden diferente, lo que hace que obtengan nuevas etiquetas de unidad).
  3. Tómese el tiempo necesario para "destruir" una prueba de manejo y vea si puede recuperar los datos. Es una buena experiencia de aprendizaje recrear una tabla de particiones o intentar recuperar los datos después de que se eliminó un sistema de archivos.

Para mayor diversión, si tiene un sistema operativo cerrado, intente hacer funcionar un sistema de archivos de código abierto. Hay algunos proyectos que buscan este tipo de compatibilidad, y tratar de que funcionen de manera estable y confiable es un buen proyecto de fin de semana.


Linux
  1. Cómo particionar un disco en Linux

  2. Cómo usar Google Drive en Linux

  3. ¿Cómo habilitar la partición de intercambio de Linux?

  4. ¿Cómo creo nuevas particiones y formateo mi disco duro en partes?

  5. Crear y formatear una partición exFAT desde Linux

Cómo montar una unidad en Linux

Cómo convertir un directorio en una partición en Linux

Cómo clonar y restaurar una partición de Linux usando el comando dd

Cómo cifrar la partición en Linux

Cómo formatear y montar un disco de más de 2 TB en Linux

Cómo montar y usar una unidad exFAT en un sistema Linux