Слот для SD-карты не работает

Альтернативный способ заработать щедрость: Покажите мне, как сохранить файловую систему как ext4 (FS, который может хранить большие файлы, мне действительно не нужен весь хороший материал ext4, предусматривает этот вариант использования) во многих маленьких файлах (<4 гибибайта) сохраненный на (рабочем) отформатированном FAT разделе.


У меня есть SD-карта (рекламируйте, поскольку 64 ГБ, но кроме обычных носителей имеют меньше, чем тот (она имеет 63'416'827'904 байта)), и слот SD на моем ноутбуке (Acer Aspire VN7-591G-70CY). SD-карта работала с моим предыдущим ноутбуком без проблем и отформатирована с ext4.

Я попробовал sudo modprobe -r r852; sudo modprobe -r sdhci_pci; sudo modprobe r852; sudo modprobe sdhci_pci который помог другим, но ничего не сделал для меня.

SD-карта работает с SD-картой к USB-адаптеру. При использовании этого адаптера SD-карта /dev/sdb и единственный раздел на нем /dev/sdb1. Когда я поместил его в слот для SD-карты, это /dev/mmcblk0 и его раздел /dev/mmcblk0p1.

Когда я ввожу SD-карту в слот, наутилус говорит:

Ошибка, монтирующаяся/dev/mmcblk0p1 в/media/christoph/e07d3be4-bd85-4eb2-9205-d6638ab37704: командная строка 'монтирует-t "ext4"-o "uhelper=udisks2, nodev, nosuid" "/dev/mmcblk0p1" "/media/christoph/e07d3be4-bd85-4eb2-9205-d6638ab37704"' вышедший с ненулевым статусом выхода 32: смонтируйтесь: неправильный тип фс, плохая опция, плохой суперблок на/dev/mmcblk0p1, пропуская кодовую страницу или программу помощника или другую ошибку

   In some cases useful info is found in syslog - try
   dmesg | tail or so.

Монтирование его вручную приводит к в значительной степени тому же сообщению об ошибке:

смонтируйтесь: неправильный тип фс, плохая опция, плохой суперблок на/dev/mmcblk0p1, пропуская кодовую страницу или программу помощника или другую ошибку

   In some cases useful info is found in syslog - try
   dmesg | tail or so.

Теперь странная часть - это dd кажется, не работает ни в одном случае. Я скопировал первых 100 мебибайт из каждого /dev/sdb, /dev/sdb1, /dev/mmcblk0 и /dev/mmcblk0p1 и ранее в этот день даже получил соответствие sha256-суммам.

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

Таким образом, я заменил каждый экземпляр 4 последовательных нулевых байтов в $mmcblk0 (копии я сделал через dd названы точно тем же как устройства, но я, но знак доллара перед именем, таким образом, они могут дифференцироваться), с простым небытием в Hex-редакторе и закончился с файлами, просто являющимися 129,4 КБ для r$sdb ('r' для 'уменьшенного' / 'заменен'), и 312,7 КБ для r$mmcblk0 вместо того, чтобы быть 104,9 МБ каждый.

r$sdb указали точку монтирования в начале (и я понятия не имею почему). Это действительно - точка монтирования, на которой была смонтирована SD-карта. Затем прибывает, случайным образом кажущиеся данные с большим количеством повторений, сопровождаемых большим количеством байтов FF, сопровождаемых подлинными именами файлов, экономили на SD-карте, сопровождаемой немного более случайным образом кажущимися данными, но не очень.

О кулаке 1 600 байтов в r$mmcblk0 точно то же как в r$sdb (это включает точку монтирования даже при том, что SD-карта не могла быть смонтирована в то время как в слоте). Затем прибывает случайным образом кажущиеся данные с большим количеством повторений, но с большими блоками, сделанными из печатаемых символов включая пути к файлам, сопровождаемые байтами FF, сопровождаемыми точно тем же как окончание r$sdb (подлинные имена файлов экономили на SD-карте, сопровождаемой немного более случайным образом кажущимися данными, но не очень).

Можно ли помочь мне разрешить проблему и возможно сказать мне почему dd производит эти странные данные?


Я выяснил, как заставить его работать с FAT сам. Я работал apt-get install nfs-common, перезагруженный и теперь FAT работает. К сожалению, FAT является поганой файловой системой, которая не поддерживает загрузки материала, и мне нужен файл многие ГБ в размере, которые не поддерживаются FAT. Таким образом, я не могу использовать SD-карту с FAT вообще.

Если я форматирую раздел с ext4, та же ошибка, как ранее происходит. Для FAT все кажется прекрасным.

Существует ли команда, чтобы заставить его работать на ext4 также?


$ sudo fdisk -l

Disk /dev/sda: 931.5 GiB, 1000204886016 bytes, 1953525168 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
Disklabel type: gpt
Disk identifier: 2D8D2D1D-B17D-4F86-ACD1-743E6B376EFE

Device          Start        End    Sectors   Size Type
/dev/sda1        2048    1230847    1228800   600M Windows recovery environment
/dev/sda2     1230848    1845247     614400   300M EFI System
/dev/sda3     1845248    2107391     262144   128M Microsoft reserved
/dev/sda4  1716043776 1920843775  204800000  97.7G Microsoft basic data
/dev/sda5  1920843776 1953523711   32679936  15.6G Windows recovery environment
/dev/sda6     2107392   36923391   34816000  16.6G Linux swap
/dev/sda7    36923392 1716043775 1679120384 800.7G Linux filesystem

Partition table entries are not in disk order.
Disk /dev/mmcblk0: 59.1 GiB, 63416827904 bytes, 123860992 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: 0xd69abc36

Device         Boot Start       End   Sectors  Size Id Type
/dev/mmcblk0p1       2048 123860991 123858944 59.1G 83 Linux

Disk /dev/mapper/cryptswap1: 16.6 GiB, 17825267712 bytes, 34814976 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

 

$ lspci
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller (rev 06)
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller (rev 06)
00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
00:03.0 Audio device: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller (rev 06)
00:14.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI (rev 05)
00:16.0 Communication controller: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1 (rev 04)
00:1a.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2 (rev 05)
00:1b.0 Audio device: Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller (rev 05)
00:1c.0 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #3 (rev d5)
00:1c.3 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #4 (rev d5)
00:1d.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1 (rev 05)
00:1f.0 ISA bridge: Intel Corporation HM86 Express LPC Controller (rev 05)
00:1f.2 SATA controller: Intel Corporation 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] (rev 05)
00:1f.3 SMBus: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller (rev 05)
01:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 860M] (rev a2)
07:00.0 Network controller: Intel Corporation Wireless 7265 (rev 48)
08:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 0c)

