Skip to content

ROCKPro64 - Docker Image

ROCKPro64
  • Morgens beim Kaffee mal schnell was ausprobieren 🙂

    Das Docker Image vom Kamil auf eine SD-Karte gebügelt. Ab in den ROCKPro64 und starten.

    Docker ?

    rock64@rockpro64:~$ docker
    
    Usage:	docker [OPTIONS] COMMAND
    
    A self-sufficient runtime for containers
    
    Options:
          --config string      Location of client config files (default
                               "/home/rock64/.docker")
      -D, --debug              Enable debug mode
      -H, --host list          Daemon socket(s) to connect to
      -l, --log-level string   Set the logging level
                               ("debug"|"info"|"warn"|"error"|"fatal")
                               (default "info")
          --tls                Use TLS; implied by --tlsverify
          --tlscacert string   Trust certs signed only by this CA (default
                               "/home/rock64/.docker/ca.pem")
          --tlscert string     Path to TLS certificate file (default
                               "/home/rock64/.docker/cert.pem")
          --tlskey string      Path to TLS key file (default
                               "/home/rock64/.docker/key.pem")
          --tlsverify          Use TLS and verify the remote
      -v, --version            Print version information and quit
    
    Management Commands:
      config      Manage Docker configs
      container   Manage containers
      image       Manage images
      network     Manage networks
      node        Manage Swarm nodes
      plugin      Manage plugins
      secret      Manage Docker secrets
      service     Manage services
      stack       Manage Docker stacks
      swarm       Manage Swarm
      system      Manage Docker
      trust       Manage trust on Docker images
      volume      Manage volumes
    
    Commands:
      attach      Attach local standard input, output, and error streams to a running container
      build       Build an image from a Dockerfile
      commit      Create a new image from a container's changes
      cp          Copy files/folders between a container and the local filesystem
      create      Create a new container
      deploy      Deploy a new stack or update an existing stack
      diff        Inspect changes to files or directories on a container's filesystem
      events      Get real time events from the server
      exec        Run a command in a running container
      export      Export a container's filesystem as a tar archive
      history     Show the history of an image
      images      List images
      import      Import the contents from a tarball to create a filesystem image
      info        Display system-wide information
      inspect     Return low-level information on Docker objects
      kill        Kill one or more running containers
      load        Load an image from a tar archive or STDIN
      login       Log in to a Docker registry
      logout      Log out from a Docker registry
      logs        Fetch the logs of a container
      pause       Pause all processes within one or more containers
      port        List port mappings or a specific mapping for the container
      ps          List containers
      pull        Pull an image or a repository from a registry
      push        Push an image or a repository to a registry
      rename      Rename a container
      restart     Restart one or more containers
      rm          Remove one or more containers
      rmi         Remove one or more images
      run         Run a command in a new container
      save        Save one or more images to a tar archive (streamed to STDOUT by default)
      search      Search the Docker Hub for images
      start       Start one or more stopped containers
      stats       Display a live stream of container(s) resource usage statistics
      stop        Stop one or more running containers
      tag         Create a tag TARGET_IMAGE that refers to SOURCE_IMAGE
      top         Display the running processes of a container
      unpause     Unpause all processes within one or more containers
      update      Update configuration of one or more containers
      version     Show the Docker version information
      wait        Block until one or more containers stop, then print their exit codes
    
    Run 'docker COMMAND --help' for more information on a command.
    

    Ok, Docker ist installiert und läuft.

    Hello World

    rock64@rockpro64:~$ sudo docker run -t ubuntu:18.04 /bin/echo "Hello World"
    [sudo] password for rock64: 
    Unable to find image 'ubuntu:18.04' locally
    18.04: Pulling from library/ubuntu
    7dc40899884d: Pull complete 
    3c3b1bd6c6b3: Pull complete 
    f2b826692f9c: Pull complete 
    836583884d3e: Pull complete 
    27ede898dd26: Pull complete 
    Digest: sha256:de774a3145f7ca4f0bd144c7d4ffb2931e06634f11529653b23eba85aef8e378
    Status: Downloaded newer image for ubuntu:18.04
    Hello World
    

    Nicht wirklich spannend 😉

    nginx

    rock64@rockpro64:~$ sudo docker run -d --name demo_nginx -p 80:80 nginx
    Unable to find image 'nginx:latest' locally
    latest: Pulling from library/nginx
    8d586fc79193: Pull complete 
    542be7cb76c8: Pull complete 
    4c1ed6d3c37c: Pull complete 
    Digest: sha256:24a0c4b4a4c0eb97a1aabb8e29f18e917d05abfe1b7a7c07857230879ce7d3d3
    Status: Downloaded newer image for nginx:latest
    0b603cb5fa5b4ebf9113eb916b4dbc3d2cf48db8edf5b744d8b40eb6792b22dc
    

    Jetzt haben wir einen Docker Container mit nginx am Laufen. Mit dem Befehl docker ps kann man sich die laufenden Container anzeigen lassen.

    rock64@rockpro64:~$ sudo docker ps
    CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                NAMES
    0b603cb5fa5b        nginx               "nginx -g 'daemon of…"   8 seconds ago       Up 7 seconds        0.0.0.0:80->80/tcp   demo_nginx
    

    Adminstrieren des Docker Containers

    sudo docker exec -it 0b603cb5fa5b bash
    

    und schwupps, sind wir auf der Konsole.

    Mal eben nano nachinstallieren.

     root@0b603cb5fa5b:/# apt-get update
     Get:1 http://security.debian.org/debian-security stretch/updates InRelease [94.3 kB]
     Ign:2 http://cdn-fastly.deb.debian.org/debian stretch InRelease               
     Get:3 http://cdn-fastly.deb.debian.org/debian stretch-updates InRelease [91.0 kB]
     Get:4 http://cdn-fastly.deb.debian.org/debian stretch Release [118 kB]               
     Get:5 http://cdn-fastly.deb.debian.org/debian stretch Release.gpg [2434 B]
     Get:6 http://security.debian.org/debian-security stretch/updates/main arm64 Packages [421 kB]
     Get:7 http://cdn-fastly.deb.debian.org/debian stretch-updates/main arm64 Packages [5096 B]
     Get:8 http://cdn-fastly.deb.debian.org/debian stretch/main arm64 Packages [6940 kB]
     Fetched 7672 kB in 3s (1962 kB/s)   
     Reading package lists... Done
     root@0b603cb5fa5b:/# apt-get install nano
     Reading package lists... Done
     Building dependency tree       
     Reading state information... Done
     Suggested packages:
       spell
     The following NEW packages will be installed:
       nano
     0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
     Need to get 474 kB of archives.
     After this operation, 2088 kB of additional disk space will be used.
     Get:1 http://cdn-fastly.deb.debian.org/debian stretch/main arm64 nano arm64 2.7.4-1 [474 kB]
     Fetched 474 kB in 0s (764 kB/s)
     debconf: delaying package configuration, since apt-utils is not installed
     Selecting previously unselected package nano.
     (Reading database ... 7135 files and directories currently installed.)
     Preparing to unpack .../nano_2.7.4-1_arm64.deb ...
     Unpacking nano (2.7.4-1) ...
     Setting up nano (2.7.4-1) ...
     update-alternatives: using /bin/nano to provide /usr/bin/editor (editor) in auto mode
     update-alternatives: warning: skip creation of /usr/share/man/man1/editor.1.gz because associated file /usr/share/man/man1/nano.1.gz (of link group editor) doesn't exist
     update-alternatives: using /bin/nano to provide /usr/bin/pico (pico) in auto mode
     update-alternatives: warning: skip creation of /usr/share/man/man1/pico.1.gz because associated file /usr/share/man/man1/nano.1.gz (of link group pico) doesn't exist
    

    Was müssen wir noch testen? Ob nginx läuft. Dazu im Webbrowser folgendes eingeben

     http://192.168.3.19/
    

    Das ist jetzt die IP-Adresse, mit der mein ROCKPro64 läuft.

    0_1537611422093_nginx.png

    Soweit, sieht das ja brauchbar aus. Mal ein wenig mit rumspielen 🙂

    Docker Befehle

    Stoppen

    rock64@rockpro64:~$ sudo docker stop 0b603cb5fa5b
    0b603cb5fa5b
    

    Starten

    rock64@rockpro64:~$ sudo docker start 0b603cb5fa5b
    0b603cb5fa5b
    

    Und es gibt noch viel mehr da zu entdecken. Wird fortgesetzt......

  • docker info

    root@rockpro64:/usr/local/sbin# docker info
    Containers: 4
     Running: 0
     Paused: 0
     Stopped: 4
    Images: 4
    Server Version: 18.09.3
    Storage Driver: overlay2
     Backing Filesystem: extfs
     Supports d_type: true
     Native Overlay Diff: true
    Logging Driver: json-file
    Cgroup Driver: cgroupfs
    ....
    

    docker image ls

    Vorhandene Images auflisten.

    root@rockpro64:/usr/local/sbin# docker image ls
    REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
    my/nginx            latest              d6d53e05e4c8        45 hours ago        103MB
    nginx               latest              c190496bcbad        3 days ago          103MB
    debian              latest              1c2fcfa9d61f        3 days ago          95.8MB
    ubuntu              18.04               0926e73e5245        2 weeks ago         80.4MB
    

    docker Image temporär starten

    root@rockpro64:~/docker_test# docker run -p 4000:80 friendlyhello
     * Serving Flask app "app" (lazy loading)
     * Environment: production
       WARNING: Do not use the development server in a production environment.
       Use a production WSGI server instead.
     * Debug mode: off
     * Running on http://0.0.0.0:80/ (Press CTRL+C to quit)
    192.168.3.213 - - [30/Mar/2019 17:23:38] "GET / HTTP/1.1" 200 -
    192.168.3.213 - - [30/Mar/2019 17:23:38] "GET /favicon.ico HTTP/1.1" 404 -
    

    docker Image als Daemon starten

     root@rockpro64:~/docker_test# docker run -d -p 4000:80 friendlyhello
     0b9d4c5878b50dca6d820b2597a1c5128c176d7d4f7563d4ecbc8203fd28f8b3
    
  • Wir verfeinern das Ganze mal. Den Anfang macht der nginx Docker Container 🙂

    Als Basis dient das Docker-Image vom Kamil.

    Software

    Hier die rc5 Version

    root@rockpro64:~# uname -a
    Linux rockpro64 4.4.167-1161-rockchip-ayufan-g6f1664023387 #1 SMP Fri Mar 22 23:03:38 UTC 2019 aarch64 aarch64 aarch64 GNU/Linux
    

    nginx

    Container holen

    docker pull nginx
    

    Container starten

    docker run -d -p 80:80 nginx
    

    Docker Status

    root@rockpro64:~# docker ps
    CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                NAMES
    ef0c26f78268        nginx               "nginx -g 'daemon of…"   4 minutes ago       Up 4 minutes        0.0.0.0:80->80/tcp   heuristic_mirzakhani
    

    Docker Container betreten

    docker exec -it ef0c26f78268 bash
    

    Danach befindet man sich auf der Konsole, innerhalb des Containers. Dort kann man dann Änderungen vornehmen, nur blöd, das die nicht permanent sind. Dafür muss man noch was machen.

    Den Container, den man sich holt, dient nur als Grundlage. Also die konsole betreten, die Änderungen eintragen. Beispiel:

    apt update
    apt upgrade
    apt install nano
    nano /usr/share/nginx/html/index.html
    

    In der Datei ändern wir folgendes

    <h1>Welcome to nginx! ***TEST***</h1>
    

    Jetzt kann man die Konsole wieder verlassen.

    exit
    

    Wenn man nun den Container stoppen würde und erneut starten würde, wären alle Änderungen weg. Man bekommt immer den Stand, den man sich mittels pull gezogen hat. OK, das kann man aber auch permanent machen.

    docker commit

    root@rockpro64:~# docker commit ef0c26f78268 nginx_test
    

    Mit diesem Befehl erzeuge ich aus dem Container nginx den neuen Container nginx_test mit allen meinen Änderungen. Das sieht man hier

    root@rockpro64:~# docker image ls
    REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
    nginx_test          latest              05b57c23e8c5        32 seconds ago      124MB
    nginx               latest              2ba173e8977e        2 days ago          103MB
    

    Nun stoppt man den ersten Container nginx und startet seinen neuen Container nginx_test, mit allen Änderungen.

    nginx default.conf

    Die findet man unter

    nano /etc/nginx/conf.d/default.conf
    
  • 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 🙂

  • FrankMF FrankM hat am auf dieses Thema verwiesen
  • Docker - Portainer

    Linux docker portainer linux
    3
    6
    0 Stimmen
    3 Beiträge
    799 Aufrufe
    FrankMF
    Dann grabe ich das mal wieder aus Bedingt durch den Wegfall meines Proxmox, musste ich mir Gedanken darüber machen, wie ein paar Dienste auch weiterhin laufen sollen. Um mal die zwei wichtigsten zu nennen. checkmk DokuWiki Diese sollen später, wenn der zweite NanoPi R5S aus China da ist, dort laufen. Da der aber mit der Schneckenpost kommt, kann man ja in der Zwischenzeit mal wieder mit Docker spielen. Ich erinnerte mich daran, das checkmk eine sehr gute Anleitung hat, so das ich das mal wieder ausprobierte. Klappte einwandfrei. Dann erinnerte mich an Portainer und dachte mir, das probiere ich mal wieder aus [image: 1659859625137-1d2dc9b3-ad71-45c5-b552-72c88a1bf773-grafik.png] Ich hatte übrigens die Endpoints gesucht und nicht gefunden, die heißen jetzt Environments. Auf dem Bild ist noch keiner eingerichtet. [image: 1659859549311-4bdbf196-1b36-4e65-94d0-0e56daa473bf-grafik.png] Irgendwie ist das wirklich richtig gute Software. Ich mag den Portainer und auch als selbst ausgebildeter ITler kommt man damit sehr schnell ganz gut zurecht. Ja, man kann die ganzen Docker Befehle auch über die Konsole eingeben, was ich normalerweise auch mit ganz vielen Dingen mache, aber das macht hier einfach Spaß. Man hat auch schnell einen guten Überblick was wo läuft usw. Wer so was sucht, einfach mal ausprobieren. Klare Empfehlung von mir.
  • ROCKPro64 - Zwei LAN Schnittstellen / VLAN einrichten

    ROCKPro64 linux vlan rockpro64
    4
    0 Stimmen
    4 Beiträge
    662 Aufrufe
    FrankMF
    Das Setup heute mal getestet um zu sehen, ob das auch so funktioniert. LAN an meine Fritzbox (DHCP) an eth1.100 mein Notebook an eth1.200 meine PS4 Und dann mal gemütlich eine Runde MW gezockt. Läuft alles einwandfrei
  • ROCKPro64 - PCIe SATA-Karte macht immer mal Probleme

    ROCKPro64 rockpro64
    2
    0 Stimmen
    2 Beiträge
    555 Aufrufe
    FrankMF
    Das ist das Ergebnis des Stresstests [ 2461.489468] ata2.00: exception Emask 0x10 SAct 0xffffffff SErr 0x400000 action 0x6 frozen [ 2461.490206] ata2.00: irq_stat 0x08000000, interface fatal error [ 2461.490732] ata2: SError: { Handshk } [ 2461.491062] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.491532] ata2.00: cmd 61/40:00:f8:a6:64/05:00:84:00:00/40 tag 0 ncq dma 688128 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.492993] ata2.00: status: { DRDY } [ 2461.493327] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.493796] ata2.00: cmd 61/c0:08:38:ac:64/03:00:84:00:00/40 tag 1 ncq dma 491520 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.495181] ata2.00: status: { DRDY } [ 2461.495507] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.496276] ata2.00: cmd 61/c0:10:a0:f5:64/02:00:84:00:00/40 tag 2 ncq dma 360448 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.497697] ata2.00: status: { DRDY } [ 2461.498029] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.498497] ata2.00: cmd 61/40:18:60:f8:64/05:00:84:00:00/40 tag 3 ncq dma 688128 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.499886] ata2.00: status: { DRDY } [ 2461.500213] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.500681] ata2.00: cmd 61/c0:20:a0:fd:64/02:00:84:00:00/40 tag 4 ncq dma 360448 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.502087] ata2.00: status: { DRDY } [ 2461.502416] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.502884] ata2.00: cmd 61/40:28:60:00:65/05:00:84:00:00/40 tag 5 ncq dma 688128 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.505026] ata2.00: status: { DRDY } [ 2461.505378] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.505852] ata2.00: cmd 61/c0:30:a0:05:65/02:00:84:00:00/40 tag 6 ncq dma 360448 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.507244] ata2.00: status: { DRDY } [ 2461.507572] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.508040] ata2.00: cmd 61/40:38:60:08:65/05:00:84:00:00/40 tag 7 ncq dma 688128 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.509472] ata2.00: status: { DRDY } [ 2461.509808] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.510277] ata2.00: cmd 61/a0:40:a0:0d:65/02:00:84:00:00/40 tag 8 ncq dma 344064 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.511667] ata2.00: status: { DRDY } [ 2461.511994] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.512461] ata2.00: cmd 61/40:48:00:20:66/05:00:84:00:00/40 tag 9 ncq dma 688128 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.514503] ata2.00: status: { DRDY } [ 2461.514850] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.515322] ata2.00: cmd 61/40:50:00:28:66/05:00:84:00:00/40 tag 10 ncq dma 688128 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.516721] ata2.00: status: { DRDY } [ 2461.517084] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.517562] ata2.00: cmd 61/c0:58:40:2d:66/02:00:84:00:00/40 tag 11 ncq dma 360448 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.519253] ata2.00: status: { DRDY } [ 2461.519595] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.520066] ata2.00: cmd 61/40:60:f8:9e:64/05:00:84:00:00/40 tag 12 ncq dma 688128 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.521504] ata2.00: status: { DRDY } [ 2461.521840] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.522309] ata2.00: cmd 61/c0:68:38:a4:64/02:00:84:00:00/40 tag 13 ncq dma 360448 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.523706] ata2.00: status: { DRDY } [ 2461.524033] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.524501] ata2.00: cmd 61/40:70:f8:af:64/05:00:84:00:00/40 tag 14 ncq dma 688128 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.525925] ata2.00: status: { DRDY } [ 2461.526256] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.526725] ata2.00: cmd 61/c0:78:38:b5:64/02:00:84:00:00/40 tag 15 ncq dma 360448 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.528122] ata2.00: status: { DRDY } [ 2461.528449] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.528939] ata2.00: cmd 61/40:80:f8:b7:64/05:00:84:00:00/40 tag 16 ncq dma 688128 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.530339] ata2.00: status: { DRDY } [ 2461.530667] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.531136] ata2.00: cmd 61/c0:88:38:bd:64/02:00:84:00:00/40 tag 17 ncq dma 360448 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.532532] ata2.00: status: { DRDY } [ 2461.532880] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.533357] ata2.00: cmd 61/40:90:f8:bf:64/05:00:84:00:00/40 tag 18 ncq dma 688128 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.534754] ata2.00: status: { DRDY } [ 2461.535081] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.535549] ata2.00: cmd 61/c0:98:38:c5:64/02:00:84:00:00/40 tag 19 ncq dma 360448 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.536970] ata2.00: status: { DRDY } [ 2461.537301] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.537769] ata2.00: cmd 61/40:a0:f8:c7:64/05:00:84:00:00/40 tag 20 ncq dma 688128 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.539165] ata2.00: status: { DRDY } [ 2461.539491] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.539960] ata2.00: cmd 61/c0:a8:38:cd:64/02:00:84:00:00/40 tag 21 ncq dma 360448 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.541381] ata2.00: status: { DRDY } [ 2461.541713] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.542182] ata2.00: cmd 61/40:b0:f8:cf:64/05:00:84:00:00/40 tag 22 ncq dma 688128 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.543577] ata2.00: status: { DRDY } [ 2461.543905] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.544374] ata2.00: cmd 61/40:b8:f8:d7:64/05:00:84:00:00/40 tag 23 ncq dma 688128 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.545790] ata2.00: status: { DRDY } [ 2461.546120] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.546589] ata2.00: cmd 61/c0:c0:38:dd:64/02:00:84:00:00/40 tag 24 ncq dma 360448 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.547987] ata2.00: status: { DRDY } [ 2461.548314] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.548782] ata2.00: cmd 61/a8:c8:f8:df:64/05:00:84:00:00/40 tag 25 ncq dma 741376 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.550198] ata2.00: status: { DRDY } [ 2461.550530] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.550999] ata2.00: cmd 61/c0:d0:a0:e5:64/02:00:84:00:00/40 tag 26 ncq dma 360448 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.552396] ata2.00: status: { DRDY } [ 2461.552723] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.553208] ata2.00: cmd 61/40:d8:60:e8:64/05:00:84:00:00/40 tag 27 ncq dma 688128 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.554607] ata2.00: status: { DRDY } [ 2461.554935] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.555404] ata2.00: cmd 61/c0:e0:a0:ed:64/02:00:84:00:00/40 tag 28 ncq dma 360448 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.556800] ata2.00: status: { DRDY } [ 2461.557145] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.557617] ata2.00: cmd 61/40:e8:60:f0:64/05:00:84:00:00/40 tag 29 ncq dma 688128 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.559012] ata2.00: status: { DRDY } [ 2461.559340] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.559807] ata2.00: cmd 61/c0:f0:38:d5:64/02:00:84:00:00/40 tag 30 ncq dma 360448 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.561221] ata2.00: status: { DRDY } [ 2461.561552] ata2.00: failed command: WRITE FPDMA QUEUED [ 2461.562021] ata2.00: cmd 61/c0:f8:40:25:66/02:00:84:00:00/40 tag 31 ncq dma 360448 out res 40/00:50:00:28:66/00:00:84:00:00/40 Emask 0x10 (ATA bus error) [ 2461.563416] ata2.00: status: { DRDY } [ 2461.563752] ata2: hard resetting link [ 2471.561504] ata2: softreset failed (1st FIS failed) [ 2471.561959] ata2: hard resetting link [ 2481.560785] ata2: softreset failed (1st FIS failed) [ 2481.561238] ata2: hard resetting link [ 2516.561654] ata2: softreset failed (1st FIS failed) [ 2516.562109] ata2: limiting SATA link speed to 3.0 Gbps [ 2516.562113] ata2: hard resetting link [ 2521.561261] ata2: softreset failed (1st FIS failed) [ 2521.561715] ata2: reset failed, giving up [ 2521.562074] ata2.00: disabled [ 2521.562575] ata2: EH complete [ 2521.562677] sd 1:0:0:0: [sdb] tag#18 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2521.562686] sd 1:0:0:0: [sdb] tag#18 CDB: opcode=0x35 35 00 00 00 00 00 00 00 00 00 [ 2521.562701] print_req_error: I/O error, dev sdb, sector 0 [ 2521.562791] sd 1:0:0:0: [sdb] tag#20 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2521.562802] sd 1:0:0:0: [sdb] tag#19 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2521.562873] sd 1:0:0:0: [sdb] tag#19 CDB: opcode=0x2a 2a 00 84 66 25 40 00 02 c0 00 [ 2521.562888] print_req_error: I/O error, dev sdb, sector 2221286720 [ 2521.563107] sd 1:0:0:0: [sdb] tag#21 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2521.563126] sd 1:0:0:0: [sdb] tag#21 CDB: opcode=0x2a 2a 00 84 64 f0 60 00 05 40 00 [ 2521.563138] print_req_error: I/O error, dev sdb, sector 2221207648 [ 2521.563422] sd 1:0:0:0: [sdb] tag#22 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2521.563772] sd 1:0:0:0: [sdb] tag#20 CDB: opcode=0x2a 2a 00 84 64 d5 38 00 02 c0 00 [ 2521.564326] print_req_error: I/O error, dev sdb, sector 2221200696 [ 2521.564337] sd 1:0:0:0: [sdb] tag#22 CDB: opcode=0x2a 2a 00 84 64 ed a0 00 02 c0 00 [ 2521.564896] print_req_error: I/O error, dev sdb, sector 2221206944 [ 2521.565088] sd 1:0:0:0: [sdb] tag#26 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2521.565469] sd 1:0:0:0: [sdb] tag#26 CDB: opcode=0x2a 2a 00 84 64 dd 38 00 02 c0 00 [ 2521.565483] print_req_error: I/O error, dev sdb, sector 2221202744 [ 2521.565610] sd 1:0:0:0: [sdb] tag#23 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2521.566056] sd 1:0:0:0: [sdb] tag#23 CDB: opcode=0x2a 2a 00 84 64 e8 60 00 05 40 00 [ 2521.566069] print_req_error: I/O error, dev sdb, sector 2221205600 [ 2521.566183] sd 1:0:0:0: [sdb] tag#29 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2521.566641] sd 1:0:0:0: [sdb] tag#29 CDB: opcode=0x2a 2a 00 84 64 cd 38 00 02 c0 00 [ 2521.566654] print_req_error: I/O error, dev sdb, sector 2221198648 [ 2521.566954] sd 1:0:0:0: [sdb] tag#24 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2521.567224] sd 1:0:0:0: [sdb] tag#24 CDB: opcode=0x2a 2a 00 84 64 e5 a0 00 02 c0 00 [ 2521.567237] print_req_error: I/O error, dev sdb, sector 2221204896 [ 2521.567459] sd 1:0:0:0: [sdb] tag#30 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2521.567809] sd 1:0:0:0: [sdb] tag#30 CDB: opcode=0x2a 2a 00 84 64 c7 f8 00 05 40 00 [ 2521.567821] print_req_error: I/O error, dev sdb, sector 2221197304 [ 2521.584903] md: super_written gets error=10 [ 2521.585306] md/raid1:md0: Disk failure on dm-1, disabling device. md/raid1:md0: Operation continuing on 1 devices. [ 2526.581450] scsi_io_completion_action: 41779 callbacks suppressed [ 2526.581461] sd 1:0:0:0: [sdb] tag#27 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2526.581467] sd 1:0:0:0: [sdb] tag#27 CDB: opcode=0x2a 2a 00 84 66 7d 50 00 00 01 00 [ 2526.581469] print_req_error: 41780 callbacks suppressed [ 2526.581471] print_req_error: I/O error, dev sdb, sector 2221309264 [ 2526.582524] sd 1:0:0:0: [sdb] tag#28 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2526.582530] sd 1:0:0:0: [sdb] tag#28 CDB: opcode=0x2a 2a 00 84 66 7d 51 00 00 01 00 [ 2526.582534] print_req_error: I/O error, dev sdb, sector 2221309265 [ 2526.583366] sd 1:0:0:0: [sdb] tag#29 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2526.583370] sd 1:0:0:0: [sdb] tag#29 CDB: opcode=0x2a 2a 00 84 66 7d 52 00 00 01 00 [ 2526.583373] print_req_error: I/O error, dev sdb, sector 2221309266 [ 2526.584113] sd 1:0:0:0: [sdb] tag#30 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2526.584117] sd 1:0:0:0: [sdb] tag#30 CDB: opcode=0x2a 2a 00 84 66 7d 53 00 00 01 00 [ 2526.584119] print_req_error: I/O error, dev sdb, sector 2221309267 [ 2526.584960] sd 1:0:0:0: [sdb] tag#0 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2526.584968] sd 1:0:0:0: [sdb] tag#0 CDB: opcode=0x2a 2a 00 84 66 7d 54 00 00 01 00 [ 2526.584971] print_req_error: I/O error, dev sdb, sector 2221309268 [ 2526.585765] sd 1:0:0:0: [sdb] tag#1 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2526.585769] sd 1:0:0:0: [sdb] tag#1 CDB: opcode=0x2a 2a 00 84 66 7d 55 00 00 01 00 [ 2526.585772] print_req_error: I/O error, dev sdb, sector 2221309269 [ 2526.586461] sd 1:0:0:0: [sdb] tag#2 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2526.586465] sd 1:0:0:0: [sdb] tag#2 CDB: opcode=0x2a 2a 00 84 66 7d 56 00 00 01 00 [ 2526.586468] print_req_error: I/O error, dev sdb, sector 2221309270 [ 2526.587144] sd 1:0:0:0: [sdb] tag#3 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2526.587148] sd 1:0:0:0: [sdb] tag#3 CDB: opcode=0x2a 2a 00 84 66 7d 57 00 00 01 00 [ 2526.587150] print_req_error: I/O error, dev sdb, sector 2221309271 [ 2526.587734] sd 1:0:0:0: [sdb] tag#4 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2526.587737] sd 1:0:0:0: [sdb] tag#4 CDB: opcode=0x2a 2a 00 84 66 7d 58 00 00 01 00 [ 2526.587739] print_req_error: I/O error, dev sdb, sector 2221309272 [ 2526.588320] sd 1:0:0:0: [sdb] tag#5 UNKNOWN(0x2003) Result: hostbyte=0x04 driverbyte=0x00 [ 2526.588323] sd 1:0:0:0: [sdb] tag#5 CDB: opcode=0x2a 2a 00 84 66 7d 59 00 00 01 00 [ 2526.588325] print_req_error: I/O error, dev sdb, sector 2221309273 Und, wieder eine Platte im Raid1 verloren rock64@rockpro64v_2_1:~$ cat /proc/mdstat Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md0 : active raid1 dm-1[2](F) dm-0[1] 1953379392 blocks super 1.2 [2/1] [_U] bitmap: 5/15 pages [20KB], 65536KB chunk unused devices: <none> Leider habe ich nicht die Kenntnisse um zu erkennen, woran das liegt.
  • H.265/x265 dekodiert und wiedergegeben (4K Video)

    ROCKPro64 rockpro64
    1
    0 Stimmen
    1 Beiträge
    458 Aufrufe
    Niemand hat geantwortet
  • ROCKPro64 - RP64.GPIO

    Angeheftet Verschoben Hardware hardware rockpro64
    6
    1
    0 Stimmen
    6 Beiträge
    6k Aufrufe
    FrankMF
    Hallo zusammen, da ich weiß das dieser Artikel recht beliebt ist, wollen wir den heute mal aktualisieren. Vieles aus den vorherigen Beiträgen passt noch. Es gibt aber kleine Anpassungen. Hardware ROCKPro64v21. 2GB RAM Software Kamils Release 0.10.9 Linux rockpro64 5.6.0-1132-ayufan-g81043e6e109a #ayufan SMP Tue Apr 7 10:07:35 UTC 2020 aarch64 GNU/Linux Installation apt install python Danach laden wir das Projekt git clone https://github.com/Leapo/Rock64-R64.GPIO PIN Nummern anpassen cd Rock64-R64.GPIO/R64 nano _GPIO.py Datei ergänzen # Define GPIO arrays #ROCK_valid_channels = [27, 32, 33, 34, 35, 36, 37, 38, 64, 65, 67, 68, 69, 76, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 96, 97, 98, 100, 101, 102, 103, 104] #BOARD_to_ROCK = [0, 0, 0, 89, 0, 88, 0, 0, 64, 0, 65, 0, 67, 0, 0, 100, 101, 0, 102, 97, 0, 98, 103, 96, 104, 0, 76, 68, 69, 0, 0, 0, 38, 32, 0, 33, 37, 34, 36, 0, 35, 0, 0, 81, 82, 87, 83, 0, 0, 80, 79, 85, 84, 27, 86, 0, 0, 0, 0, 0, 0, 89, 88] #BCM_to_ROCK = [68, 69, 89, 88, 81, 87, 83, 76, 104, 98, 97, 96, 38, 32, 64, 65, 37, 80, 67, 33, 36, 35, 100, 101, 102, 103, 34, 82] ROCK_valid_channels = [52,53,152,54,50,33,48,39,41,43,155,156,125,122,121,148,147,120,36,149,153,42,45,44,124,126,123,127] BOARD_to_ROCK = [0,0,0,52,0,53,0,152,148,0,147,54,120,50,0,33,36,0,149,48,0,39,153,41,42,0,45,43,44,155,0,156,124,125,0,122,126,121,123,0,127] BCM_to_ROCK = [43,44,52,53,152,155,156,45,42,39,48,41,124,125,148,147,124,54,120,122,123,127,33,36,149,153,121,50] Abspeichern. Datei test.py anlegen nano test.py Inhalt #!/usr/bin/env python # Frank Mankel, 2018, LGPLv3 License # Rock 64 GPIO Library for Python # Thanks Allison! Thanks smartdave! import R64.GPIO as GPIO from time import sleep print("Output Test R64.GPIO Module...") # Set Variables var_gpio_out = 156 var_gpio_in = 155 # GPIO Setup GPIO.setwarnings(True) GPIO.setmode(GPIO.ROCK) GPIO.setup(var_gpio_out, GPIO.OUT, initial=GPIO.HIGH) # Set up GPIO as an output, with an initial state of HIGH GPIO.setup(var_gpio_in, GPIO.IN, pull_up_down=GPIO.PUD_UP) # Set up GPIO as an input, pullup enabled # Test Output print("") print("Testing GPIO Input/Output:") while True: var_gpio_state_in = GPIO.input(var_gpio_in) var_gpio_state = GPIO.input(var_gpio_out) # Return State of GPIO if var_gpio_state == 0 and var_gpio_state_in == 1: GPIO.output(var_gpio_out,GPIO.HIGH) # Set GPIO to HIGH print("Input State: " + str(var_gpio_state_in)) # Print results print("Output State IF : " + str(var_gpio_state)) # Print results else: GPIO.output(var_gpio_out,GPIO.LOW) # Set GPIO to LOW print("Input State: " + str(var_gpio_state_in)) # Print results print("Output State ELSE: " + str(var_gpio_state)) # Print results sleep(0.5) exit() Beispiel [image: 1537522070243-input_ergebnis.jpg] Wenn der Taster im Bild betätigt wird, soll die LED blinken. Wir benutzen folgende Ein- Augänge des ROCKPro64. # Set Variables var_gpio_out = 156 var_gpio_in = 155 Das heißt: an Pin 1 (3,3V) kommt eine Strippe des Tasters an Pin 29 (Input) kommt eine Strippe des Tasters an Pin 31 (Output) kommt der Plus-Pol der LED an Pin 39 (GND) kommt der Minus-Pol der LED Somit wird auf den Eingang (Pin 29) bei Betätigung des Tasters 3,3 Volt angelegt. Damit wird dann der Eingang als High (1) erkannt. Die LED wird über den Ausgang (Pin 31) gesteuert. Starten kann man das Script mit python test.py https://www.youtube.com/watch?v=aPSC0Q0xInw
  • [HOWTO]ROCKPro64 - NAS bauen Teil 1

    Angeheftet ROCKPro64 howto rockpro64
    5
    5
    0 Stimmen
    5 Beiträge
    2k Aufrufe
    FrankMF
    Die Pinne für den Adapter liegen ja nur parallel zum Eingang des Steckers vom Netzteil. Also, solange da nichts abfackelt kann man da eine Menge Strom drüber jagen Wenn es funktioniert ist ja alles gut.
  • Booten von der NVMe Platte

    ROCKPro64 howto rockpro64
    16
    0 Stimmen
    16 Beiträge
    8k Aufrufe
    S
    Für dies Kernal: Linux rockpro64 4.4.167-1213-rockchip-ayufan-g34ae07687fce #1 SMP Tue Jun 18 20:44:49 UTC 2019 aarch64 GNU/Linux Booten von der NVMe Platte nicht möglich. Ich folgte die folgende Schritte. Leider funktioniert es nicht. Es gibt einen Fehler in Boot. Ohne RAID oder LVM config. Specs: Rockpro64 Marvel PCIe 88se9230 karte SANDISK SSD 120 GB
  • Schaltpläne veröffentlicht!

    ROCKPro64 rockpro64
    1
    1
    0 Stimmen
    1 Beiträge
    1k Aufrufe
    Niemand hat geantwortet