невозможно смонтировать раздел – как я могу его устранить?

У меня есть SD-карта, которая использовалась в малине Pi. Я хочу установить эту SD-карту на ПК с Linux, чтобы получить от нее файлы, но я не могу.

Когда я кладу SD-карту в устройство для чтения карт, мой dmesg говорит:

  • Linux на внешнем USB-накопителе не загружается на другие компьютеры
  • Ограничение доступа D-Bus к зарегистрированному пользователю через ConsoleKit или systemd
  • Как я могу найти фактический (dd) размер флеш-диска?
  • Systemd: как выполнять скрипт только при выключении (не при перезагрузке)
  • Потеря звука после установки вина 1.5 (+ python 2.7)?
  • Как искать слово во всем содержимом каталога в linux
  • [ 114.117896] usb 4-1: new full-speed USB device number 2 using ohci-pci [ 114.292885] usb 4-1: New USB device found, idVendor=214b, idProduct=1101 [ 114.292897] usb 4-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 114.292904] usb 4-1: Product: USB2.0 Device [ 114.292910] usb 4-1: Manufacturer: Generic [ 114.292914] usb 4-1: SerialNumber: 0201202010201000 [ 114.383603] usb-storage 4-1:1.0: USB Mass Storage device detected [ 114.383803] scsi6 : usb-storage 4-1:1.0 [ 114.383956] usbcore: registered new interface driver usb-storage [ 115.386965] scsi 6:0:0:0: Direct-Access USB2.0 CARD-READER 1.01 PQ: 0 ANSI: 2 [ 115.388961] sd 6:0:0:0: Attached scsi generic sg2 type 0 [ 115.409892] sd 6:0:0:0: [sdc] Attached SCSI removable disk [ 115.471798] sd 6:0:0:0: [sdc] 30679040 512-byte logical blocks: (15.7 GB/14.6 GiB) [ 115.505782] sdc: detected capacity change from 0 to 15707668480 [ 115.534776] sdc: sdc1 sdc2 < sdc5 sdc6 > sdc3 

    Таблица разделов этой карты:

      # parted /dev/sdc GNU Parted 3.2 Using /dev/sdc Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) print Model: USB2.0 CARD-READER (scsi) Disk /dev/sdc: 15,7GB Sector size (logical/physical): 512B/512B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 1 1049kB 1275MB 1274MB primary fat32 lba 2 1278MB 15,7GB 14,4GB extended 5 1279MB 1342MB 62,9MB logical fat16 lba 6 1343MB 15,7GB 14,3GB logical 3 15,7GB 15,7GB 33,6MB primary 

    Когда я проверяю это устройство на fdisk, он говорит:

      # fdisk /dev/sdc -l Disk /dev/sdc: 14.6 GiB, 15707668480 bytes, 30679040 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: dos Disk identifier: 0x000daf86 Device Boot Start End Sectors Size Id Type /dev/sdc1 2048 2490234 2488187 1.2G e W95 FAT16 (LBA) /dev/sdc2 2496512 30609407 28112896 13.4G 85 Linux extended /dev/sdc3 30613504 30679039 65536 32M 83 Linux /dev/sdc5 2498560 2621439 122880 60M c W95 FAT32 (LBA) /dev/sdc6 2623488 30607359 27983872 13.4G 83 Linux Partition table entries are not in disk order. 

    Похоже, что / dev / sdc6 – самый большой раздел, поэтому я хочу его установить. Когда я пытаюсь установить его, я получаю этот результат:

      # mount -v /dev/sdc6 test mount: wrong fs type, bad option, bad superblock on /dev/sdc6, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so. 

    Dmesg ничего не говорит, когда я пытаюсь установить / dev / sdc6.

    Когда я проверяю этот раздел командой file , он говорит:

      # file -s /dev/sdc6 /dev/sdc6: data 

    Когда я проверяю файловую систему с помощью fsck, я получаю:

      # LC_ALL=C fsck.ext3 -n /dev/sdc6 e2fsck 1.43.4 (31-Jan-2017) ext2fs_open2: Bad magic number in super-block fsck.ext3: Superblock invalid, trying backup blocks... root was not cleanly unmounted, check forced. Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information Free blocks count wrong for group #0 (4245, counted=11608). Fix? no Free blocks count wrong for group #1 (1373, counted=707). Fix? no Free blocks count wrong for group #2 (1699, counted=1880). Fix? no (...) Inode bitmap differences: -(57345--131072) -172034 -172037 -(172042--172043) -172045 -172047 -172049 -172053 -172057 -172059 -172062 -172065 (...) Fix? no root: ********** WARNING: Filesystem still has errors ********** root: 91692/876544 files (0.8% non-contiguous), 1413337/3497984 blocks 

    Я понимаю, что по какой-то неизвестной причине Linux не может смонтировать эту файловую систему. Я хотел бы знать, почему – файловая система сломана, или есть какая-то другая причина? И я хотел бы либо установить эту файловую систему, либо восстановить ее файлы.

    Что мне теперь делать, чтобы устранить эту проблему?

    EDIT: Я хочу поблагодарить всех за помощь! Наконец, я нашел – используя fsck – что раздел содержит файловую систему Linux ext, но файловая система повреждена, и поэтому я не смог ее смонтировать. Я сделал резервную копию карты (с «cat / dev / sdc | gzip> mybackup»), а затем проверял, содержит ли устройство плохие блоки. Он не содержит каких-либо плохих блоков (возможно, файловая система на SD-карте была повреждена с помощью сломанного SD-кард-ридера?), Поэтому я просто исправил файловую систему с помощью fsck, поместил карту в малину Pi, а затем загрузился без проблемы.

  • Сценарий Bash при запуске? (Linux)
  • Как добиться переносимости с помощью sed -i (редактирование на месте)?
  • GRUB не загружается автоматически
  • Как подключиться к устройству через SSH по прямому сетевому соединению
  • содержание grep между двумя стартовыми скобками
  • Инструмент для измерения качества энтропии?
  • 2 Solutions collect form web for “невозможно смонтировать раздел – как я могу его устранить?”

    Согласно опубликованному выпуску fsck , есть надежда, что некоторые данные могут быть восстановлены.

    Я бы посоветовал:

    1. сделайте копию dd копии файловой системы в файл диска (например, fdsump.orig ). Если это не удается, попробуйте ddrescue . Перед тем, как начать, убедитесь, что у вас достаточно свободного места.
    2. Не работайте непосредственно с этим файлом, но создайте новую копию (например, cp fsdump.orig fsdump ), чтобы вы всегда могли вернуться к этому шагу и начать заново.
    3. с mount -o loop создать устройство из fsdump данных fsdump (например, /dev/loop1 )
    4. попробуйте fsck.ext3 /dev/loop1 пока не будет ошибок. Чем больше проходов потребуется, тем больше урон.
    5. /dev/loop1 к каталогу. Скопируйте все файлы в безопасное место. (Используйте cp -a или rsync для сохранения атрибутов файла). Любой из них может быть поврежден, усечен и т. Д.
    6. Теперь вы можете объединить файловую систему цикла.

    Подробнее см. Справочные страницы упомянутых утилит.

    Вы можете использовать файл (1) в качестве file -s /dev/sdc6 будет считывать некоторые байты из блочного устройства и угадывать, что там есть.

    Если ничего не признано, у вас проблемы, и вы потеряли свои данные; чтобы сделать что-либо, чтобы восстановить его, вы должны знать априори, какая файловая система была там.

    Если какая-либо файловая система распознана, вы можете попробовать использовать mount (8) с явным type

    Записи таблицы разделов не указаны в порядке диска

    Это пахнет не очень хорошо. Возможно, вам придется полностью переделать свой диск (но резервное копирование его данных раньше); похоже, что у вас два перекрытия раздела ( sdc2 и sdc6 )

    Поскольку вы работаете на каком-то другом ПК Linux, вы можете скопировать данные с SD-карты на ПК (в некоторый файл), возможно, используя dd (1)

     dd if=/dev/sdc6 of=$HOME/diskdata bs=4k 

    BTW, проверьте с dmesg после этой команды, что копия прошла хорошо.

    Вы даже можете скопировать с dd всю SD-карту.

    Затем вы можете потратить часы (или месяцы) на работу, чтобы попытаться расшифровать беспорядок в этом файле $HOME/diskdata на вашем ПК с Linux. Вы можете использовать debugfs (8) для этой цели, если вы считаете, что исходной файловой системой был ext3 или ext4

    Карты SD являются хрупкими устройствами, и они быстро изнашиваются. Я предполагаю, что ваш физически сломан. Подготовьтесь к какой-то определенной потере данных.

    Linux и Unix - лучшая ОС в мире.