Why can't Pi 4B read a copied back-up micro-sd card in a usb card reader?Find the right device name of an SD card connected via a USB card readerUSB Hard drive mounting as Read-OnlyWhy does my USB drive appeared split in two?PANIC: VFS: Unable to mount root fs on unknown-block(179,2)Impossible to restore a backup raspberry 3 imageWhy can't I write to a mounted USB hard disk drive?how to get / mounted as external USB drive?Use SD Card Copier to create backup to USB, then copy back to SD card?Can't mount USB driveHow to copy files from an SD in a USB card reader

Colored grid with coordinates on all sides?

'spazieren' - walking in a silly and affected manner?

My colleague treats me like he's my boss, yet we're on the same level

How to get frequency counts using column breaks by row?

New coworker has strange workplace requirements - how should I deal with them?

How could reincarnation magic be limited to prevent overuse?

Can I leave a large suitcase at TPE during a 4-hour layover, and pick it up 4.5 days later when I come back to TPE on my way to Taipei downtown?

What is the motivation behind designing a control stick that does not move?

Can authors email you PDFs of their textbook for free?

How were US credit cards verified in-store in the 1980's?

Heuristic argument for the Riemann Hypothesis

Can the inductive kick be discharged without a freewheeling diode, in this example?

Why does the U.S. military maintain their own weather satellites?

Can a pet cat attune to a magical item?

How would a disabled person earn their living in a medieval-type town?

How to run a command 1 out of N times in Bash

Heavy Box Stacking

What is the definition of belonging in axiomatic set theory?

How to save money by shopping at a variety of grocery stores?

How smart contract transactions work?

Cheap oscilloscope showing 16 MHz square wave

Using font to highlight a god's speech in dialogue

Sum and average calculator

How can I improve my formal definitions?



Why can't Pi 4B read a copied back-up micro-sd card in a usb card reader?


Find the right device name of an SD card connected via a USB card readerUSB Hard drive mounting as Read-OnlyWhy does my USB drive appeared split in two?PANIC: VFS: Unable to mount root fs on unknown-block(179,2)Impossible to restore a backup raspberry 3 imageWhy can't I write to a mounted USB hard disk drive?how to get / mounted as external USB drive?Use SD Card Copier to create backup to USB, then copy back to SD card?Can't mount USB driveHow to copy files from an SD in a USB card reader






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








1















I am using the SD Card Copier accessory to make a micro-sd card back-up. The back-up card (in a micro-sd to USB adapter) is recognized by the copier as sdb, and I know that the copying is OK, because I can replace the OS micro-sd card by the back-up card, and the Pi boots successfully with everything in place.



On my previous Pi (model 3B) I could check the back-up card by simply removing it from the USB port (as it was unmounted) and re-plugging it so that I could inspect it via pcmanfm.



On the Pi 4 the re-plugged micro-sd back-up card is not recognized by the system and is impossible to mount or read. I can read it in the File Manager on my desktop PC, so there is presumably no problem with the micro-sd card itself.



Is there anything I can do to read the back-up card on the Pi 4?










share|improve this question







New contributor



Peter N is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





















  • What does a dmesg command show when you plug it in? Do the partitions need an fsck -f -y /dev/sdxx run to clean them?

    – Dougie
    7 hours ago

















1















I am using the SD Card Copier accessory to make a micro-sd card back-up. The back-up card (in a micro-sd to USB adapter) is recognized by the copier as sdb, and I know that the copying is OK, because I can replace the OS micro-sd card by the back-up card, and the Pi boots successfully with everything in place.



On my previous Pi (model 3B) I could check the back-up card by simply removing it from the USB port (as it was unmounted) and re-plugging it so that I could inspect it via pcmanfm.



On the Pi 4 the re-plugged micro-sd back-up card is not recognized by the system and is impossible to mount or read. I can read it in the File Manager on my desktop PC, so there is presumably no problem with the micro-sd card itself.



Is there anything I can do to read the back-up card on the Pi 4?










share|improve this question







New contributor



Peter N is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





















  • What does a dmesg command show when you plug it in? Do the partitions need an fsck -f -y /dev/sdxx run to clean them?

    – Dougie
    7 hours ago













1












1








1








I am using the SD Card Copier accessory to make a micro-sd card back-up. The back-up card (in a micro-sd to USB adapter) is recognized by the copier as sdb, and I know that the copying is OK, because I can replace the OS micro-sd card by the back-up card, and the Pi boots successfully with everything in place.



On my previous Pi (model 3B) I could check the back-up card by simply removing it from the USB port (as it was unmounted) and re-plugging it so that I could inspect it via pcmanfm.



On the Pi 4 the re-plugged micro-sd back-up card is not recognized by the system and is impossible to mount or read. I can read it in the File Manager on my desktop PC, so there is presumably no problem with the micro-sd card itself.



Is there anything I can do to read the back-up card on the Pi 4?










share|improve this question







New contributor



Peter N is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











I am using the SD Card Copier accessory to make a micro-sd card back-up. The back-up card (in a micro-sd to USB adapter) is recognized by the copier as sdb, and I know that the copying is OK, because I can replace the OS micro-sd card by the back-up card, and the Pi boots successfully with everything in place.



On my previous Pi (model 3B) I could check the back-up card by simply removing it from the USB port (as it was unmounted) and re-plugging it so that I could inspect it via pcmanfm.



On the Pi 4 the re-plugged micro-sd back-up card is not recognized by the system and is impossible to mount or read. I can read it in the File Manager on my desktop PC, so there is presumably no problem with the micro-sd card itself.



Is there anything I can do to read the back-up card on the Pi 4?







mount backup






share|improve this question







New contributor



Peter N is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.










share|improve this question







New contributor



Peter N is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.








share|improve this question




share|improve this question






New contributor



Peter N is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.








asked 8 hours ago









Peter NPeter N

61 bronze badge




61 bronze badge




New contributor



Peter N is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.




New contributor




Peter N is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.

















  • What does a dmesg command show when you plug it in? Do the partitions need an fsck -f -y /dev/sdxx run to clean them?

    – Dougie
    7 hours ago

















  • What does a dmesg command show when you plug it in? Do the partitions need an fsck -f -y /dev/sdxx run to clean them?

    – Dougie
    7 hours ago
















What does a dmesg command show when you plug it in? Do the partitions need an fsck -f -y /dev/sdxx run to clean them?

– Dougie
7 hours ago





What does a dmesg command show when you plug it in? Do the partitions need an fsck -f -y /dev/sdxx run to clean them?

– Dougie
7 hours ago










3 Answers
3






active

oldest

votes


















2















I don't think the Pi model is a factor here.



When you made your backup, did you select New partition UUIDs?



screenshot of piclone



If not, that's likely the problem.
SD Card Copier help says this:




Under Raspbian Stretch and later versions, you cannot mount two partitions with the same UUID, so you will not be able to mount a cloned SD card when booted from the disk from which it was cloned. If you need to do this, check the "New Partition UUIDs" box before copying.




You can change the UUID with this command:



sudo tune2fs /dev/sdb2 -U random


After that, unplug the microSD adapter, then reinsert it. It should auto-mount from now on. If not, try rebooting.






share|improve this answer










New contributor



Botspot is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





















  • Good point (I always change PARTUID) which is what the SD Card Copier does, but AFAIK when SD Card Copier creates the new ext4 partition it should have a unique UUID - although other methods of cloning a card may not.

    – Milliways
    5 hours ago











  • The correct command to generate a new UUID is sudo tune2fs /dev/sdb2 -U random NOTE partition /dev/sdb2 rather than disk /dev/sdb

    – Milliways
    5 hours ago











  • @Milliways Good catch. My answer is updated.

    – Botspot
    4 hours ago


















0















I regularly read SD Cards on my Pi4, so this is possible.

(The USB3 ports on the Pi4 have some limitations with USB2 devices, although I would not expect this to affect a SD Card reader, but have had occasional problems and usually use one of the USB2 ports.)



I have experienced only one problem which proved to be due to a faulty Card.



I need to manually mount the Card, and can post the script I use to do this.



#!/bin/bash
# 2017-05-06
# 2018-11-18

BOOT_MOUNT='/mnt/SDA1'
ROOT_MOUNT='/mnt/SDA2'

# Check/create Mount Points
if [ ! -e $BOOT_MOUNT ]; then
mkdir $BOOT_MOUNT
fi
if [ ! -e $ROOT_MOUNT ]; then
mkdir $ROOT_MOUNT
fi
echo "mounts " $BOOT_MOUNT $ROOT_MOUNT
if [ -e /dev/sda ]; then
SD1='/dev/sda1'
SD2='/dev/sda2'
else
SD1='/dev/sdb1'
SD2='/dev/sdb2'
fi
echo $SD
# Mount Partitions
if ! $(mountpoint -q $BOOT_MOUNT); then
mount $SD1 $BOOT_MOUNT # mount partition containing boot files
fi
if ! $(mountpoint -q $ROOT_MOUNT); then
mount $SD2 $ROOT_MOUNT # mount root partition containing OS files
fi


The following unmounts SD Cards



#!/bin/bash
# 2017-05-06
# 2018-11-18

BOOT_MOUNT='/mnt/SDA1'
ROOT_MOUNT='/mnt/SDA2'

umount $SD1 $BOOT_MOUNT # mount partition containing boot files
umount $SD2 $ROOT_MOUNT # mount root partition containing OS files





