Руссификация консоли Red Hat 9, toris0, 16-Янв-08, 07:55 [смотреть все]Пытаюсь руссуфицировать консоль Red Hat 9, который изначально устанавливал без поддержки русского языка. После прочтения большого количества документаций пришёл к следующему скрипту: #!/bin/sh if [ notset.$DISPLAY != notset. ]; then echo "Welcome to xterm" else if [ $TERM = xterm ]; then echo "Welcome to xterm" else loadkeys /lib/kbd/keymaps/i386/qwerty/ru4.map.gz setfont /lib/kbd/consolefonts/Cyr_a8x16.psfu.gz mapscrn /lib/kbd/consoletrans/koi2alt echo -ne "\033(K" echo "Use the CapsLock key to swith ..." fi fiexport LANG=ru_RU.KOI8-R export LC_ALL=ru_RU.KOI8-R export NLSPATH=/usr/share/locale/ru_RU export LESSCHARSET=koi8-r export LC_CTYPE=ru_RU.KOI8-R export LC_NUMERIC=POSIX export COLORTERM= export TERTMINFO=/usr/lib/terminfo # For Russian GostScript export GS_OPTIONS=-dNOPLATFONTS export GS_PATH=/usr/share/gostscript/fonts export SUPPORTED=ru_RU.KOI8-R:ru_RU.koi8r:ru_RU:ru export SYSFONT=cyr-sun16 export SYSFONTACM=koi8-u export KEYBOARDTYPE=pc export KEYTABLE=ru-ms # здесь пробовал писать ru4 понимаю, что использованеие скрипта не совсем правильно, и все эти настройка надо разложить по кунфигурационным файлам, но со скриптом тестировать легче. Пезультат получается очень интересный. Если просто заходишь в консоль и переключаешься на кусскую раскладку, то можно писать русскими буквами. Можно создать файл с русским именем (touch вася), но когда делаешь ls, файл отображается вопросиками... Когда заходишь в mc, то файлы с русскими именами не отображаются (режим 8 bit включен. кодировка выбрана koi8-r). при попытке печатать по русски что-то набирается, курсор двигается, но буквы сами не отображаются. После нажатия Ctrl+O в mc, выполнив команду ls можно увидеть файлы с русскими именами и если в файле есть русские буквы команда cat их отображает. Версия mc-4.6.0-5. Команад date выводит название дней недели и месяцев по русски. Может кто-нибудь подскажет что надо делать. Заранее спасибо.
|
- Руссификация консоли Red Hat 9, toris0, 12:03 , 16-Янв-08 (1)
Разобрабся с этой проблемой. Самому смешно ))) Для руссификации консоли в Red Hat 9 достаточно одной команды: export LANG="ru_RU.KOI8-R"!!! только из MC это запускать нельзя. можно записать эту сточку в .bash_profile, и консоль у вас всегда будет с русским языком. Возникла другая проблема. Теперь на разделах самбы из консоли видны файлы с русскими именами в виде псевдографики. Кто знает как от этого избавиться подскажите пожалуйста.
- Руссификация консоли Red Hat 9, angra, 05:51 , 17-Янв-08 (3)
- Руссификация консоли Red Hat 9, toris0, 09:20 , 22-Янв-08 (4)
>Почитать опции монтирования для smb, если не ошибаюсь за это отвечает iocharset >Вы очевидно меня не правильно поняли (или я неполно изложил суть проблемы). есть раздел в линуксе, имеющий файловую систему ext3. этот раздел используется самбой, и монтируется windows-машинам при входе в домен как сетевой диск. И виндовые машины пишут туда русскими буквами. Эту проблемуможно было бы решить, если при начальной настройке самбы установить опции: character set=koi8-r client code page=866 но этого не было сделано. А теперь там уже очень много фалов и переименовывать их долго. Да и не правлиьно это как-то. Функция мантирования iocharset используется для мантирования виндовых разделов в линукс. И может быть использована для файловых систем ntfs, vfat и д.р. а у меня ext3, которая эту опцию не поддерживает. Мне же надо, чтобы созданные виндой имена фалов с русскими буквами отображались в консоли в правлиьной кодировке а не в псевдографике, как они сейчас отображаются.
- Руссификация консоли Red Hat 9, angra, 02:08 , 23-Янв-08 (7)
- Руссификация консоли Red Hat 9, toris0, 10:48 , 31-Янв-08 (8)
>У ext2/3 не понятия внутренней кодировки, ничто не мешает одной программе писать >в utf8, а другой в koi8, в результате будут имена в >обоих кодировках. Так что придется вам либо изменить кодировку в консоли >либо таки перекодировать имена всех файлов, между прочим последнее делается в >одну строку на баше. Разобрался со всем, чем мог. Решил доку выложить. Может поможет какому нибудь начинающему линуксоиду. Такому же как я. Руссификация Red Hat 9 1. Из файла /etc/sysconfig/i18n удаляем всё и пишем туда следующее: LANG="ru_RU.KOI8-R" SUPPORTED="ru_RU.KOI8-R:ru_RU.koi8r:ru_RU:ru" SYSFONT="cyr-sun16" SYSFONTACM="koi8-u" 2. Из файла /etc/sysconfig/keyboard удаляем всё и пишем туда следующее: KEYBOARDTYPE="pc" KEYTABLE="ru-ms" 3. Добавляем сточку в файл /root/ .bash_profile строчку: export LANG="ru_RU.KOI8-R" и вбираем все остальные строчки начинающиеся на export LANG= 4. Добавляем в файл /etc/samba/smb.conf следующие сточки: dos charset = CP866 unix charset = KOI8-R 5. Заходим на сетевые диски самбы из windows и поиском в фаре находим все файлы содержащие символ “№”, заменяем символ “№” в именах файлов на “#”. Это необходимо сделать, так как в samba 3.X в кодировке KOI8-R не существует символа “№”. 6. Перезагружаем сервер командой reboot 7. Выполняем следующие команды rpm –U groff-1.18.1-24.i386.rpm rpm –U groff-gxditview-1.18.1-24.i386.rpm rpm –U groff-perl-1.18.1-24.i386.rpm rpm –U less-378-8.i386.rpm rpm –U mc-4.6.0-5.i386.rpm 8. В mc жмём F9 выбираем пункт Настройки(Options)->Биты символов(Display Bits) и выбираем здесь кодировку KOI8-R, а так же ставим крестик Полный 8-битный ввод (Full 8 bits input) 9. Копируем файл utf2koi в раздел самбы на линукс сервере и запускаем его на выполнение. P.S. скрипт, содержащийся в файле utf2koi #!/bin/bash CODE_FROM="UTF-8" function recode_file() { old_name="$@" new_name=`echo "$@" | iconv -c -f$CODE_FROM` stat1=$? mid_name=`echo "$@" | iconv -c -fUTF-8 2>/dev/null` stat2=$? if [ x"$old_name" != x"$new_name" -a $stat1 -eq 0 -a x"$mid_name" != x"$old_name" ]; then echo "Recode: $old_name -> $new_name" mv "$old_name" "$new_name" fi } function reading_dir() { files="$1" for i in "$files"/* do if [ -d "$i" ]; then echo "Dir: "$1"/`basename "$i"`" old_way=`pwd` cd "$1" recode_file "`basename "$i"`" cd $old_way fi done files="$1" for i in "$files"/* do if [ -d "$i" ]; then t="$1"/`basename "$i"` echo "t: $t" reading_dir "$t" else old_way=`pwd` cd "$1" echo "File: `basename "$i"`" recode_file "`basename "$i"`" cd $old_way fi done }
reading_dir "`pwd`"
- Руссификация консоли Red Hat 9, angra, 12:19 , 31-Янв-08 (9)
- Руссификация консоли Red Hat 9, toris0, 07:54 , 01-Фев-08 (10)
>>P.S. скрипт, содержащийся в файле utf2koi > >Фигасе, моя лень не позволила мне написать больше одной строчки для подбного, >если не ошибаюсь for+find+echo+iconv просто это мой первый скрипт на шеле. ещё не достаточно занком со всеми возможностями и средствами... привык к классическому программированию.
- Руссификация консоли Red Hat 9, Ag, 23:57 , 16-Янв-08 (2)
|