Когда я подключаю накопитель USB 2.0 к Xubuntu и пытаюсь передавать большие файлы, сначала скорость передачи данных хорошая, но через несколько секунд она падает до 1-2 Мбит / с. Из того, что я прочитал, быстрая передача в начале происходит только до заполнения кеша, а затем используется реальная скорость передачи USB.
В Windows скорость постоянна на уровне около 25 Мбит / с, та же карта памяти, подключенная к тому же порту.
Это вывод dmesg при подключении флешки:
[ 5237.580084] usb 1-4: new high speed USB device using ehci_hcd and address 6
[ 5237.714318] scsi4 : usb-storage 1-4:1.0
[ 5238.713909] scsi 4:0:0:0: Direct-Access SanDisk Cruzer 8.02 PQ: 0 ANSI: 0 CCS
[ 5238.715264] sd 4:0:0:0: Attached scsi generic sg2 type 0
[ 5238.727225] sd 4:0:0:0: [sdb] Attached SCSI removable disk
[ 5242.308981] sd 4:0:0:0: [sdb] 31301631 512-byte logical blocks: (16.0 GB/14.9 GiB)
[ 5242.309589] sd 4:0:0:0: [sdb] Assuming drive cache: write through
[ 5242.311228] sd 4:0:0:0: [sdb] Assuming drive cache: write through
[ 5242.311238] sdb: sdb1
Палка установлена автоматически, вот вывод «mount»:
/dev/sdb1 on /media/B82C-6B07 type vfat (rw,nosuid,nodev,uhelper=udisks,uid=1000,gid=1000,shortname=mixed,dmask=0077,utf8=1,showexec,flush)
Я должен использовать vfat, потому что я хочу перенести файлы в мою систему Playstation3. Приведенный ниже тест показывает, что это не главная причина.
Кажется, это распространенная проблема в (X) Ubuntu. Я еще не нашел четкого решения. Кажется, что флешка должна быть установлена как асинхронная, а не как флеш, но я не совсем уверен, как этого добиться. Я не против, если мне придется каждый раз отключать флешку, прежде чем отсоединять ее, если скорость передачи выше.
Есть идеи?
2 ноября. Этот отчет об ошибке, похоже, связан: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/182931 . Что меня беспокоит, так это то, что проблема старше двух лет и до сих пор не решена.
10 ноября. Я начал тест на чтение с palimpstest (из проекта утилиты gnome-disk). Это дает мне минимальную скорость передачи данных 23 Мбит / с. Также попробовал это сейчас в krusader, скорость чтения постоянно> 20 Мбит / с. Таким образом, проблема на самом деле просто писать на флешку!
Вот изображение теста чтения-записи в той же программе:
Перед тестом мне пришлось полностью удалить файловую систему, которая показывает, что vfat не является основной причиной, как упоминалось выше.
Еще один совет: если я передаю файл размером 100 МБ, когда он становится равным 100%, на завершение передачи требуется необычно много времени. Мне снова кажется, что файл действительно находится в кеше, но запись на USB-устройство идет очень медленно.
12 ноября: «Хорошие новости». Проблемы, кажется, сама карта памяти. Попытка внешнего жесткого диска (My Book Elite 1 ТБ) дает мне постоянную скорость записи около 20 МБ / с. Сначала я попытался переформатировать карту памяти, чтобы действительно сравнить их (файловые системы были разными). После переформатирования оба диска монтируются одинаково:
/dev/sdb1 on /media/My Book type fuseblk (rw,nosuid,nodev,allow_other,blksize=4096,default_permissions)
/dev/sdc1 on /media/cruzer_ type fuseblk (rw,nosuid,nodev,allow_other,blksize=4096,default_permissions)
Cruzer - это флешка (скорость все еще падает через несколько секунд), My Book - это внешний жесткий диск с постоянной скоростью записи 20 МБ / с.
Трудно сказать, в чем проблема на самом деле. Как я уже говорил, в Windows я получаю одинаково быструю скорость записи и с SanCruzer.
Изменить в конце награды : К сожалению, проблема с флешкой до сих пор не решена. Однако через 7 дней я хочу присуждать награду, конечно. Комментарий от aking1012 был действительно полезным, поскольку он пролил новый свет на этот вопрос. Тем не менее, я чувствую, что должен отдать награду Харримсу, поскольку он приложил максимум усилий для решения проблемы. Спасибо всем.
flush
опция в вашем выводе монтирования вряд ли поможет. Я думаю, что это даже хуже, чем sync
.