[Comm] Re: Файловая система для флэшки

Grigory Batalov =?iso-8859-1?q?bga_=CE=C1_tepkom=2Eru?=
Пн Ноя 14 18:52:27 MSK 2005


On Mon, 14 Nov 2005 16:08:25 +0300
Yury Aliaev <mutab0r на rambler.ru> wrote:

> >> Я обзавёлся вчера флэшкой, и по этому поводу возник вопрос: какая ФС 
> >> лучше всего подходит для подобных устройств? Пока пользуюсь той vfat, 
> >> которая там изначально и была, но я слышал, что для флэшек это далеко 
> >> не лучший выбо как по быстродействию, так и из-за того, что 
> >> определённые ячейки памяти (те, в которых хранится таблица размещения 
> >> файлов) используются чаще других => и из строя они выйдут раньше. 
> > 
> > Все файловые системы имеют фиксированные служебные области (типа 
> > каталоги или суперблоки), в которых часто производится запись. Так что 
> 
> Я почитал малость про jffs2, похоже там действительно служебные области 
> организуются так (или они периодически обновляются), чтобы все ячейки 
> памяти работали равномерно.
> 
> > выход один -- периодически менять расположение этих областей. Так что 
> > круг сужается уже только по этому требованию.
> 
> Вроде в jffs2 оно и есть.

  У меня сделано так:

$ sudo fdisk -l /dev/sda

Disk /dev/sda: 252 MB, 252416000 bytes
53 heads, 32 sectors/track, 290 cylinders
Units = cylinders of 1696 * 512 = 868352 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1          38       32208    6  FAT16
/dev/sda2              39         290      213696   83  Linux

  /dev/sda1 (32Мб) - для обмена с Windows-машинами.

$ cat /etc/modules.conf
...
options blkmtd device=/dev/sda2 erasesz=128
pre-install jffs2 modprobe blkmtd; modprobe mtdblock
...

$ cat /etc/fstab
...
/dev/mtdblock0 /mnt/disk jffs2 user,noauto 0 0
...

  После чего mount /mnt/disk подгружает все модули и монтирует
раздел. Правда, есть неудобство: перед очередным монтированием
флэшки нужно выгрузить и обратно загрузить модуль blkmtd,
поскольку её содержимое кэшируется в памяти. Либо автоматически
выгружать всё семейство при размонтировании. Если найдёте способ
это улучшить, поделитесь! =)

-- 
 Григорий Баталов,
 программист
 ЗАО "Ланит-Терком"




Подробная информация о списке рассылки community