Una terminal Linux en una computadora portátil con un escritorio estilo Ubuntu.

Cómo usar el comando mkfs en Linux

Fatmawati Achmad Zaenuri / Shutterstock

Debe crear un sistema de archivos antes de poder utilizar un dispositivo de almacenamiento de datos conectado a una computadora Linux. Aprender a usar mkfs y otras utilidades para hacer precisamente eso para todo tipo de sistemas de archivos. Te mostramos cómo.

mkfs Crea sistemas de archivos

los mkfs pedido crea sistemas de archivos. En otros sistemas operativos, la creación de un sistema de archivos se denomina disposición. Sea cual sea su nombre, es el proceso que prepara una partición para que pueda almacenar datos. La partición necesita una forma de almacenar archivos, sí. Pero también necesita un mecanismo para almacenar los nombres y ubicaciones de estos archivos junto con sus metadatos, como la marca de tiempo de creación del archivo, la marca de tiempo de modificación del archivo, el tamaño del archivo, etc. Una vez que mkfs ha construido el marco necesario para administrar y almacenar los metadatos de los archivos, puede comenzar a agregar archivos a la partición.

La sintaxis es muy sencilla. Tu solo dices mkfs la partición del dispositivo donde desea crear el sistema de archivos y el tipo de sistema de archivos que desea. Es a primera vista. Detrás de escena, es un poco diferente. Desde hace algún tiempo en la mayoría de las distribuciones de Linux mkfs era un embalaje para mke2fs. los mkfs el comando lo llama mke2fs comando y le pasa las opciones que especificó. Pobre viejo mke2fs hace todo el trabajo pero no obtiene gloria.

La sintaxis de mkfs se ha actualizado y el formato antiguo ha quedado obsoleto. Ambas formas funcionarán, pero usaremos el estilo moderno en este artículo.

La elección de los sistemas de archivos

La forma moderna de usar mkfs es escribir «mkfs». luego el nombre del sistema de archivos que desea crear.

Para ver qué sistemas de archivos son mkfs puede crear, escriba «mkfs», luego presione la tecla Tab dos veces. No hay espacio después de «mkfs», simplemente presione Tab dos veces.

La lista de sistemas de archivos disponibles se muestra en la ventana del terminal. La captura de pantalla es de Ubuntu 18.04 LTS. Otras distribuciones pueden ofrecer más o menos opciones. Los revisaremos y los describiremos brevemente. Después de unas breves palabras sobre el diario.

