Pull to refresh

Проблемы с SDHC и их решение

Reading time2 min
Views8.2K
kingston
Наверно многие сталкивались с проблемой записи SDHC карт, на EEE PC. Хочу рассказать о способе, которым я добился нормальной работы карты памяти.
Карта памяти у меня, довольно распространенной торговой марки Kingston, объемом 4 gb, class 6. Проблемы начались при попытке записи файлов объемом более 100 mb. Индикатор записи просто повисал, через некоторое время выводилось сообщение об ошибки записи. По началу подумал кривая карта, потом вспомнил, что под XP работало нормально. Начал опять рыскать по форуму. Оказалось, что многие сталкиваются с такой проблемой, в основном это карты SDHC, объемом от 4gb, различных производителей. На форуме я нашел список карт памяти которые поддерживаются EEE PC. Моей карты в списке не оказалось. После изнурительного поиска, наткнулся на первый вариант решения проблемы.
  1. Перезагружаем компьютер.
  2. Жмем "F2" и попадаем в BIOS.
  3. Выбираем вкладку "Advanced".
  4. Пункт "OS Installation" меняем с Finish на Start.
  5. Нажимаем "F10" выбираем Yes.

Вот в принципе и все. Грузимся, проверяем карту и видим, что на нее все успешно пишется. Мне данный способ решения не подошел. Как оказалось, перестает работать web-camera. При переводе значения Finish на Start, меняется скорость портов USB с 2.0 на 1.1.Встроеная камера не работает на USB 1.1. К тому же, скорость записи тоже в несколько раз ниже. Skype пользоваться приходится каждый день, все время переключатся через BIOS я не хотел. Может кому-нибудь данный способ и пригодится, например на версиях EEE PC 4 serf и ниже. Я продолжил свои поиски пути решения.
Следующее решение немного по сложнее, но зато минусов в работе EEE PC нет.
Нам понадобится модуль "eee.ko". Открываем терминал пишем следующее:

wget eeepc-linux.googlecode.com/files/eeepc-linux-0.2.tar.gz
tar -zxvf eeepc-linux-0.2.tar.gz
cd eeepc-linux/module/
sudo make


Появится файл "eee.ko". Теперь нам надо его скопировать в "/lib/modules/2.6.22-14-generic/kernel"

sudo cp eee.ko /lib/modules/2.6.22-14-generic/kernel

Далее, запускаем depmod -a

sudo depmod -a

Нам надо отредактировать "/etc/modprobe.d/blacklist" и закомментировать там "i2c_i801"

sudo gedit /etc/modprobe.d/blacklist

находим строку:

blacklist i2c_i801

заменяем на:

#blacklist i2c_i801

Редактируем "/etc/modules"

sudo gedit /etc/modules

В самом конце добавляем:

i2c_i801
eee

Теперь при следующей загрузке, автоматически загрузится модуль "eee". Но это еще не все.
Редактируем "/etc/init.d/checkfs.sh"

sudo gedit /etc/init.d/checkfs.sh

в самом конце добавляем:
#make sdhc card safe for checking
modprobe i2c-i801
modprobe eee
echo 70 24 1 > /proc/eee/fsb

Сохраняем, перезагружаемся. Теперь действительно все.
Можем проверить скорость записи:

переходим на карту памяти

cd /media/data

где data папка куда у вас смонтирована кара памяти, по умолчанию обычно просто disk
создаем файл
dd if=/dev/zero of=test bs=1024 count=102400

Будет создан файл размером 100mb. В моем случае я получил такой результат:

alex@alex-laptop:/media/data$ dd if=/dev/zero of=test bs=1024 count=102400
102400+0 записей считано
102400+0 записей написано
скопировано 104857600 байт (105 MB), 11,848 секунд, 8,9 MB/s
alex@alex-laptop:/media/data$


8,9 MB,s — это хороший показатель для моей карты. Вот собственно
теперь все работает отлично.

Взято с eee-блог.ру
Tags:
Hubs:
+30
Comments28

Articles