GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Erstellen Sie ein Blockgerät im RAM

Verwenden Sie einfach brd und erstellen Sie ein brd-Gerät (ram0). Verwenden Sie dieses Gerät anstelle Ihres USB-Laufwerks. Sie können es mit sfdisk partitionieren, die Partitionen verwenden und dann dd verwenden, um seinen Inhalt in eine Datei auszugeben.

Es besteht keine Notwendigkeit, ein Dateisystem pro brd-Gerät zu verwenden.

Oder (wenn auch etwas hacky) können Sie tmpfs verwenden, eine Image-Datei erstellen und diese als Loop-Gerät verwenden. Das ist vielleicht der einfachste Weg, um das zu erreichen, was Sie wollen. Als Bonus haben Sie dieses Bild fertig und können es sofort hochladen. Keine Notwendigkeit zu dd.

# Create mountpoint for tmpfs
mkdir /tmp/tmpfs
# Mount tmpfs there
mount -t tmpfs none /tmp/tmpfs
# Create empty file of 600MB 
# (it creates 599MB hole, so it does not 
#  consume more memory than needed)
dd if=/dev/zero of=/tmp/tmpfs/img.bin bs=1M seek=599 count=1
# Partition the image file
cfdisk /tmp/tmpfs/img.bin 
# Create loop block device of it (-P makes kernel look for partitions)
losetup -P /dev/loop0 /tmp/tmpfs/img.bin 
# Create filesystems
mkfs.vfat /dev/loop0p1 
mkfs.ext4 /dev/loop0p2
# Now it's your turn:
#   mount loop0p1 and loop0p2 and copy whatever you want and unmount it
# detach the loop device
losetup -d /dev/loop0
# May i present you with your image ... 
ls -al /tmp/tmpfs/img.bin

An Ihre Bedürfnisse anpassen.


Linux
  1. Distributed Replicated Block Device Setup

  2. So erstellen Sie einen virtuellen Nginx-Host (Serverblock)

  3. Linux – Bestimmen Sie die Größe eines Blockgeräts?

  4. So erstellen Sie Partitionen im Loopback-Gerät

  5. So erstellen Sie ein virtuelles Blockgerät (Loop-Gerät/Dateisystem) in Linux

Erstellen Sie einen Timer unter Linux

Linux blkid-Befehl zum Suchen von Blockgerätedetails

Lsblk-Befehl in Linux (Blockgeräte auflisten)

Eine SD-Karte replizieren?

PCI-Stub Vs Vfio-PCI?

Erstellen Sie ein virtuelles Blockgerät, das in /dev/null schreibt