Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
S-Vlads Гость
|
Добавлено: Пн Фев 09 2004 03:35 Заголовок сообщения: Почему не устанавливается переменная окружения NLSPATH? |
|
|
ОС FreeBSD 5.2
Хочу установить переменную окружения NLSPATH, пишу:
# setenv NLSPATH /usr/local/share/locale/uk/LC_MESSAGES
Message Catalog System: corrupt file.
#
Почему выходит это сообщение?
Если я устанавливаю другую любую переменную то ошибки нет!
Эта переменная нужна программе ports/ukrainian/iceb для установка украинского интерфейса. |
|
Вернуться к началу |
|
|
and3008
Зарегистрирован: 12.10.2001 Сообщения: 14893 Откуда: Н.Новгород
|
Добавлено: Пн Фев 09 2004 16:29 Заголовок сообщения: |
|
|
Видимо файл /usr/local/share/locale/uk/LC_MESSAGES поврежден или имеет некорректные значения. |
|
Вернуться к началу |
|
|
S-Vlads Гость
|
Добавлено: Пн Фев 09 2004 17:34 Заголовок сообщения: |
|
|
Цитата: | Видимо файл /usr/local/share/locale/uk/LC_MESSAGES поврежден или имеет некорректные значения |
Нет, не поврежден
Если я дам так:
# setenv "Другая переменная" /usr/local/share/locale/uk/LC_MESSAGES
то ошибки не будет!
А если дам так:
# setenv NLSPATH "Другой любой путь"
то ошибка будет! Т.е. это как то связано с самой переменной NLSPATH, но как незнаю!
И чтож делать? |
|
Вернуться к началу |
|
|
Dmitry.Karpov
Зарегистрирован: 30.11.2003 Сообщения: 415 Откуда: Moscow
|
Добавлено: Вт Фев 10 2004 23:49 Заголовок сообщения: |
|
|
Shell сам проверяет некоторые переменные, какие знает, а остальным присчаивает значение без проверки. Проверь права доступа к файлу:
ls -ld /usr /usr/local /usr/local/share /usr/local/share/locale /usr/local/share/locale/uk/ /usr/local/share/locale/uk/LC_MESSAGES _________________ Благословен Бог, сотворивший меня сисадмином! |
|
Вернуться к началу |
|
|
S-Vlads Гость
|
Добавлено: Ср Фев 11 2004 00:09 Заголовок сообщения: |
|
|
Проверил. Думаю что права нормальные.
А может быть такое, что я установил какую-то программу например и она что-то натворила, что теперь получились проблеммы с переменной NLSPATH?
Может ли эта проблемма быть как-то связанной с gencat?
В данном случае я поставил программу /usr/ports/ukrainian/iceb которая требует эту переменную для украинизации интерфейса если переменой нет интерфейс выходит на русском. (FreeBSD 5.2)
# ls -ld /usr /usr/local /usr/local/share /usr/local/share/locale /usr/local/share/locale/uk/ /usr/local/share/locale/uk/LC_MESSAGES
drwxr-xr-x 17 root wheel 512 28 січ 00:52 /usr
drwxr-xr-x 28 root wheel 512 7 лют 14:52 /usr/local
drwxr-xr-x 89 root wheel 2048 10 лют 22:46 /usr/local/share
drwxr-xr-x 95 root wheel 1536 9 лют 01:51 /usr/local/share/locale
drwxr-xr-x 3 root wheel 512 21 лис 14:27 /usr/local/share/locale/uk/
drwxr-xr-x 2 root wheel 10752 9 лют 16:35 /usr/local/share/locale/uk/LC_MESSAGES
# |
|
Вернуться к началу |
|
|
Dmitry.Karpov
Зарегистрирован: 30.11.2003 Сообщения: 415 Откуда: Moscow
|
Добавлено: Ср Фев 11 2004 00:48 Заголовок сообщения: |
|
|
А ты уверен, что тебе нужно "uk"? Это же Англия, а Украина - "ua".
Вытащи из дистрибутива файлы этой директории и сравни с теми, какие есть. Впрочем, не думаю, что они повреждены - в /usr/share никто лазать не должен...
PS: Вытаскивание файла в 4.x делается так:
cat /cdrom/bin/bin.?? | tar -xvzf - -C /tmp список_файлов
(в списке_файлов нельзя использовать звёздочки, т.к. они резолвятся по уже существующим файлам). _________________ Благословен Бог, сотворивший меня сисадмином!
Последний раз редактировалось: Dmitry.Karpov (Ср Фев 11 2004 17:37), всего редактировалось 1 раз |
|
Вернуться к началу |
|
|
S-Vlads Гость
|
Добавлено: Ср Фев 11 2004 10:57 Заголовок сообщения: |
|
|
Думаю, что "uk" вытекает из "uk_UA.KOI8-U" хотя и "ua" тоже есть в /usr/local/share/locale.
Как вытащить из дистрибютива я не знаю (у меня развернутый 5.2-RELEASE-i386-miniinst.iso), но по датам я проверил все нормально, правил только в /usr/share/skel/* кое-что добавил.
Смогу проверить только через пару дней когда буду поднимать другую машину. Может там чего не хватает!?
Я пробывал и ua и uk и uk_UA.KOI8-U но если я даже посталю /etc или /tmp все равно оно выдаст ошибку, а вот если я задам путь кторый не существует у меня на машине, например
setenv NLSPATH /tmp10
то пройдет все без ошибки!? А если снова /tmp - то снова ошибка.
Да может быть надо проверить /usr/share. |
|
Вернуться к началу |
|
|
|