El diario es un concepto importante en los sistemas de archivos. Los sistemas de archivos registran las escrituras de archivos pendientes en un diario. A medida que se escribe cada archivo, el registro se actualiza y los registros de escritura pendientes se actualizan. Esto permite que el sistema de archivos repare archivos rotos y parcialmente escritos que ocurrieron debido a un evento catastrófico, como un corte de energía. Algunos de los sistemas de archivos más antiguos no admiten el registro por diario. Aquellos que no escriben en el disco con menos frecuencia porque no necesitan actualizar el registro. Pueden ejecutarse más rápido, pero son más propensos a sufrir daños debido a la interrupción de la escritura de archivos.

  • Ext2: El primer sistema de archivos para Linux fue el sistema de archivos MINIX. Más tarde fue reemplazado por el primer sistema de archivos escrito específicamente para Linux, que fue Trabajo. Ext2 era Sucesor de Ext. Ext2 no es un sistema de archivos de diario.
  • Publicación3: era el sucesor de Ext2, y se puede considerar como Ext2 con registro en diario, que protege su sistema de archivos contra la corrupción de datos causada por cortes y cortes repentinos de energía.
  • Publicación4: Ext4 es el sistema de archivos estándar para muchas distribuciones de Linux. Es un sistema de archivos sólido, probado y confiable. Tiene características que reducir la fragmentación de archivos y se puede utilizar con discos, particiones y archivos más grandes que Ext3.
  • BFS: Es el Sistema de archivos de arranque, que está diseñado para una y solo una tarea: administrar archivos de partición de arranque. Es raro que cree un sistema de archivos de arranque a mano. Su proceso de instalación de Linux hará esto por usted.
  • GRUESO: Los Tabla de asignación de archivos El sistema de archivos fue diseñado para disquetes por un consorcio de pesos pesados ​​en la industria informática. Se introdujo en 1977. La única razón por la que está utilizando este sistema de archivos sin registro diario es por compatibilidad con sistemas operativos que no son Linux.
  • NTFS: Los Sistema de archivos de nueva tecnología es un sistema de archivos de registro por diario de Microsoft introducido con Windows NT. Fue el sucesor de FAT. La única razón por la que está utilizando este sistema de archivos es por compatibilidad con sistemas operativos que no son Linux.
  • MINIX: Creado originalmente por Andrew S. Tanenbaum como ayuda para la enseñanza, MINIX es un sistema operativo «mini-Unix». Hoy en día, su objetivo es proporcionar un sistema operativo autorreparable y tolerante a fallas. El sistema de archivos MINIX fue diseñado como un versión simplificada del sistema de archivos Unix. Tal vez si está haciendo un desarrollo cruzado en una máquina Linux y tiene como objetivo una plataforma MINIX, pueda usar ese sistema de archivos. O tal vez necesite compatibilidad con la computadora MINIX por otras razones. Los casos de uso de este sistema de archivos en una computadora Linux no me resultan obvios de inmediato, pero están disponibles.
  • VFAT: Tabla de asignación de archivos virtuales, se introdujo con Windows 95 y eliminó el límite de ocho caracteres para los nombres de archivo. Se han hecho posibles nombres de archivo de hasta 255 caracteres. La única razón por la que está utilizando este sistema de archivos es por compatibilidad con sistemas operativos que no son Linux.
  • CRAMFS: Los Sistema de archivos ROM comprimido es un sistema de archivos de solo lectura diseñado para sistemas integrados y usos especializados de solo lectura, como en los procesos de arranque de las computadoras Linux. Es común tener un pequeño sistema de archivos transitorio cargado primero para que los procesos de arranque puedan iniciarse y prepararse para montar el sistema de arranque «real».
  • MS-DOS: El sistema de archivos del Sistema operativo de disco de Microsoft. Lanzado en 1981, es un sistema de archivos básico que es lo más básico posible. La primera versión ni siquiera tenía directorios. Ocupa un lugar destacado en la historia de la informática, pero más allá de la compatibilidad con los sistemas existentes, hay pocas razones para usarlo hoy.

Una forma segura de experimentar con sistemas de archivos

La creación de un sistema de archivos en una partición destruye cualquier dato que ya pueda residir en esa partición. Usar un disco duro de repuesto, o incluso una computadora de repuesto, es la manera perfecta de experimentar con la creación y el uso de diferentes sistemas de archivos. Pero, por supuesto, mucha gente no tiene equipo de repuesto esperando ser experimentado.

Sin embargo, podemos crear un archivo de imagen y crear sistemas de archivos dentro de él. Una vez que lo montemos, podremos usarlo como si fuera una partición normal. Podemos explorar y experimentar con sistemas de archivos sin necesidad de hardware de repuesto. Usaremos el dd Ordenar a crea nuestro archivo de imagen.

El archivo de imagen se crea tomando los datos de origen y poniéndolos en una imagen. Tenemos que decir dd dónde obtener sus datos de origen. Usaremos el if (archivo de entrada) opción para decir dd usar / dev / zero como fuente de datos de entrada. Será una avalancha de ceros.

los of (archivo de salida) nos permite darle un nombre al archivo de imagen. Lo llamaremos «howtogeek.img».

El tamaño del archivo de imagen está determinado por el tamaño y la cantidad de bloques que le agregamos. Usamos el bs (tamaño de bloque) para solicitar un tamaño de bloque de 1 MB y la count Posibilidad de solicitar 250 cuadras. Esto nos dará un sistema de archivos de 250 MB.Cuando ejecute este comando, ajuste el número de bloques de acuerdo con sus necesidades y la capacidad disponible en su máquina Linux.

dd if=/dev/zero of=~/howtogeek.img bs=1M count=250

dd if = / dev / zero of = ~ / howtogeek.img bs = 1M count = 250

