AllInfo
Main: Info Blog Temp Mail


unix 2012-01-03 12-36-22

Установка русской локали в TinyCoreLinux

Поскольку ко мне часто обращаются с вопросами русификации консоли диструбутива TinyCoreLinux я решил написать эту статью.
Сразу предупреждаю, что не работаю с XVesa, а с русификацией Xorg (IMHO) проблем быть не должно.

Все манипуляции я производил в виртуальной машине VirtualBox, загружаясь с образа microcore_3.7.iso.
{Можно загружаться с tinycore_3.7.iso c параметром text, см. подсказки при загрузке}
Подготовьте виртуальный жесткий диск, 2 Гб вполне хватит. Рекомендую подключить его на SATA контроллер.
{Настройка VirtualBox выходит за рамки этой статьи}
Все манипуляции будем производить ручками, для наглядности и понимания.

Итак, загрузились.
Первое, что мы сделаем - разметим диск и создадим раздел, куда мы установим систему.
Переходим в режим администратора.
Code: [Select]
sudo su
fdisk /dev/sda
o {создать новую таблицу разделов}
n {создать новый раздел}
p {раздел первичный}
1
Enter
w {записать изменения на диск}
Теперь создадим файловую систему на этом разделе.
Code: [Select]
mke2fs -j /dev/sda1
Монтируем созданный раздел и CD.
Code: [Select]
mount /dev/sda1 /mnt/sda1
mount /dev/hdc /mnt/hdc
Готовим каталоги для системы
Code: [Select]
cd /mnt/sda1
mkdir TinyRus
mkdir TinyRus/data
mkdir TinyRus/tce
mkdir home
chown tc:staff home
chmod 777 home
Копируем системные файлы: ядро и рут-фс.
Code: [Select]
cp /mnt/hdc/boot/bzImage /mnt/sda1/TinyRus
cp /mnt/hdc/boot/microcore.gz /mnt/sda1/TinyRus
Теперь нам надо установить бут-менеджер, я пользуюсь grub4dos.
Его нет на CD, загрузим из сети.

Проверяем, поднялся ли сетевой интерфейс, адреса автоматически получаются по DHCP.
Code: [Select]
ifconfig
Консольным AppBroser загружаем пакет (он работает только от имени не-root пользователя).
Code: [Select]
su tc
ab
grub4dos.tcz
1
q
i
q
Устанавливаем MBR и загрузчик.
Code: [Select]
sudo su
/usr/local/share/grub4dos/bootlace.com /dev/sda
cp /usr/local/share/grub4dos/grldr /mnt/sda1
Создаем загрузочное меню.
Code: [Select]
touch /mnt/sda1/menu.lst
echo "title TinyRus Linux" >> /mnt/sda1/menu.lst
echo "find --set-root --ignore-floppies /TinyRus/bzImage" >> /mnt/sda1/menu.lst
echo "kernel /TinyRus/bzImage tce=sda1/TinyRus/tce restore=sda1/TinyRus/data home=sda1 tz=GMT+4 noutc quiet" >> /mnt/sda1/menu.lst
echo "initrd /TinyRus/microcore.gz" >> /mnt/sda1/menu.lst
Собственно, прелюдия закончена. Отключаем CD, грузимся с виртуального жесткого диска.
Code: [Select]
reboot
============
Наконец-то займемся непосредственно темой статьи. Загружаем из сети необходимые нам файлы.
Code: [Select]
ab getlocale.tcz
1
q
i
q

ab kmaps.tcz
1
q
i
q
Для удобства работы и контроля русификации установим MС.
Code: [Select]
ab mc-locale.tcz
1
q
i
q
Подготавливаем свою локаль, я пользуюсь UTF8.
Code: [Select]
sudo su
getlocale.sh
ru_RU.UTF-8
Добавляем в меню загрузки выбранную локаль и переключатель раскладки- клавишу Control (все варианты модно посмотреть в /usr/share/kmap).
Code: [Select]
mc
/mnt/sda1/menu.lst
Quote
lang=ru_RU.UTF-8 kmap=qwerty/ruwin_ctrl-UTF-8

Строка будет выглядеть так:
Quote
kernel /TinyRus/bzImage tce=sda1/TinyRus/tce restore=sda1/TinyRus/data home=sda1 tz=GMT+4 noutc quiet lang=ru_RU.UTF-8 kmap=qwerty/ruwin_ctrl-UTF-8

{Не забудьте выйти из mc}
Последний штрих. Для отображения кирилицы нужно загрузить кирилический шрифт. Добрый гугль подсказал, от куда его можно позаимствовать.
{Кто у нас боится вирусов? )))}
Code: [Select]
cd /opt
wget http://virus.org.ua/unix/fonts/UniCyr_8x16.psf.gz
gzip -d UniCyr_8x16.psf.gz
При загрузке системы нужно загрузить наш шрифт и установить некоторые переменные
Code: [Select]
echo "loadfont < /opt/UniCyr_8x16.psf" >> /opt/bootlocal.sh
echo "export G_FILENAME_ENCODING=@locale" >> /opt/bootlocal.sh
echo "export LC_ALL=@locale" >> /opt/bootlocal.sh

echo "opt/UniCyr_8x16.psf" >> /opt/.filetool.lst
{Обратите внимание, я умышленно опустил первый слеш - так надо}
Сохраним состояние системы.
Code: [Select]
su tc
filetool.sh -b
Вуаля!

3.238.180.174 / 2023-12-11_00-12-57 UTC.