¿La PC más cercana equivale al modo de disco de destino Mac? [cerrado]


8

El firmware de Mac tiene un modo de arranque especial que le permite ofrecer su disco duro interno a otra computadora como un disco externo (simplemente conecta las dos máquinas a través de un cable IEEE 1394). Solo la segunda máquina necesita un SO operativo instalado.

¿Alguna buena sugerencia para algo similar en el lado de la PC? El acceso a nivel de bloque no es importante para mí, solo me gustaría poder copiar archivos de él. No me importa si usa Ethernet, IEEE 1394 o wifi, solo me gusta tener una forma rápida de acceder a los archivos en una PC cliente.

¿Hay alguna distribución de Linux de propósito único especialmente diseñada para hacer esto? Sería bueno tener algo súper simple, de arranque rápido y pequeño que pudiera instalar en una unidad USB. Solía ​​usar Knoppix, pero es excesivo como reemplazo del modo de destino.

Respuestas:


5

Tristemente no. Ya no hay ninguna excusa para la falta, dada la disponibilidad de firmware USB OTG y EFI, pero nadie lo está implementando.

Su mejor opción es arrancar una mini distribución de Linux desde un CD o una llave USB que se carga completamente en la RAM, enumera los dispositivos de almacenamiento y los expone a través de iSCSI o NBD a través de Ethernet, y / o mediante el modo host FireWire SDB2 si tiene un puerto FireWire. No conozco ninguna distribución enlatada para hacer esto, pero debería ser bastante fácil de instalar encima de SysRescCD con un script de inicio personalizado.

Acabo de escribir una gran queja sobre este tema, que se reduce a "FFS, con firmware EFI y USB OTG, ya no hay excusa para no ofrecer el disco de destino; incluso sin los puertos OTG Micro-AB que ofrecen Target Disk sobre Ethernet con iSCSI o ATAoE no seas irrazonable ".

En serio, mira lo que Intel AMT (vPro) puede hacer. En comparación con ese nivel de capacidad de firmware (que es posible gracias a EFI, por cierto), el modo de disco de destino no es nada.


¿Por qué no te gusta el arranque PXE?
jscott

El arranque de @jscott PXE es excelente si tiene un servidor DHCP práctico y un servidor TFTP en la red. Lo uso mucho yo mismo; de hecho, la solución de mi "pobre modo de disco de destino" es arrancar PXE el sistema Linux Terminal Server Project (LTSP) que usamos para clientes delgados en la LAN de trabajo, cambiar a un shell local y enciende el servidor nbd. Sin embargo, el arranque PXE es difícil o imposible en una red doméstica típica con basura de Belkin con muerte cerebral haciendo DHCP. En cualquier caso, no importa cómo arranque el sistema operativo, aún necesita lo mismo.
Craig Ringer

@jscott Por cierto, actualmente estoy investigando lo difícil que sería escribir un UEFI EBC (EFI Byte Code) o un controlador EFI compilado nativo para proporcionar algo como el modo de disco de destino. Parece que sería práctico en máquinas con soporte EFI Shell, pero el maldito Intel no incluye EFI Shell en sus tableros de escritorio, solo sus tableros de servidor. Sin el shell EFI, no estoy seguro de que se pueda hacer realmente sin disco, probablemente necesitará una llave USB para el controlador EFI del disco de destino.
Craig Ringer

@ Craig, buena publicación de blog. He estado utilizando principalmente el equipo de Apple durante tanto tiempo que nunca había oído hablar de USB OTG. Interesante.
nombre de usuario

@username Fui incorrecto en mi publicación como originalmente escrito por cierto; Pensé que OTG podría soportar el conector USB tipo A estándar, pero no puede, necesita un conector USB Micro-AB. Todavía no hay excusa para no incluirlo al menos en computadoras portátiles ultraportátiles donde el espacio es escaso. Por alguna razón totalmente loca, la especificación USB3 no proporciona un puerto USB OTG de tamaño completo que sea compatible con los enchufes USB tipo A, por lo que perdimos una oportunidad real con el cambio de puerto USB para USB3.
Craig Ringer

6

El modo de disco de destino es una característica del firmware de Mac. Nunca he oído que esto se implemente en un BIOS de fabricantes de PC.


Buena respuesta. Aclaración puntual: las Mac actuales no usan "BIOS" (como el nombre del software en lugar del tipo de software). Los PPC Macs usaron Open Firmware, mientras que los Intel Macs usan EFI pero ambos son técnicamente tipos de BIOS.
Chealion

Es cierto, no hay un equivalente exacto. Sin embargo, no me importa conectar una memoria USB de arranque. De hecho, pensándolo bien, algunos de los sistemas operativos instantáneos (que se envían con netbooks) se ajustan perfectamente. hmm
nombre de usuario

Buena captura @Chealion, he actualizado mi respuesta
Dave Cheney

2

Hace mucho tiempo, se podía usar un cable paralelo especial o un cable de módem nulo para conectar dos computadoras. Sin embargo, eso no tiene ningún valor dada la velocidad y la cantidad de datos que probablemente necesite transferir.

Puede usar un cable USB especial para conectarse a las computadoras. Varios proveedores venden un cable que le permite conectar dos computadoras a través de USB.

Si ambas computadoras tienen Ethernet, por supuesto, puede configurar una red entre las dos. Es posible que necesite un cable cruzado. No conozco ninguno fuera de mi cabeza, pero seguro parece que sería realmente fácil construir un cd / usb en vivo que simplemente arranque, monte todos los dispositivos posibles y lo comparta todo a través de smb, nfs, ssh e inicia un servidor dhcp.


2

No creo que haya nada en el mercado para hacerlo.

Si realmente está dedicado a hacer que suceda y tiene habilidades de tiempo y programación, probablemente podría echar un vistazo a uno de los exploits Firewire DMA y descubrir cómo funcionan. Hubo uno escrito en Python el año pasado cuyo código era muy legible.

Firewire le brinda acceso directo a la memoria, por lo que puede iniciar un núcleo minimalista y hacer lo que quiera a través de la conexión. Si le preocupa el cifrado de disco completo, es un riesgo importante que debe tener en cuenta, ya que alguien podría enchufar un dispositivo Firewire en una computadora portátil que esté inactiva (frente a hibernada o apagada) y comprometer la clave de cifrado.


Firewire no es intrínsecamente inseguro, es solo que la mayoría de los firmwares y unidades no configuran el controlador correctamente (¿no? Muchas cosas pueden haber cambiado en 4 años). Firewire requiere DMA, pero un controlador configurado correctamente tendrá una ventana de DMA pequeña restringida por un IOMMU o características integradas del controlador a un búfer DMA asignado para su uso. No tendrá acceso a toda la memoria cuando se configure de esta manera. Firewire no requiere inherentemente acceso a toda la RAM, es solo una implementación lenta que crea este agujero de seguridad.
Craig Ringer

2

Esto es manejado por el módulo sbp-target de Linux kernel versiones 3.5 y posteriores, habilitado con SBP_TARGET.


Sí, eso es un buen desarrollo. Sin embargo, existe la advertencia de que primero debe arrancar un kernel de Linux desde algo. A menos que esté utilizando coreboot con un firmware personalizado, esto significa arrancar desde una memoria USB (que no es confiable en muchos firmwares) o CD (si hay una unidad). Sigue siendo útil, pero al final siempre pude hacer lo mismo con el dispositivo de bloqueo de red (nbd) o iSCSI antes.
Craig Ringer
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.