URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 60434
[ Назад ]

Исходное сообщение
"Раздел полезных советов: Монтирование VFAT в Linux как в Win..."

Отправлено auto_tips , 30-Окт-09 16:54 
Возможно, повторюсь, но, на мой взгляд, кому-нибудь будет полезно.

Локаль - ru-RU.UTF-8
Проверено Ubuntu 8.04, Debian 5.03.

Путем "долгих исследований" получил следующие опции монтирование раздела FAT.

   /dev/sdf1  /media/usb  vfat rw,async,flush,users,noatime,noauto,utf8,codepage=866,iocharset=cp1251,\
   quiet,showexec,shortname=winnt 0    0

Главное это опции: utf8,codepage=866,iocharset=cp1251.
По умолчанию они не задействованы.
Без них "vfat" ведет себя не так как Windows XP Rus,
позволяя создавать файлы по русски в разном регистре.
Саша <> САша <> саша <> СашА.
Конечно, можно создавать файлы "only English",
но не всегда это удобно и возможно, особенно при копировании.


URL:
Обсуждается: http://www.opennet.ru/tips/info/2205.shtml


Содержание

Сообщения в этом обсуждении
"Монтирование VFAT в Linux как в Windows"
Отправлено angra , 30-Окт-09 16:54 
В наше время флешку просто втыкают в машину и она автоматически монтируется hal+DE, без всяких записей в fstab или ручного mount. Вот если бы вы предложили как для hal опции монтирования флешки указать, то была бы какая-то польза.

"Монтирование VFAT в Linux как в Windows"
Отправлено Bill Routers , 30-Окт-09 18:12 
/etc/hal/fdi/policy/

Только у меня Kde, а он сам себе hal. В общем на Kde - проще через fstab.
А монтироваться, она будет по прежнему, только в указанный каталог и с указанными опциями.


"Монтирование VFAT в Linux как в Windows"
Отправлено sceptic , 30-Окт-09 16:58 
HAL больше нет, забудьте уже о нём.

"Монтирование VFAT в Linux как в Windows"
Отправлено Аноним , 30-Окт-09 23:13 
Есть он, есть. DeviceKit от него не сильно далеко ушел.

"Монтирование VFAT в Linux как в Windows"
Отправлено Аноним , 31-Окт-09 18:15 
Товарисчи считают, что если в убунте его нет, то значит нигде нет? Кроме убунты он еще везде есть.

"Монтирование VFAT в Linux как в Windows"
Отправлено div , 01-Ноя-09 01:19 
надолго ли? :)

"Монтирование VFAT в Linux как в Windows"
Отправлено vadiml , 30-Окт-09 17:49 
> Локаль - ru-RU.UTF-8
> utf8,iocharset=cp1251

это как понимать?

ЗЫ Для флешек надо ещё писать flush без async.


"Монтирование VFAT в Linux как в Windows"
Отправлено Bill Routers , 30-Окт-09 18:30 
За отображение отвечает параметр utf8,

а вот без "iocharset=cp1251" получаем "iocharset=xxxx" что ни есть гуд(честно не знаю
что "vfat" туда ставит, должен iso8859-1, но по моему при наличии опции utf8 получается
"iocharset=utf8" отсюда регистро-зависимость).

cp1251 - использует Windows.


"Монтирование VFAT в Linux как в Windows"
Отправлено СуперАноним , 30-Окт-09 21:57 
Сама Винда ни разу CP1251 для хранения имён файлов в своих ФС не использует. Для хранения длинных имён используется UNICODE 16bit, для хранения в формате 8.3 используется CP866.

"Монтирование VFAT в Linux как в Windows"
Отправлено Bill Routers , 31-Окт-09 00:44 
Правильно.
CP1251 - для отображения.

"Монтирование VFAT в Linux как в Windows"
Отправлено Аноним , 31-Окт-09 10:49 
>CP1251 - для отображения.

CP1251 в линуксе притянута за уши. Для отображения ru_RU.UTF-8, для хранения имён файлов - CP866. Перекодируется напрямую и без CP1251.


"Монтирование VFAT в Linux как в Windows"
Отправлено ABATAPA , 31-Окт-09 12:23 
> shortname=winnt

shortname=mixed


"Монтирование VFAT в Linux как в Windows"
Отправлено Аноним , 31-Окт-09 18:16 
Чем не устраивает неигнорирование регистра или винда не справится?



"Монтирование VFAT в Linux как в Windows"
Отправлено Злой , 31-Окт-09 22:46 
Увы, у меня не так:

flush,noatime,showexec,iocharset=utf8,codepage=866,fmask=0111,dmask=0000,umask=0000,async,quiet,usefree,shortname=mixed


"Раздел полезных советов: Монтирование VFAT в Linux как в Win..."
Отправлено fi , 02-Ноя-09 11:41 
>Путем "долгих исследований" получил следующие опции монтирование раздела FAT.
>
>   /dev/sdf1  /media/usb  vfat rw,async,flush,users,noatime,noauto,utf8,codepage=866,iocharset=cp1251,\
>   quiet,showexec,shortname=winnt 0 0
>
>Главное это опции: utf8,codepage=866,iocharset=cp1251.

...
>
>URL:
>Обсуждается: http://www.opennet.ru/tips/info/2205.shtml

Не надо делать типсы после таких "долгих исследований" , наверно после пива :)

utf8 <=> iocharset=utf-8, хотя  utf8 предпочтительно, и кроме того, по умолчанию utf8 - case-sensitive - экономиться на таблице.

cp1251 в ХР, окромя как в 8-битных текстах, не используется!!!

И надо читать первоисточники!!! -  .../Documentation/filesystems/vfat.txt
Для case-insensitive есть онпция "check=n"

У кого еще остался vfat? проверте!!!


"Раздел полезных советов: Монтирование VFAT в Linux как в Win..."
Отправлено Bill Routers , 02-Ноя-09 12:10 
Проверил: check=r|s|n, на русские имена не влияет.

Не надо делать типсы не проверив и слепо верить документации.


"Раздел полезных советов: Монтирование VFAT в Linux как в Win..."
Отправлено fi , 02-Ноя-09 13:58 
>Проверил: check=r|s|n, на русские имена не влияет.
>
>Не надо делать типсы не проверив и слепо верить документации.

У кого как, у меня check=r работает, проверил на флэшки

Но в любом случаи: utf8,iocharset=cp1251 -  грязный хак, так как iocharset это то, что на вывод в нашей системе, а не на диске. У вас в системе локаль: ruRU.cp1251 ???



"Раздел полезных советов: Монтирование VFAT в Linux как в Win..."
Отправлено Bill Routers , 02-Ноя-09 14:27 
Спасибо за участие!

check=r действительно работает вместе с codepage=866, "iocharset=cp1251" самому не нравился,
получилось:

rw,flush,users,noatime,noauto,utf8,codepage=866,quiet,showexec,shortname=winnt,check=r