LINUX.ORG.RU
ФорумAdmin

Монтирование vfat: conv=auto — бинарники с нестандартным расширением конвертируются (CRLF<-->NL)... (по идее)


0

0

Проблема в следующем: при монтировании fat'a с опцией conv=auto ядро
пропускает (оставляет без конвертации) лишь известные ей "бинарные"
файлы. А если у меня бинарник назывется нестандартно (.zxy), то ядро
его спокойненько конвертирует... (на практике не проверял, но
наверное именно так все и происходит). Гораздо логичнее было бы
сделать наоборот: конвертировать лишь подпадающие под маску
"текстовые" файлы, а все остальные оставлять в покое. То, что придется
вручную удалить "^M" из текстовика -- не страшно, намного хуже, если
запорится бинарник с левым расширением, а поймешь ты это слишком
поздно...

Вот выдержка из man mount, раздел о fat:

conv=b[inary] / conv=t[ext] / conv=a[uto]
The fat file system can perform CRLF<-->NL (MS-DOS
text format to UNIX text format) conversion in the
kernel. The following conversion modes are avail-
able:

binary no translation is performed. This is the
default.

text CRLF<-->NL translation is performed on all
files.

auto CRLF<-->NL translation is performed on all
files that don't have a "well-known binary"
extension. The list of known extensions can
be found at the beginning of fs/fat/misc.c
(as of 2.0, the list is: exe, com, bin, app,
sys, drv, ovl, ovr, obj, lib, dll, pif, arc,
zip, lha, lzh, zoo, tar, z, arj, tz, taz,
tzp, tpz, gz, tgz, deb, gif, bmp, tif, gl,
jpg, pcx, tfm, vf, gf, pk, pxl, dvi).

В ядре 2.4.27 в файле fs/fat/misc.c действительно приводится список
масок файлов, конвертации не подлежащих. И еще там есть замечание о
том, что список это неполный.
А в ядре 2.6.8 в этом файле ни о чем подобном речи не идет (по крайней
мере в начале файла, я его полностью не листал). Это значит, в 2.6.х
подход к автоконвертации файлов как-то различается?

★★★★★

Ты бы не мучался, а пользовался конвертерами - глядишь и данные остались бы целыми.

P.S. На ^M вообще должно быть плевать, если пользуешься не MC, например, а каким-нить kwrite, которые могут держать оба стиля перевода каретки.

jackill ★★★★★
()
Ответ на: комментарий от jackill

А я не мучаюсь, просто как-то раньше я не задумывался о вреде "conv=auto". А вчера переписал пофайлово содержимое одного полудохлого диска, один большой FAT раздел (гигов 30 вышло), и задумался: "а не переконвертировалось ли там что-нибудь ценное?"

anonymous
()
Ответ на: комментарий от anonymous

Предидущий пост мой.

Вообще-то мне интересно, а нельзя ли сделать определение, что конвертировать, а что нет с точностью до наоборот, то есть конверитровать только .txt .html и т.п., а все остальное оставлять в покое?

Harliff ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.