Skip to content

zram - Was das??

ROCKPro64
  • Wenn man auf einer minimal Bionic Installation ein

    fdisk -l
    

    macht, bekommt man folgende Ausgabe.

    Disk /dev/ram0: 4 MiB, 4194304 bytes, 8192 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    
    
    Disk /dev/mmcblk0: 14.7 GiB, 15811477504 bytes, 30881792 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disklabel type: gpt
    Disk identifier: E55EA076-C740-42B9-A619-20BF1A4DE0E1
    
    Device          Start      End  Sectors  Size Type
    /dev/mmcblk0p1     64     8063     8000  3.9M Linux filesystem
    /dev/mmcblk0p2   8064     8191      128   64K Linux filesystem
    /dev/mmcblk0p3   8192    16383     8192    4M Linux filesystem
    /dev/mmcblk0p4  16384    24575     8192    4M Linux filesystem
    /dev/mmcblk0p5  24576    32767     8192    4M Linux filesystem
    /dev/mmcblk0p6  32768   262143   229376  112M Microsoft basic data
    /dev/mmcblk0p7 262144 30881758 30619615 14.6G Linux filesystem
    
    
    Disk /dev/zram0: 323 MiB, 338702336 bytes, 82691 sectors
    Units: sectors of 1 * 4096 = 4096 bytes
    Sector size (logical/physical): 4096 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    
    
    Disk /dev/zram1: 323 MiB, 338702336 bytes, 82691 sectors
    Units: sectors of 1 * 4096 = 4096 bytes
    Sector size (logical/physical): 4096 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    
    
    Disk /dev/zram2: 323 MiB, 338702336 bytes, 82691 sectors
    Units: sectors of 1 * 4096 = 4096 bytes
    Sector size (logical/physical): 4096 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    
    
    Disk /dev/zram3: 323 MiB, 338702336 bytes, 82691 sectors
    Units: sectors of 1 * 4096 = 4096 bytes
    Sector size (logical/physical): 4096 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    
    
    Disk /dev/zram4: 323 MiB, 338702336 bytes, 82691 sectors
    Units: sectors of 1 * 4096 = 4096 bytes
    Sector size (logical/physical): 4096 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    
    
    Disk /dev/zram5: 323 MiB, 338702336 bytes, 82691 sectors
    Units: sectors of 1 * 4096 = 4096 bytes
    Sector size (logical/physical): 4096 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    

    Da stoße ich mal wieder auf was, was ich nicht kenne. zram Ok, schauen wir mal was das ist und was das macht.

    Gerade auf Systemen mit wenig Arbeitsspeicher kommt es hin und wieder vor, dass dieser knapp wird und das System beginnt, den Swap-Speicher zu nutzen. Da sich dieser auf der Festplatte befindet, ist er im Vergleich zum RAM relativ langsam.

    Gut, damit hätten wir das hier geklärt.

    swapon -s 
    

    gibt folgendes aus

    Filename				Type		Size	Used	Priority
    /dev/zram0                             	partition	330760	0	5
    /dev/zram1                             	partition	330760	0	5
    /dev/zram2                             	partition	330760	0	5
    /dev/zram3                             	partition	330760	0	5
    /dev/zram4                             	partition	330760	0	5
    /dev/zram5                             	partition	330760	0	5
    

    Ein

    free
    

    gibt folgendes aus

                  total        used        free      shared  buff/cache   available
    Mem:        3969156       75080     3779900        8512      114176     3855688
    Swap:       1984560           0     1984560
    

    Wenn man die 330760 mit 6 multipliziert, kommt man auf 1984560.

    So wie ich das verstehe, legt diese Installation 1,98 GB RAM als SWAP-Partition im schnelleren RAM ab. Macht ja auch Sinn, bei den lahmen SD-Karten. Anmerkung: Ich habe den ROCKPro64 mit 4 GB RAM.

  • Wenn man auf einer minimal Bionic Installation ein

    fdisk -l
    

    macht, bekommt man folgende Ausgabe.

    Disk /dev/ram0: 4 MiB, 4194304 bytes, 8192 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    
    
    Disk /dev/mmcblk0: 14.7 GiB, 15811477504 bytes, 30881792 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disklabel type: gpt
    Disk identifier: E55EA076-C740-42B9-A619-20BF1A4DE0E1
    
    Device          Start      End  Sectors  Size Type
    /dev/mmcblk0p1     64     8063     8000  3.9M Linux filesystem
    /dev/mmcblk0p2   8064     8191      128   64K Linux filesystem
    /dev/mmcblk0p3   8192    16383     8192    4M Linux filesystem
    /dev/mmcblk0p4  16384    24575     8192    4M Linux filesystem
    /dev/mmcblk0p5  24576    32767     8192    4M Linux filesystem
    /dev/mmcblk0p6  32768   262143   229376  112M Microsoft basic data
    /dev/mmcblk0p7 262144 30881758 30619615 14.6G Linux filesystem
    
    
    Disk /dev/zram0: 323 MiB, 338702336 bytes, 82691 sectors
    Units: sectors of 1 * 4096 = 4096 bytes
    Sector size (logical/physical): 4096 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    
    
    Disk /dev/zram1: 323 MiB, 338702336 bytes, 82691 sectors
    Units: sectors of 1 * 4096 = 4096 bytes
    Sector size (logical/physical): 4096 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    
    
    Disk /dev/zram2: 323 MiB, 338702336 bytes, 82691 sectors
    Units: sectors of 1 * 4096 = 4096 bytes
    Sector size (logical/physical): 4096 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    
    
    Disk /dev/zram3: 323 MiB, 338702336 bytes, 82691 sectors
    Units: sectors of 1 * 4096 = 4096 bytes
    Sector size (logical/physical): 4096 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    
    
    Disk /dev/zram4: 323 MiB, 338702336 bytes, 82691 sectors
    Units: sectors of 1 * 4096 = 4096 bytes
    Sector size (logical/physical): 4096 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    
    
    Disk /dev/zram5: 323 MiB, 338702336 bytes, 82691 sectors
    Units: sectors of 1 * 4096 = 4096 bytes
    Sector size (logical/physical): 4096 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    

    Da stoße ich mal wieder auf was, was ich nicht kenne. zram Ok, schauen wir mal was das ist und was das macht.

    Gerade auf Systemen mit wenig Arbeitsspeicher kommt es hin und wieder vor, dass dieser knapp wird und das System beginnt, den Swap-Speicher zu nutzen. Da sich dieser auf der Festplatte befindet, ist er im Vergleich zum RAM relativ langsam.

    Gut, damit hätten wir das hier geklärt.

    swapon -s 
    

    gibt folgendes aus

    Filename				Type		Size	Used	Priority
    /dev/zram0                             	partition	330760	0	5
    /dev/zram1                             	partition	330760	0	5
    /dev/zram2                             	partition	330760	0	5
    /dev/zram3                             	partition	330760	0	5
    /dev/zram4                             	partition	330760	0	5
    /dev/zram5                             	partition	330760	0	5
    

    Ein

    free
    

    gibt folgendes aus

                  total        used        free      shared  buff/cache   available
    Mem:        3969156       75080     3779900        8512      114176     3855688
    Swap:       1984560           0     1984560
    

    Wenn man die 330760 mit 6 multipliziert, kommt man auf 1984560.

    So wie ich das verstehe, legt diese Installation 1,98 GB RAM als SWAP-Partition im schnelleren RAM ab. Macht ja auch Sinn, bei den lahmen SD-Karten. Anmerkung: Ich habe den ROCKPro64 mit 4 GB RAM.

    @frankm Ubuntu legt seit Version 13.04 (oder so) per default zram als Swap an (bzw. muß man nur das zram-control Package installieren). Größe ist die Hälfte des verfügbaren RAMs und außerdem werden pro CPU-Core ein zram Block-Device angelegt (braucht's mit halbwegs modernen Kerneln nicht).

    Ich versuch, das schon seit geraumer Zeit in Armbian zu verbessern (zram momentan nur in den Ubuntu-Varianten aktiv) aber das geht alles recht zäh. Ein paar Hintergrundinfos (und Info, wie man das noch optimieren kann) wie so oft bei CNX-Soft: https://www.cnx-software.com/2018/05/14/running-out-of-ram-in-ubuntu-enable-zram/ (in den Kommentaren auch gucken).

  • @tkaiser ; Ich hab dich vermisst 😂

    Danke für die Info, ich bin vor dem ROCKPro64 da noch nie so richtig drüber gestolpert. Aber wenn ich dann was finde, schau auch immer wofür es denn bitte ist.

    Danke für Deine Hinweise.

  • Zwischenfazit April 2019

    Angeheftet ROCKPro64
    1
    1
    1 Stimmen
    1 Beiträge
    571 Aufrufe
    Niemand hat geantwortet
  • ROCKPro64 - Armbian - NAS umgezogen

    Armbian
    2
    0 Stimmen
    2 Beiträge
    626 Aufrufe
    FrankMF
    Das NAS mit den drei 2,5 Zoll HDD Platten läuft an einem 3A Netzteil - ohne Probleme. Hat heute Nacht die Jobs einwandfrei erledigt https://www.pine64.org/?product=rockpro64-12v-3a-eu-power-supply
  • ROCKPro64 - Armbian Desktop Variante

    Verschoben Armbian
    1
    1
    0 Stimmen
    1 Beiträge
    528 Aufrufe
    Niemand hat geantwortet
  • ROCKPro64 - Armbian nand-sata-install

    Verschoben Armbian
    14
    6
    0 Stimmen
    14 Beiträge
    2k Aufrufe
    FrankMF
    Ich habe heute, nachdem es einige Updates von Armbian gab, mal nachgeschaut ob ein spezieller Fehler verschwunden ist. Und zwar geht es um das Resizen der Partion nachdem wir Armbian auf eine USB-HDD (USB3) installiert haben. Ich setze dafür folgendes System ein. Hardware ROCKPro64v2.0 4GB RAM SanDisk 240GB 2,5 Zoll HDD (nix tolles) Software Welcome to ARMBIAN 5.67.181217 nightly Debian GNU/Linux 9 (stretch) 4.4.167-rockchip64 Was sehe ich nach dem Reboot? root@rockpro64:~# df -h Filesystem Size Used Avail Use% Mounted on udev 1.9G 0 1.9G 0% /dev tmpfs 388M 5.3M 383M 2% /run /dev/sda1 220G 1.3G 207G 1% / tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 5.0M 4.0K 5.0M 1% /run/lock tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup tmpfs 1.9G 4.0K 1.9G 1% /tmp /dev/mmcblk0p1 58G 1.3G 57G 3% /media/mmcboot /dev/zram0 49M 3.0M 43M 7% /var/log tmpfs 388M 0 388M 0% /run/user/0 Korrekt die Größe angepasst! Schnell mal den USB3 testen root@rockpro64:~# sudo dd if=/dev/zero of=sd.img bs=1M count=4096 conv=fdatasync 4096+0 records in 4096+0 records out 4294967296 bytes (4.3 GB, 4.0 GiB) copied, 38.0723 s, 113 MB/s Der Adapter root@rockpro64:~# lsusb -vvv Bus 004 Device 002: ID 2109:0715 VIA Labs, Inc. Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 3.10 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 9 idVendor 0x2109 VIA Labs, Inc. idProduct 0x0715 bcdDevice 1.31 iManufacturer 1 VLI Manufacture String iProduct 2 VLI Product String iSerial 3 000000123ADA bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 121 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0x80 (Bus Powered) MaxPower 224mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 2 bInterfaceClass 8 Mass Storage bInterfaceSubClass 6 SCSI bInterfaceProtocol 80 Bulk-Only iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 15 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x02 EP 2 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 15 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 1 bNumEndpoints 4 bInterfaceClass 8 Mass Storage bInterfaceSubClass 6 SCSI bInterfaceProtocol 98 iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x04 EP 4 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 0 Command pipe (0x01) Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x85 EP 5 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 15 MaxStreams 32 Data-in pipe (0x03) Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x06 EP 6 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 15 MaxStreams 32 Data-out pipe (0x04) Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x87 EP 7 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 0 MaxStreams 32 Status pipe (0x02) Binary Object Store Descriptor: bLength 5 bDescriptorType 15 wTotalLength 70 bNumDeviceCaps 4 FIXME: alloc bigger buffer for device capability descriptors Device Status: 0x0000 (Bus Powered) Ein lästiger Fehler weniger.
  • ROCKPro64 - USB3 bootet von SSD!

    ROCKPro64
    4
    0 Stimmen
    4 Beiträge
    887 Aufrufe
    FrankMF
    Da oben steht viel Bullshit Ich habe mich mal mit dem mechanischen Aufbau einer USB3 Buchse beschäftigt, bzw. dazu recherchiert. Auf dieser Seite ist ein klasse Bild, was das sehr gut verdeutlicht. https://kompendium.infotip.de/usb-3-0.html Abbildung 28. Dort sieht man das die USB3 Kontakte RX/TX und GND ganz hinten sind. Wenn ich den Stecker jetzt komplett einstecke, wird wohl versucht eine USB3 Verbindung aufzubauen, die ja im Moment aus irgendeinem Grund scheitert. Wenn ich den Stecker nun ein Stück raus ziehe, trenne ich die USB3-Verbindung und es kommt eine USB2-Verbindung zustande. So mit ist mir jetzt einiges klarer, aber das Problem ist ungelöst
  • ROCKPro64 - Docker Image

    ROCKPro64
    4
    1
    0 Stimmen
    4 Beiträge
    1k Aufrufe
    FrankMF
    Das ganze hat einen furchtbar schönen Vorteil. Mal angenommen, ich habe ein NodeBB-Forum in einem Container laufen. Will das Ding updaten und das crasht einfach mal so. Egal, Container stoppen, Container starten und alles läuft wieder. Mit dem Commit sichere ich mir dann den Zustand nachdem ich weiß, das alles klappt
  • Bionic Minimal 0.7.7 - Vergleich 4.4.132 & 4.18.0-rc3-1046

    Verschoben Archiv
    1
    0 Stimmen
    1 Beiträge
    597 Aufrufe
    Niemand hat geantwortet
  • 4GB Version - Out of stock

    Verschoben Archiv
    1
    1
    0 Stimmen
    1 Beiträge
    720 Aufrufe
    Niemand hat geantwortet