share|improve this answer


































    0















    The point raised by Botspot is valid.



    You should give SD Card copies a unique PARTUUID which needs to be changed in several places.



    The following script set-diskid will set PARTUUID on a booted system in all the correct places.



    It can be invoked with sudo set-diskid -n



    NOTE you need to reboot after running the script.



    #!/bin/bash

    errexit()

    echo ""
    echo "$1"
    echo ""
    exit 1


    usage()

    errexit "Usage: $0 [-n

    if [ $(id -u) -ne 0 ]; then
    errexit "$0 must be run as root user"
    fi

    PTUUID="$1"
    if [ "$PTUUID" = "" ]; then
    usage
    fi
    if [ "$PTUUID" = "-n" ]; then
    echo $PTUUID
    PTUUID=$(uuid | cut -c-8)
    fi
    PTUUID="$(tr [A-Z] [a-z] <<< "$PTUUID")"
    if [[ ! "$PTUUID" =~ ^[[:xdigit:]]8$ ]]; then
    errexit "Invalid DiskID: $PTUUID"
    fi
    echo ""
    echo -n "Set DiskID to $PTUUID on /dev/mmcblk0 (y/n)? "
    while read -r -n 1 -s answer; do
    if [[ "$answer" = [yYnN] ]]; then
    echo "$answer"
    if [[ "$answer" = [yY] ]]; then
    break
    else
    errexit "Aborted"
    fi
    fi
    done
    echo ""
    fdisk /dev/mmcblk0 <<EOF > /dev/null
    p
    x
    i
    0x$PTUUID
    r
    p
    w
    EOF
    sync
    PARTUUID="$(sed -n 's|^.*PARTUUID=(S+)s.*|1|p' /boot/cmdline.txt)"
    if [ "$PARTUUID" != "" ]; then
    sed -i "s|PARTUUID=S+s|PARTUUID=$PTUUID-02 |" /boot/cmdline.txt
    sed -i "s|$PARTUUID:0:($#PARTUUID - 1)|$PTUUID-0|" /etc/fstab
    fi
    sync


    NOTE PARTUUID and UUID are different entities.




    UUID is a 128-bit number used to identify information in computer systems, in particular it is used to identify partitions on GPT & Linux filesystem.



    MBR does not support partition UUIDs, but Linux supports PARTUUID for MBR partitions.

    The format is SSSSSSSS-PP, where SSSSSSSS is a 32-bit MBR disk signature (stored in the MBR label-id field), and PP is a partition number.







    share|improve this answer





























      Your Answer






      StackExchange.ifUsing("editor", function ()
      return StackExchange.using("schematics", function ()
      StackExchange.schematics.init();
      );
      , "cicuitlab");

      StackExchange.ready(function()
      var channelOptions =
      tags: "".split(" "),
      id: "447"
      ;
      initTagRenderer("".split(" "), "".split(" "), channelOptions);

      StackExchange.using("externalEditor", function()
      // Have to fire editor after snippets, if snippets enabled
      if (StackExchange.settings.snippets.snippetsEnabled)
      StackExchange.using("snippets", function()
      createEditor();
      );

      else
      createEditor();

      );

      function createEditor()
      StackExchange.prepareEditor(
      heartbeatType: 'answer',
      autoActivateHeartbeat: false,
      convertImagesToLinks: false,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: null,
      bindNavPrevention: true,
      postfix: "",
      imageUploader:
      brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
      contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
      allowUrls: true
      ,
      onDemand: true,
      discardSelector: ".discard-answer"
      ,immediatelyShowMarkdownHelp:true
      );



      );






      Peter N is a new contributor. Be nice, and check out our Code of Conduct.









      draft saved

      draft discarded


















      StackExchange.ready(
      function ()
      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fraspberrypi.stackexchange.com%2fquestions%2f102089%2fwhy-cant-pi-4b-read-a-copied-back-up-micro-sd-card-in-a-usb-card-reader%23new-answer', 'question_page');

      );

      Post as a guest















      Required, but never shown

























      3 Answers
      3






      active

      oldest

      votes








      3 Answers
      3






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      2















      I don't think the Pi model is a factor here.



      When you made your backup, did you select New partition UUIDs?



      screenshot of piclone



      If not, that's likely the problem.
      SD Card Copier help says this:




      Under Raspbian Stretch and later versions, you cannot mount two partitions with the same UUID, so you will not be able to mount a cloned SD card when booted from the disk from which it was cloned. If you need to do this, check the "New Partition UUIDs" box before copying.




      You can change the UUID with this command:



      sudo tune2fs /dev/sdb2 -U random


      After that, unplug the microSD adapter, then reinsert it. It should auto-mount from now on. If not, try rebooting.






      share|improve this answer










      New contributor



      Botspot is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.





















      • Good point (I always change PARTUID) which is what the SD Card Copier does, but AFAIK when SD Card Copier creates the new ext4 partition it should have a unique UUID - although other methods of cloning a card may not.

        – Milliways
        5 hours ago











      • The correct command to generate a new UUID is sudo tune2fs /dev/sdb2 -U random NOTE partition /dev/sdb2 rather than disk /dev/sdb

        – Milliways
        5 hours ago











      • @Milliways Good catch. My answer is updated.

        – Botspot
        4 hours ago















      2















      I don't think the Pi model is a factor here.



      When you made your backup, did you select New partition UUIDs?



      screenshot of piclone



      If not, that's likely the problem.
      SD Card Copier help says this:




      Under Raspbian Stretch and later versions, you cannot mount two partitions with the same UUID, so you will not be able to mount a cloned SD card when booted from the disk from which it was cloned. If you need to do this, check the "New Partition UUIDs" box before copying.




      You can change the UUID with this command:



      sudo tune2fs /dev/sdb2 -U random


      After that, unplug the microSD adapter, then reinsert it. It should auto-mount from now on. If not, try rebooting.






      share|improve this answer










      New contributor



      Botspot is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.





















      • Good point (I always change PARTUID) which is what the SD Card Copier does, but AFAIK when SD Card Copier creates the new ext4 partition it should have a unique UUID - although other methods of cloning a card may not.

        – Milliways
        5 hours ago











      • The correct command to generate a new UUID is sudo tune2fs /dev/sdb2 -U random NOTE partition /dev/sdb2 rather than disk /dev/sdb

        – Milliways
        5 hours ago











      • @Milliways Good catch. My answer is updated.

        – Botspot
        4 hours ago













      2














      2










      2









      I don't think the Pi model is a factor here.



      When you made your backup, did you select New partition UUIDs?



      screenshot of piclone



      If not, that's likely the problem.
      SD Card Copier help says this:




      Under Raspbian Stretch and later versions, you cannot mount two partitions with the same UUID, so you will not be able to mount a cloned SD card when booted from the disk from which it was cloned. If you need to do this, check the "New Partition UUIDs" box before copying.




      You can change the UUID with this command:



      sudo tune2fs /dev/sdb2 -U random


      After that, unplug the microSD adapter, then reinsert it. It should auto-mount from now on. If not, try rebooting.






      share|improve this answer










      New contributor



      Botspot is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      I don't think the Pi model is a factor here.



      When you made your backup, did you select New partition UUIDs?



      screenshot of piclone



      If not, that's likely the problem.
      SD Card Copier help says this:




      Under Raspbian Stretch and later versions, you cannot mount two partitions with the same UUID, so you will not be able to mount a cloned SD card when booted from the disk from which it was cloned. If you need to do this, check the "New Partition UUIDs" box before copying.




      You can change the UUID with this command:



      sudo tune2fs /dev/sdb2 -U random


      After that, unplug the microSD adapter, then reinsert it. It should auto-mount from now on. If not, try rebooting.







      share|improve this answer










      New contributor



      Botspot is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.








      share|improve this answer



      share|improve this answer








      edited 4 hours ago





















      New contributor



      Botspot is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.








      answered 5 hours ago









      BotspotBotspot

      464 bronze badges




      464 bronze badges




      New contributor



      Botspot is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.




      New contributor




      Botspot is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.

















      • Good point (I always change PARTUID) which is what the SD Card Copier does, but AFAIK when SD Card Copier creates the new ext4 partition it should have a unique UUID - although other methods of cloning a card may not.

        – Milliways
        5 hours ago











      • The correct command to generate a new UUID is sudo tune2fs /dev/sdb2 -U random NOTE partition /dev/sdb2 rather than disk /dev/sdb

        – Milliways
        5 hours ago











      • @Milliways Good catch. My answer is updated.

        – Botspot
        4 hours ago

















      • Good point (I always change PARTUID) which is what the SD Card Copier does, but AFAIK when SD Card Copier creates the new ext4 partition it should have a unique UUID - although other methods of cloning a card may not.

        – Milliways
        5 hours ago











      • The correct command to generate a new UUID is sudo tune2fs /dev/sdb2 -U random NOTE partition /dev/sdb2 rather than disk /dev/sdb

        – Milliways
        5 hours ago











      • @Milliways Good catch. My answer is updated.

        – Botspot
        4 hours ago
















      Good point (I always change PARTUID) which is what the SD Card Copier does, but AFAIK when SD Card Copier creates the new ext4 partition it should have a unique UUID - although other methods of cloning a card may not.

      – Milliways
      5 hours ago





      Good point (I always change PARTUID) which is what the SD Card Copier does, but AFAIK when SD Card Copier creates the new ext4 partition it should have a unique UUID - although other methods of cloning a card may not.

      – Milliways
      5 hours ago













      The correct command to generate a new UUID is sudo tune2fs /dev/sdb2 -U random NOTE partition /dev/sdb2 rather than disk /dev/sdb

      – Milliways
      5 hours ago





      The correct command to generate a new UUID is sudo tune2fs /dev/sdb2 -U random NOTE partition /dev/sdb2 rather than disk /dev/sdb

      – Milliways
      5 hours ago













      @Milliways Good catch. My answer is updated.

      – Botspot
      4 hours ago





      @Milliways Good catch. My answer is updated.

      – Botspot
      4 hours ago













      0















      I regularly read SD Cards on my Pi4, so this is possible.

      (The USB3 ports on the Pi4 have some limitations with USB2 devices, although I would not expect this to affect a SD Card reader, but have had occasional problems and usually use one of the USB2 ports.)



      I have experienced only one problem which proved to be due to a faulty Card.



      I need to manually mount the Card, and can post the script I use to do this.



      #!/bin/bash
      # 2017-05-06
      # 2018-11-18

      BOOT_MOUNT='/mnt/SDA1'
      ROOT_MOUNT='/mnt/SDA2'

      # Check/create Mount Points
      if [ ! -e $BOOT_MOUNT ]; then
      mkdir $BOOT_MOUNT
      fi
      if [ ! -e $ROOT_MOUNT ]; then
      mkdir $ROOT_MOUNT
      fi
      echo "mounts " $BOOT_MOUNT $ROOT_MOUNT
      if [ -e /dev/sda ]; then
      SD1='/dev/sda1'
      SD2='/dev/sda2'
      else
      SD1='/dev/sdb1'
      SD2='/dev/sdb2'
      fi
      echo $SD
      # Mount Partitions
      if ! $(mountpoint -q $BOOT_MOUNT); then
      mount $SD1 $BOOT_MOUNT # mount partition containing boot files
      fi
      if ! $(mountpoint -q $ROOT_MOUNT); then
      mount $SD2 $ROOT_MOUNT # mount root partition containing OS files
      fi


      The following unmounts SD Cards



      #!/bin/bash
      # 2017-05-06
      # 2018-11-18

      BOOT_MOUNT='/mnt/SDA1'
      ROOT_MOUNT='/mnt/SDA2'

      umount $SD1 $BOOT_MOUNT # mount partition containing boot files
      umount $SD2 $ROOT_MOUNT # mount root partition containing OS files





      share|improve this answer































        0















        I regularly read SD Cards on my Pi4, so this is possible.

        (The USB3 ports on the Pi4 have some limitations with USB2 devices, although I would not expect this to affect a SD Card reader, but have had occasional problems and usually use one of the USB2 ports.)



        I have experienced only one problem which proved to be due to a faulty Card.



        I need to manually mount the Card, and can post the script I use to do this.



        #!/bin/bash
        # 2017-05-06
        # 2018-11-18

        BOOT_MOUNT='/mnt/SDA1'
        ROOT_MOUNT='/mnt/SDA2'

        # Check/create Mount Points
        if [ ! -e $BOOT_MOUNT ]; then
        mkdir $BOOT_MOUNT
        fi
        if [ ! -e $ROOT_MOUNT ]; then
        mkdir $ROOT_MOUNT
        fi
        echo "mounts " $BOOT_MOUNT $ROOT_MOUNT
        if [ -e /dev/sda ]; then
        SD1='/dev/sda1'
        SD2='/dev/sda2'
        else
        SD1='/dev/sdb1'
        SD2='/dev/sdb2'
        fi
        echo $SD
        # Mount Partitions
        if ! $(mountpoint -q $BOOT_MOUNT); then
        mount $SD1 $BOOT_MOUNT # mount partition containing boot files
        fi
        if ! $(mountpoint -q $ROOT_MOUNT); then
        mount $SD2 $ROOT_MOUNT # mount root partition containing OS files
        fi


        The following unmounts SD Cards



        #!/bin/bash
        # 2017-05-06
        # 2018-11-18

        BOOT_MOUNT='/mnt/SDA1'
        ROOT_MOUNT='/mnt/SDA2'

        umount $SD1 $BOOT_MOUNT # mount partition containing boot files
        umount $SD2 $ROOT_MOUNT # mount root partition containing OS files





        share|improve this answer





























          0














          0










          0









          I regularly read SD Cards on my Pi4, so this is possible.

          (The USB3 ports on the Pi4 have some limitations with USB2 devices, although I would not expect this to affect a SD Card reader, but have had occasional problems and usually use one of the USB2 ports.)



          I have experienced only one problem which proved to be due to a faulty Card.



          I need to manually mount the Card, and can post the script I use to do this.



          #!/bin/bash
          # 2017-05-06
          # 2018-11-18

          BOOT_MOUNT='/mnt/SDA1'
          ROOT_MOUNT='/mnt/SDA2'

          # Check/create Mount Points
          if [ ! -e $BOOT_MOUNT ]; then
          mkdir $BOOT_MOUNT
          fi
          if [ ! -e $ROOT_MOUNT ]; then
          mkdir $ROOT_MOUNT
          fi
          echo "mounts " $BOOT_MOUNT $ROOT_MOUNT
          if [ -e /dev/sda ]; then
          SD1='/dev/sda1'
          SD2='/dev/sda2'
          else
          SD1='/dev/sdb1'
          SD2='/dev/sdb2'
          fi
          echo $SD
          # Mount Partitions
          if ! $(mountpoint -q $BOOT_MOUNT); then
          mount $SD1 $BOOT_MOUNT # mount partition containing boot files
          fi
          if ! $(mountpoint -q $ROOT_MOUNT); then
          mount $SD2 $ROOT_MOUNT # mount root partition containing OS files
          fi


          The following unmounts SD Cards



          #!/bin/bash
          # 2017-05-06
          # 2018-11-18

          BOOT_MOUNT='/mnt/SDA1'
          ROOT_MOUNT='/mnt/SDA2'

          umount $SD1 $BOOT_MOUNT # mount partition containing boot files
          umount $SD2 $ROOT_MOUNT # mount root partition containing OS files





          share|improve this answer















          I regularly read SD Cards on my Pi4, so this is possible.

          (The USB3 ports on the Pi4 have some limitations with USB2 devices, although I would not expect this to affect a SD Card reader, but have had occasional problems and usually use one of the USB2 ports.)



          I have experienced only one problem which proved to be due to a faulty Card.



          I need to manually mount the Card, and can post the script I use to do this.



          #!/bin/bash
          # 2017-05-06
          # 2018-11-18

          BOOT_MOUNT='/mnt/SDA1'
          ROOT_MOUNT='/mnt/SDA2'

          # Check/create Mount Points
          if [ ! -e $BOOT_MOUNT ]; then
          mkdir $BOOT_MOUNT
          fi
          if [ ! -e $ROOT_MOUNT ]; then
          mkdir $ROOT_MOUNT
          fi
          echo "mounts " $BOOT_MOUNT $ROOT_MOUNT
          if [ -e /dev/sda ]; then
          SD1='/dev/sda1'
          SD2='/dev/sda2'
          else
          SD1='/dev/sdb1'
          SD2='/dev/sdb2'
          fi
          echo $SD
          # Mount Partitions
          if ! $(mountpoint -q $BOOT_MOUNT); then
          mount $SD1 $BOOT_MOUNT # mount partition containing boot files
          fi
          if ! $(mountpoint -q $ROOT_MOUNT); then
          mount $SD2 $ROOT_MOUNT # mount root partition containing OS files
          fi


          The following unmounts SD Cards



          #!/bin/bash
          # 2017-05-06
          # 2018-11-18

          BOOT_MOUNT='/mnt/SDA1'
          ROOT_MOUNT='/mnt/SDA2'

          umount $SD1 $BOOT_MOUNT # mount partition containing boot files
          umount $SD2 $ROOT_MOUNT # mount root partition containing OS files






          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited 5 hours ago

























          answered 7 hours ago









          MilliwaysMilliways

          33.6k14 gold badges59 silver badges127 bronze badges




          33.6k14 gold badges59 silver badges127 bronze badges
























              0















              The point raised by Botspot is valid.



              You should give SD Card copies a unique PARTUUID which needs to be changed in several places.



              The following script set-diskid will set PARTUUID on a booted system in all the correct places.



              It can be invoked with sudo set-diskid -n



              NOTE you need to reboot after running the script.



              #!/bin/bash

              errexit()

              echo ""
              echo "$1"
              echo ""
              exit 1


              usage()

              errexit "Usage: $0 [-n

              if [ $(id -u) -ne 0 ]; then
              errexit "$0 must be run as root user"
              fi

              PTUUID="$1"
              if [ "$PTUUID" = "" ]; then
              usage
              fi
              if [ "$PTUUID" = "-n" ]; then
              echo $PTUUID
              PTUUID=$(uuid | cut -c-8)
              fi
              PTUUID="$(tr [A-Z] [a-z] <<< "$PTUUID")"
              if [[ ! "$PTUUID" =~ ^[[:xdigit:]]8$ ]]; then
              errexit "Invalid DiskID: $PTUUID"
              fi
              echo ""
              echo -n "Set DiskID to $PTUUID on /dev/mmcblk0 (y/n)? "
              while read -r -n 1 -s answer; do
              if [[ "$answer" = [yYnN] ]]; then
              echo "$answer"
              if [[ "$answer" = [yY] ]]; then
              break
              else
              errexit "Aborted"
              fi
              fi
              done
              echo ""
              fdisk /dev/mmcblk0 <<EOF > /dev/null
              p
              x
              i
              0x$PTUUID
              r
              p
              w
              EOF
              sync
              PARTUUID="$(sed -n 's|^.*PARTUUID=(S+)s.*|1|p' /boot/cmdline.txt)"
              if [ "$PARTUUID" != "" ]; then
              sed -i "s|PARTUUID=S+s|PARTUUID=$PTUUID-02 |" /boot/cmdline.txt
              sed -i "s|$PARTUUID:0:($#PARTUUID - 1)|$PTUUID-0|" /etc/fstab
              fi
              sync


              NOTE PARTUUID and UUID are different entities.




              UUID is a 128-bit number used to identify information in computer systems, in particular it is used to identify partitions on GPT & Linux filesystem.



              MBR does not support partition UUIDs, but Linux supports PARTUUID for MBR partitions.

              The format is SSSSSSSS-PP, where SSSSSSSS is a 32-bit MBR disk signature (stored in the MBR label-id field), and PP is a partition number.







              share|improve this answer































                0















                The point raised by Botspot is valid.



                You should give SD Card copies a unique PARTUUID which needs to be changed in several places.



                The following script set-diskid will set PARTUUID on a booted system in all the correct places.



                It can be invoked with sudo set-diskid -n



                NOTE you need to reboot after running the script.



                #!/bin/bash

                errexit()

                echo ""
                echo "$1"
                echo ""
                exit 1


                usage()

                errexit "Usage: $0 [-n

                if [ $(id -u) -ne 0 ]; then
                errexit "$0 must be run as root user"
                fi

                PTUUID="$1"
                if [ "$PTUUID" = "" ]; then
                usage
                fi
                if [ "$PTUUID" = "-n" ]; then
                echo $PTUUID
                PTUUID=$(uuid | cut -c-8)
                fi
                PTUUID="$(tr [A-Z] [a-z] <<< "$PTUUID")"
                if [[ ! "$PTUUID" =~ ^[[:xdigit:]]8$ ]]; then
                errexit "Invalid DiskID: $PTUUID"
                fi
                echo ""
                echo -n "Set DiskID to $PTUUID on /dev/mmcblk0 (y/n)? "
                while read -r -n 1 -s answer; do
                if [[ "$answer" = [yYnN] ]]; then
                echo "$answer"
                if [[ "$answer" = [yY] ]]; then
                break
                else
                errexit "Aborted"
                fi
                fi
                done
                echo ""
                fdisk /dev/mmcblk0 <<EOF > /dev/null
                p
                x
                i
                0x$PTUUID
                r
                p
                w
                EOF
                sync
                PARTUUID="$(sed -n 's|^.*PARTUUID=(S+)s.*|1|p' /boot/cmdline.txt)"
                if [ "$PARTUUID" != "" ]; then
                sed -i "s|PARTUUID=S+s|PARTUUID=$PTUUID-02 |" /boot/cmdline.txt
                sed -i "s|$PARTUUID:0:($#PARTUUID - 1)|$PTUUID-0|" /etc/fstab
                fi
                sync


                NOTE PARTUUID and UUID are different entities.




                UUID is a 128-bit number used to identify information in computer systems, in particular it is used to identify partitions on GPT & Linux filesystem.



                MBR does not support partition UUIDs, but Linux supports PARTUUID for MBR partitions.

                The format is SSSSSSSS-PP, where SSSSSSSS is a 32-bit MBR disk signature (stored in the MBR label-id field), and PP is a partition number.







                share|improve this answer





























                  0














                  0










                  0









                  The point raised by Botspot is valid.



                  You should give SD Card copies a unique PARTUUID which needs to be changed in several places.



                  The following script set-diskid will set PARTUUID on a booted system in all the correct places.



                  It can be invoked with sudo set-diskid -n



                  NOTE you need to reboot after running the script.



                  #!/bin/bash

                  errexit()

                  echo ""
                  echo "$1"
                  echo ""
                  exit 1


                  usage()

                  errexit "Usage: $0 [-n

                  if [ $(id -u) -ne 0 ]; then
                  errexit "$0 must be run as root user"
                  fi

                  PTUUID="$1"
                  if [ "$PTUUID" = "" ]; then
                  usage
                  fi
                  if [ "$PTUUID" = "-n" ]; then
                  echo $PTUUID
                  PTUUID=$(uuid | cut -c-8)
                  fi
                  PTUUID="$(tr [A-Z] [a-z] <<< "$PTUUID")"
                  if [[ ! "$PTUUID" =~ ^[[:xdigit:]]8$ ]]; then
                  errexit "Invalid DiskID: $PTUUID"
                  fi
                  echo ""
                  echo -n "Set DiskID to $PTUUID on /dev/mmcblk0 (y/n)? "
                  while read -r -n 1 -s answer; do
                  if [[ "$answer" = [yYnN] ]]; then
                  echo "$answer"
                  if [[ "$answer" = [yY] ]]; then
                  break
                  else
                  errexit "Aborted"
                  fi
                  fi
                  done
                  echo ""
                  fdisk /dev/mmcblk0 <<EOF > /dev/null
                  p
                  x
                  i
                  0x$PTUUID
                  r
                  p
                  w
                  EOF
                  sync
                  PARTUUID="$(sed -n 's|^.*PARTUUID=(S+)s.*|1|p' /boot/cmdline.txt)"
                  if [ "$PARTUUID" != "" ]; then
                  sed -i "s|PARTUUID=S+s|PARTUUID=$PTUUID-02 |" /boot/cmdline.txt
                  sed -i "s|$PARTUUID:0:($#PARTUUID - 1)|$PTUUID-0|" /etc/fstab
                  fi
                  sync


                  NOTE PARTUUID and UUID are different entities.




                  UUID is a 128-bit number used to identify information in computer systems, in particular it is used to identify partitions on GPT & Linux filesystem.



                  MBR does not support partition UUIDs, but Linux supports PARTUUID for MBR partitions.

                  The format is SSSSSSSS-PP, where SSSSSSSS is a 32-bit MBR disk signature (stored in the MBR label-id field), and PP is a partition number.







                  share|improve this answer















                  The point raised by Botspot is valid.



                  You should give SD Card copies a unique PARTUUID which needs to be changed in several places.



                  The following script set-diskid will set PARTUUID on a booted system in all the correct places.



                  It can be invoked with sudo set-diskid -n



                  NOTE you need to reboot after running the script.



                  #!/bin/bash

                  errexit()

                  echo ""
                  echo "$1"
                  echo ""
                  exit 1


                  usage()

                  errexit "Usage: $0 [-n

                  if [ $(id -u) -ne 0 ]; then
                  errexit "$0 must be run as root user"
                  fi

                  PTUUID="$1"
                  if [ "$PTUUID" = "" ]; then
                  usage
                  fi
                  if [ "$PTUUID" = "-n" ]; then
                  echo $PTUUID
                  PTUUID=$(uuid | cut -c-8)
                  fi
                  PTUUID="$(tr [A-Z] [a-z] <<< "$PTUUID")"
                  if [[ ! "$PTUUID" =~ ^[[:xdigit:]]8$ ]]; then
                  errexit "Invalid DiskID: $PTUUID"
                  fi
                  echo ""
                  echo -n "Set DiskID to $PTUUID on /dev/mmcblk0 (y/n)? "
                  while read -r -n 1 -s answer; do
                  if [[ "$answer" = [yYnN] ]]; then
                  echo "$answer"
                  if [[ "$answer" = [yY] ]]; then
                  break
                  else
                  errexit "Aborted"
                  fi
                  fi
                  done
                  echo ""
                  fdisk /dev/mmcblk0 <<EOF > /dev/null
                  p
                  x
                  i
                  0x$PTUUID
                  r
                  p
                  w
                  EOF
                  sync
                  PARTUUID="$(sed -n 's|^.*PARTUUID=(S+)s.*|1|p' /boot/cmdline.txt)"
                  if [ "$PARTUUID" != "" ]; then
                  sed -i "s|PARTUUID=S+s|PARTUUID=$PTUUID-02 |" /boot/cmdline.txt
                  sed -i "s|$PARTUUID:0:($#PARTUUID - 1)|$PTUUID-0|" /etc/fstab
                  fi
                  sync


                  NOTE PARTUUID and UUID are different entities.




                  UUID is a 128-bit number used to identify information in computer systems, in particular it is used to identify partitions on GPT & Linux filesystem.



                  MBR does not support partition UUIDs, but Linux supports PARTUUID for MBR partitions.

                  The format is SSSSSSSS-PP, where SSSSSSSS is a 32-bit MBR disk signature (stored in the MBR label-id field), and PP is a partition number.








                  share|improve this answer














                  share|improve this answer



                  share|improve this answer








                  edited 7 secs ago

























                  answered 4 hours ago









                  MilliwaysMilliways

                  33.6k14 gold badges59 silver badges127 bronze badges




                  33.6k14 gold badges59 silver badges127 bronze badges























                      Peter N is a new contributor. Be nice, and check out our Code of Conduct.









                      draft saved

                      draft discarded


















                      Peter N is a new contributor. Be nice, and check out our Code of Conduct.












                      Peter N is a new contributor. Be nice, and check out our Code of Conduct.











                      Peter N is a new contributor. Be nice, and check out our Code of Conduct.














                      Thanks for contributing an answer to Raspberry Pi Stack Exchange!


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid


                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.

                      To learn more, see our tips on writing great answers.




                      draft saved


                      draft discarded














                      StackExchange.ready(
                      function ()
                      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fraspberrypi.stackexchange.com%2fquestions%2f102089%2fwhy-cant-pi-4b-read-a-copied-back-up-micro-sd-card-in-a-usb-card-reader%23new-answer', 'question_page');

                      );

                      Post as a guest















                      Required, but never shown





















































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown

































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown







                      Popular posts from this blog

                      ParseJSON using SSJSUsing AMPscript with SSJS ActivitiesHow to resubscribe a user in Marketing cloud using SSJS?Pulling Subscriber Status from Lists using SSJSRetrieving Emails using SSJSProblem in updating DE using SSJSUsing SSJS to send single email in Marketing CloudError adding EmailSendDefinition using SSJS

                      Кампала Садржај Географија Географија Историја Становништво Привреда Партнерски градови Референце Спољашње везе Мени за навигацију0°11′ СГШ; 32°20′ ИГД / 0.18° СГШ; 32.34° ИГД / 0.18; 32.340°11′ СГШ; 32°20′ ИГД / 0.18° СГШ; 32.34° ИГД / 0.18; 32.34МедијиПодациЗванични веб-сајту

                      19. јануар Садржај Догађаји Рођења Смрти Празници и дани сећања Види још Референце Мени за навигацијуу