Acceder a dispositivos desde la terminal

Acceder a dispositivos desde la terminal

Tengo una unidad flash que no quiero montar. En cambio, sólo quiero usarlo para transferir archivos entre mis computadoras.

¿Hay alguna manera de acceder a mi unidad flash desde la terminal a través del directorio Dispositivos? ¿O la única forma de acceder a una unidad flash desde el terminal es montarla primero y luego acceder al punto de montaje?

Respuesta1

No puede acceder a ningún tipo de medio de almacenamiento sin montar primero la unidad. Sin embargo, podrás realizar todo este proceso desde tu terminal.

Primero, necesita el ID de la partición ( /dev/sdXY). Puedes usar el lsblkcomando para encontrar esto. Una vez que tenga esta identificación, puede ejecutar sudo mount /dev/sdXY /mnt. El sistema de archivos de su unidad flash ahora estará disponible /mnty podrá usarse desde la terminal.

Los dispositivos /devse conocen como dispositivos de bloque y son representaciones sin formato de los sistemas de archivos contenidos en esos dispositivos (cuando corresponda). Si bien puedes leer y escribir directamente desde estos dispositivos, a menudo es una mala idea porque estás ignorando una enorme capa de abstracción y protección del sistema de archivos.

Para la mayoría de los casos de uso, el único momento en el que estaría leyendo o escribiendo en los dispositivos de bloques sin formato es para clonar omuyoperaciones de dispositivos de bajo nivel. El sistema de archivos proporciona una enorme capa de abstracción, verificación de errores y seguridad de archivos.


Nota:La sección debajo de este bloque de texto está destinada únicamente a fines educativos. No intente esto en ningún sistema/unidad que le interese, ya que los resultados podrían ser fácilmente catastróficos. No me hago responsable de lo que hagas si sigues todo lo que digo a continuación.

Usted ha sido advertido.

Habiendo dicho esa advertencia, y si no le importa el contenido de su unidad flash, es teóricamente posible leer y escribir datos hacia/desde la unidad flash utilizando operaciones de bloque sin formato.

En su forma más simple, escribirías un archivo (digamos files.zip) en la unidad flash usando este comando:

dd if=files.zip of=/dev/sdd bs=1024

Esto copiará el archivo zip al bloque sin formato de su unidad flash, pero también (probablemente) dañará cualquier partición o datos relacionados que se encuentren actualmente en la unidad. También hará un registro de cuántos "bloques" se escribieron en la unidad; tome nota de esto. Para este ejemplo, diré que se copiaron 1234 bloques.

Cuando desee leer el archivo de la unidad flash en otra computadora, puede hacerlo con el comando inverso:

dd if=/dev/sdd of=files.zip count=1234 bs=1024

Esto extraerá los datos del bloque sin procesar de la unidad (que contiene un archivo ZIP) para los primeros 1234 bloques y los escribirá files.zipen su computadora en el directorio actual. También tenga en cuenta que es posible que este archivo ZIP no sea legible debido a datos corruptos/basura al final del archivo o similar. Asegúrese de anotar esto si es necesario. Puede utilizar el headcomando para recortar el archivo ZIP si es necesario.

Cuando haya terminado, probablemente necesitará formatear la unidad flash y volver a particionarla y cosas similares, lo que hace que esto sea muy inviable para operaciones grandes. Simplemente use el sistema de archivos.

información relacionada