The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Руссификация консоли Red Hat 9"
Отправлено toris0, 31-Янв-08 10:48 
>У 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`"


 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру