PDA

Bekijk de volledige versie : Монтирование с опциями, проблема...



Maximus43
28-09-2006, 22:33
Есть Премиум и внешний диск на 250 гиг. 150 отданы под ext3, остальные под FAT32. При работе возникла проблема с кодировками при записи на раздел с FAT32. После танцев с бубном всё решил, добавив опции в команду монтирования:

mount -t vfat -o iocharset=koi8-r,codepage=866 /dev/discs/disc0/part1 /opt/share/music

Всё работает отлично, если в WEB интерфейсе активирован FTP сервер.
Если же я в post-boot указываю загрузку модулей USB диска вручную, то при монтировании с опциями выскакивает ошибка типа неверные параметры.
Такое ощущение, что команд insmod scsi_mod && insmod sd_mod && insmod usb-storage недостаточно. И что при автоматическом монтировании грузится ещё что-то. Может знаете, как это победить. А то так надоело автоматическое монтирование в /tmp/harddisk (как это отключить?!) да и ftp сервер мне совсем не нужен.

Вот мой post-boot


#!/bin/sh
dropbear

# test if USB disc has been attached
# if not - then insert needed modules
if [ ! -d /dev/discs ]
then
insmod scsi_mod && insmod sd_mod && insmod usb-storage && sleep 5s
fi

/usr/sbin/nmbd -D

#Wait for /opt to mount
mount /dev/discs/disc0/part5 /opt
i=0
while [ $i -le 30 ]
do
if [ -d /opt/etc ]
then
break
fi
sleep 1
i=`expr $i + 1`
done

# Activate swap
swapon /dev/discs/disc0/part6

# Run all active services - active means starts with S
/opt/etc/init.d/rc.unslung

# remove audio module
killall waveservermain
rmmod audio
rmmod soundcore
# And printer
killall p910nd
killall lpd
killall infosvr
rmmod printer

umount /tmp/harddisk
mount -t vfat -o iocharset=koi8-r,codepage=866 /dev/discs/disc0/part1 /opt/share/music


Заранее благодарен за советы.

Duke
29-09-2006, 11:30
Хм.. оч странно, у меня работакт как с включенным так и с отключенным Ftp , без загрузки модулей вручную!
iocharset=cp1251 поставь!

Maximus43
29-09-2006, 11:42
Я частично разобрался.
Возможность монтирования с параметрами появляется при запущенном stupid-ftpd. Т.е. если убить процесс stupid-ftpd, то команда

mount -t vfat -o iocharset=koi8-r,codepage=866 /dev/discs/disc0/part1 /opt/share/music
выдаёт ошибку.
Если же снова запустить этот FTP сервер, то данная команда выполняется корректно.
Без iocharset=koi8-r,codepage=866 команда выполняется при любом раскладе.
Я в замешательстве. :(

Duke
29-09-2006, 11:45
Сорри, зря отредактировал. Еще раз
"iocharset=cp1251" поставь!
Накой тебе сдался кои на ФАТ32-разделе? хочешьпоиметь геморрой при подлючении под виндой? Таким имена из подвинды нормально винды через самбу и в линухе, по крайней мере в путти при установленной трансляции Win1251 вс епуком и в консоли и в миднайте. Не парь мозг КОИ8 ;)

Maximus43
29-09-2006, 11:54
"iocharset=cp1251" поставь!

Поставил. :-)
Но это не решает проблемы монтирования с опциями. А у меня вопрос именно по параметрам монтирования. :-)

Duke
29-09-2006, 11:58
при cp1251 все прекрасно монтируетс ябез ошибок в аргументах!

Maximus43
29-09-2006, 12:00
при cp1251 все прекрасно монтируетс ябез ошибок в аргументах!

А как насчёт русских имен при работе в терминальном окне (PuTTY)?
У меня нормально отображается только при koi8-r...

Duke
29-09-2006, 12:04
В настройках соединения (или правый клик на заголовк еокна путти)
Window -> Translation -> Character set translation on received data -> Win1251 (Cyrilic)
Если такогонет - спроси у яндекса где новый путти лежит :D

Maximus43
29-09-2006, 12:08
:-)) Ну тогда на разделе ext3 будет неверное отображение.
У меня два раздела, ext3 и FAT32.
На ext3 кодировка koi8-r. Вот я и пытаюсь привести к общему знаменателю.
Мне необходимо, чтобы везде русские названия были корректными.

Duke
29-09-2006, 12:15
Гхм... а нахрена тебе на екст-3 русские имена? Или зачем тогда fat32раздел? ;)
У меня fat32 постольку-поскольку, чтоб под виндой если что винт юзать без проблем. Был бы чисто линух -поставил бы ext3 на раздел от греха подальше...

Maximus43
29-09-2006, 12:52
Гхм... а нахрена тебе на екст-3 русские имена? Или зачем тогда fat32раздел? ;)
У меня fat32 постольку-поскольку, чтоб под виндой если что винт юзать без проблем. Был бы чисто линух -поставил бы ext3 на раздел от греха подальше...
:-) так надо... Как будто на ext3 нельзя хранить что-то с русскими именами. У меня жена фотографии по-русски называет, ей так удобнее. А FAT32 для ре-е-едких походов к друзьям, и я обычно ничего у них не копирую в русской кодировке. Но весь архив музыки (включая русские названия) у меня именно на FAT32 диске.
Поэтому сейчас формально я проблему для себя решил, и для терминала, и для самбы с кодировками всё ок. НО! мне не нравится автоматический запуск stupid-ftpd и автоматическое монтирование диска с FAT32 в /tmp/harddisk.
А при отключении запуска stupid-ftpd у меня пропадает возможность монтирования диска с опциями, указывающими кодировку.
Вот эту проблему и я пытаюсь решить.

Duke
29-09-2006, 13:02
Ну stupid-ftpd тут точно не при чем, т.к. не зависимо от того загружен он или нет при монтировании указать koi8-r не получается (равно как и в /tmp/harddisk монтируется не через stupid-ftpd). Надо потрошить сорсы напредмет что там такое хитрое в автомаунте стартует.
Хотя вот сейчас у меня все загружается с включенным FTP, снял ступида и самбу, отмонтировал диск, пустил ступида, - koi8-r все равно не проходит. Ясно надо сомтреть что там в автомаунте и ка кон поддержку koi-8r включает - вероятно через модули, раз в ядре нету.

Maximus43
29-09-2006, 13:32
Угу...
Получается, что вопрос больше к Олегу. :-)

Duke
29-09-2006, 13:36
Ну я как то сомтрел сырцы каркз на предмет автопонтирования. Нашел чегой-то но в результате все равно забил ;)
У тебя сечас вот это

nvram get usb_vfat_options
что выдает?

Maximus43
29-09-2006, 13:54
Ну я как то сомтрел сырцы каркз на предмет автопонтирования. Нашел чегой-то но в результате все равно забил ;)
У тебя сечас вот это

nvram get usb_vfat_options
что выдает?


[admin@router root]$ nvram get usb_vfat_options
codepage=866,iocharset=cp1251

Duke
29-09-2006, 14:11
И при этом при включенном в веб-интерфейсе FTP автомаунте на /tmp/harddisk все автоматом монтируется в КОИ? :eek:

Maximus43
29-09-2006, 15:08
И при этом при включенном в веб-интерфейсе FTP автомаунте на /tmp/harddisk все автоматом монтируется в КОИ? :eek:

Нет. Мне и надо, чтобы монтировалось в KOI. Для этого я и использую опции в команде mount. Но эти опции работают только при FTP автомаунте.
Теперь я догадываюсь, как настроить автомонтирование в KOI... :-)

Maximus43
29-09-2006, 17:41
Всё, проблема решилась. :-)

nvram set usb_vfat_options=codepage=866,iocharset=koi8-r

Спасибо за советы!

Duke
29-09-2006, 19:45
А теперь вопросы в студию -
1. а самбу как настроил, с русскими все ок?
2. iocharset отвечает только за перекодировку при выводе либо при вводе, хранится все равно в 866 и при монтировании рахдела под виндой проблем не будет?
3. каким же боком автомаунт кушает кои :confused:

Maximus43
29-09-2006, 21:32
А теперь вопросы в студию -
1. а самбу как настроил, с русскими все ок?
2. iocharset отвечает только за перекодировку при выводе либо при вводе, хранится все равно в 866 и при монтировании рахдела под виндой проблем не будет?
3. каким же боком автомаунт кушает кои :confused:
Отвечаю:
1. Да, всё ок, в smb.conf прописал.

client code page = 866
character set = koi8-r
2. Под виндой мне абсолютно не критично, в крайнем случаю запакую файлы с русскими именами в архив и так скопирую.
3. Так и кушает. :-) А что ему и не скушать?
Вот только при ручном монтировании не всегда поменять кодировки получается, но это тоже уже не критично.