El archivo se crea para nosotros y dd informa que se crearon 250 bloques para nosotros, según lo solicitado.

Podemos mirar nuestro archivo de imagen con ls :

ls -hl

Eso es 250 MB como se esperaba, lo cual es alentador.

Creando el sistema de archivos

Elijamos un sistema de archivos para usar. Vamos a retroceder en el tiempo y usar Ext2, que es la primera versión de Ext que esta implementación de mkfs Puede crear. Este es un sistema de archivos sin registro en diario, por lo que no almacene nada valioso en él sin tener copias de seguridad en otro lugar. Usamos el mkfs.ext2 variante de la mkfs comando, y le decimos que use nuestro archivo de imagen como destino.

mkfs.ext2 ~/howtogeek.img

Se crea el sistema de archivos y se muestran algunos detalles del sistema de archivos.

Como puede ver en el texto resaltado, mke2fs hizo una aparición.

Ahora tenemos un contenedor para el sistema de archivos, el archivo de imagen, que reemplaza un disco duro en este escenario. Dentro de ese contenedor, hemos creado un sistema de archivos. Ahora necesitamos montar el sistema de archivos para poder usarlo.

Esta es una configuración temporal, así que haremos una punto de montaje en / mnt llamado «geek». Lo borraremos cuando hayamos terminado.

sudo mkdir /mnt/geek

Ahora podemos montar nuestro archivo de imagen.

sudo mount ~/howtogeek.img /mnt/geek

Tenemos que cambiar el propiedad del archivo desde el punto de montaje para que tengamos acceso de lectura y escritura.

sudo chown dave:users /mnt/geek/

Y ahora deberíamos poder usar nuestro nuevo sistema de archivos. Vayamos al sistema de archivos y copiemos algunos archivos allí.

cd /mnt/geek
cp ~/Documents/Code/*.? .

Esto copiará todos los archivos con una extensión de una sola letra del directorio ~ / Documents / Code a nuestro nuevo sistema de archivos. Comprobemos que se han copiado.

ls

Los archivos fueron copiados, por lo que nuestro sistema de archivos fue creado, montado y usado. O eso creemos. Comprobemos dos veces. Desde nuestro directorio de inicio, desmontaremos el sistema de archivos. Tenga en cuenta que solo hay una «n» en desmontar.

sudo umount /mnt/geek

Ahora, si volvemos a / mnt / geek y buscamos archivos, no deberíamos encontrar ninguno porque están en nuestro archivo de imagen y este ha sido desmontado.

cd /mnt/geek
ls

Exploración adicional

Ahora que el proceso está en su lugar, probar un sistema de archivos diferente debería ser fácil. Usaremos el sistema de archivos MINIX esta vez. En nuestro directorio de inicio, podemos crear un nuevo sistema de archivos en nuestro archivo de imagen existente.

¡Ten cuidado! Si hay archivos importantes en el sistema de archivos dentro del archivo de imagen, monte el archivo de imagen y recupérelos antes de crear un nuevo sistema de archivos.

mkfs.minix ~/howtogeek.image

Sin ninguna indicación para preguntar «si está seguro», el nuevo sistema de archivos se crea en el anterior. Podemos montar nuestro archivo de imagen con exactamente el mismo comando que antes:

sudo mount ~/howtogeek.img /mnt/geek

Vayamos al nuevo sistema de archivos en / mnt / geek y veamos si podemos crear un archivo.

touch geek.txt

ls -ahl geek.txt

Y, tan simple y rápido como eso, hemos creado un nuevo sistema de archivos, lo montamos y podemos usarlo.

Quitar el punto de montaje

Cuando haya terminado, podemos eliminar el punto de montaje «geek». Para hacer esto usaremos rmdir:

cd /mnt
sudo rmdir geek

Hacer malabares con el fuego

Con Linux, como con la mayoría de las cosas, aprendes haciendo. El problema con algunos comandos es que son potencialmente destructivos. El dilema es ¿cómo puede practicar su uso sin poner en riesgo su sistema o sus datos?

Ahora tiene una forma sencilla de crear y probar sistemas de archivos con mkfs eso deja su computadora intacta.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Experto Geek - Tu Guía en Tendencias Tecnológicas