Я думаю, что последняя часть вывода dmesg интересна:

[10106.153215] mmc0: new ultra high speed SDR50 SDXC card at address 59b4
[10106.153349] mmcblk0: mmc0:59b4 SD    59.0 GiB 
[10106.158564]  mmcblk0: unknown partition table
[10109.748018]  mmcblk0: p1
[10110.393758] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900
[10111.098030] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900
[10111.862596] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900
[10111.862610] EXT4-fs (mmcblk0p1): Magic mismatch, very weird!
[10201.953257] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900
[10202.553754] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900
[10202.555661] EXT4-fs (mmcblk0p1): ext4_check_descriptors: Checksum for group 48 failed (26727!=0)
[10202.555664] EXT4-fs (mmcblk0p1): group descriptors corrupted!
0
задан 8 July 2015 в 03:27

3 ответа

По-моему, Ваш Читатель SD-карты перестал работать . Существует очень высокая вероятность потери данных. FAT работает, вероятно, потому что он имеет меньше функций проверки ошибок, но это не означает ошибок! FAT Использования с экстремальной осторожностью. Берут резервные копии, если Вы будете хранить важные данные. Или скорее не храните важные данные, или просто используйте Картридер USB. Однако

Попытка, восстанавливающая Вашу SD-карту, которая является стандартной процедурой:

sudo e2fsck -f -C 0 /dev/mmcblk0p1

e2fsck утилита Linux для восстановления основанных на расширении файловых систем. Так или иначе я не ожидаю, что он будет работать.

Так, как другой ответ предполагает, картридер не мог бы поддерживать такой большой диск. Но то, что работы FAT указывают, что это возможно с добавленной возможностью того, чтобы быть завинченным.

Это вещи, которые можно попробовать, но я не знаю, будут ли они работать: Разделите его в два, или даже четыре диска, если это подойдет Вам, и затем продвигаться с ext4. Или как насчет того, чтобы создать меньший раздел и оставить остальных как свободное пространство? Вы могли дать ему попытку.

Наконец, начиная с работ FAT, (помнят, вероятно, потому что это делает мало проверки ошибок) exFAT мог отвечать Вашим требованиям хранения размеров файла, больше, чем 4 ГБ. Посмотрите, как сделать это здесь .

1
ответ дан 4 October 2019 в 01:43

Я полагаю, что проблема вызывается тем, что этот конкретный SD cardreader неспособен считать SD-карты, которые имеют способность на 64 ГБ, в то время как другой в Вашем предыдущем ноутбуке, по-видимому, может считать такие карты. Не все картридеры имеют те же спецификации. При покупке картридера, указано в документации, чем самая большая мощность состоит в том, что читатель может обработать. Когда это уже находится в ноутбуке, необходимо будет понять его, что это может обработать. В настоящее время предел обычно - 32 ГБ. К сожалению, Вы не можете изменить это свойство.

0
ответ дан 4 October 2019 в 01:43

Рассмотрение новой информации, Вы добавили к вопросу, что у меня есть другой подход для Вас.

В GParted форматируют раздел на карте как ext4. Тогда создайте точку монтирования. Давайте предположим, что это - sd. Таким образом, Вы делаете:
mkdir -p /media/sd.
Затем для монтирования его Вы делаете:
mount -t ext4 -O noatime,nodiratime /dev/mmcblk0p1 /media/sd.
вторая команда выше, как предполагается, находится на одной строке. Вероятно, необходимо предварительно ожидать эти команды с sudo. Можно также использовать флаги во второй команде в/etc/fstab.

0
ответ дан 4 October 2019 в 01:43

Другие вопросы по тегам:

Похожие вопросы: